Sdílet prostřednictvím


Použití předem připraveného služby Azure AI Translator v Prostředcích infrastruktury s rozhraním REST API a SynapseML (Preview)

Důležité

Tato funkce je ve verzi Preview.

Azure AI Translator je služba Azure AI, která umožňuje provádět překlad jazyka a další operace související s jazykem.

Tento příklad použití, s rozhraními RESTful API, předpřipraveného překladače Azure AI, v rámci platformy Fabric:

  • Přeložení textu
  • Transliterace textu
  • Zjištění podporovaných jazyků

Požadavky

  • Vytvořte nový poznámkový blok.
  • Připojte poznámkový blok k jezeru. Na levé straně poznámkového bloku vyberte Přidat a přidejte existující jezero nebo vytvořte nový.

Poznámka:

Tento článek používá předdefinované služby AI microsoft Fabric, které zpracovávají ověřování automaticky. Nepotřebujete získat samostatný klíč k službám Azure AI – autentizace je spravována prostřednictvím vašeho pracovního prostoru Fabric. Další informace najdete v tématu Předem připravené modely AI ve Fabric (preview).

Ukázky kódu v tomto článku používají knihovny, které jsou předinstalované v poznámkových blocích Microsoft Fabric:

  • SynapseML: Předinstalované v poznámkových blocích Fabric pro možnosti strojového učení
    • synapse.ml.core – Základní funkce SynapseML
    • synapse.ml.fabric.service_discovery – Nástroje pro zjišťování služby Fabric
    • synapse.ml.fabric.token_utils – Nástroje ověřovacího tokenu
    • synapse.ml.services – Integrace služeb AI (včetně tříd překladu, transliterace)
  • PySpark: Ve výchozím nastavení je k dispozici ve výpočetních prostředcích Fabric Spark
    • pyspark.sql.functions - Transformační funkce datového rámce (col, flatten)
  • Standardní knihovny Pythonu: Integrované do modulu runtime Pythonu
    • json – Analýza a formátování JSON
    • requests – Klient HTTP pro volání rozhraní REST API
# Get workload endpoints and access token

from synapse.ml.fabric.service_discovery import get_fabric_env_config
from synapse.ml.fabric.token_utils import TokenUtils
import json
import requests


fabric_env_config = get_fabric_env_config().fabric_env_config
auth_header = TokenUtils().get_openai_auth_header()

# Make a RESTful request to AI service
prebuilt_AI_base_host = fabric_env_config.ml_workload_endpoint + "cognitive/texttranslation/"
print("Workload endpoint for AI service: \n" + prebuilt_AI_base_host)

service_url = prebuilt_AI_base_host + "language/:analyze-text?api-version=2022-05-01"
print("Service URL: \n" + service_url)

auth_headers = {
    "Authorization" : auth_header
}

def print_response(response):
    print(f"HTTP {response.status_code}")
    if response.status_code == 200:
        try:
            result = response.json()
            print(json.dumps(result, indent=2, ensure_ascii=False))
        except:
            print(f"pasre error {response.content}")
    else:
        print(f"error message: {response.content}")

Překlad textu

Překlad textu je základní operací služby Translator.

service_url = prebuilt_AI_base_host + "translate?api-version=3.0&to=fr"
post_body = [{'Text':'Hello, friend.'}]

response = requests.post(service_url, json=post_body, headers=auth_headers)

# Output all information of the request process
print_response(response)

Výstup

    HTTP 200
    [
      {
        "detectedLanguage": {
          "language": "en",
          "score": 1.0
        },
        "translations": [
          {
            "text": "Bonjour cher ami.",
            "to": "fr"
          }
        ]
      }
    ]

Transliterace textu

Transliterace převede slovo nebo frázi ze skriptu (abecedy) jednoho jazyka na jiný na základě fonetické podobnosti.

service_url = prebuilt_AI_base_host + "transliterate?api-version=3.0&language=ja&fromScript=Jpan&toScript=Latn"
post_body = [
    {"Text":"こんにちは"},
    {"Text":"さようなら"}
]

response = requests.post(service_url, json=post_body, headers=auth_headers)

# Output all information of the request process
print_response(response)

Výstup

    HTTP 200
    [
      {
        "text": "Kon'nichiwa​",
        "script": "Latn"
      },
      {
        "text": "sayonara",
        "script": "Latn"
      }
    ]

Načítání podporovaných jazyků

Vrátí seznam jazyků, které operace Překladače podporují.

service_url = prebuilt_AI_base_host + "languages?api-version=3.0"

response = requests.get(service_url, headers=auth_headers)

# Output all information of the request process
print_response(response)