Guida introduttiva: API REST di Traduttore per Azure AI

Provare la versione più recente di Traduttore per Azure AI. In questa guida introduttiva si inizierà a usare il servizio Traduttore per tradurre testo usando un linguaggio di programmazione preferito o l'API REST. Per questo progetto, è consigliabile usare il piano tariffario gratuito (F0) mentre si sta imparando la tecnologia. Successivamente si potrà passare a un livello a pagamento per la produzione.

Prerequisiti

È necessaria una sottoscrizione di Azure attiva. Se non si possiede una sottoscrizione di Azure, è possibile crearne una gratuitamente.

  • Dopo aver creato la sottoscrizione di Azure, creare una risorsa Traduttore nel portale di Azure.

  • Dopo la distribuzione della risorsa, selezionare Vai alla risorsa e recuperare la chiave e l'endpoint.

    • La chiave e l'endpoint della risorsa sono necessari per connettere l'applicazione al servizio Traduttore. La chiave e l'endpoint verranno incollati nel codice più avanti nella guida introduttiva. È possibile trovare questi valori nella pagina Chiavi ed endpoint del portale di Azure:

      Screenshot: Azure portal keys and endpoint page.

      Nota

      • Per questa guida introduttiva è consigliabile usare una risorsa globale a servizio singolo di Traduzione testuale.
      • Con una risorsa globale a servizio singolo si includerà un'intestazione di autorizzazione (Ocp-Apim-Subscription-key) con la richiesta dell'API REST. Il valore di Ocp-Apim-Subscription-key è la chiave privata di Azure per la sottoscrizione di Traduzione testuale.
      • Se si sceglie di usare una risorsa multiservizio di Azure per intelligenza artificiale o una risorsa Traduttore regionale, saranno necessarie due intestazioni di autenticazione: (Ocp-Api-Subscription-Key e Ocp-Apim-Subscription-Region). Il valore di Ocp-Apim-Subscription-Region è l'area associata alla sottoscrizione.
      • Per altre informazioni su come usare l'intestazione Ocp-Apim-Subscription-Region, vedereIntestazioni dell'API REST Traduzione testuale.

Intestazioni

Per chiamare il servizio Traduttore tramite l'API REST, è necessario includere le intestazioni seguenti con ogni richiesta. Per evitare problemi, includiamo le intestazioni nel codice di esempio per ogni linguaggio di programmazione.

Per altre informazioni sulle opzioni di autenticazione di Traduttore, vedere la guida Riferimento di Traduttore v3.

Intestazione Valore Condizione
Ocp-Apim-Subscription-Key La chiave del servizio Traduttore dal portale di Azure. Obbligatorio
Ocp-Apim-Subscription-Region Area in cui è stata creata la risorsa. Obbligatorio quando si usa una risorsa multiservizio o area geografica di Azure per intelligenza artificiale, ad esempio Stati Uniti occidentali.
Facoltativo quando si usa una risorsa Traduttore globale a servizio singolo.
Content-Type Tipo di contenuto del payload. Il valore accettato è application/json o charset=UTF-8. Obbligatorio
Content-Length Lunghezza del corpo della richiesta. Facoltativo

Importante

Al termine, ricordarsi di rimuovere la chiave dal codice e non renderlo mai pubblico. Per la produzione, usare un modo sicuro per archiviare e accedere alle credenziali, ad esempio Azure Key Vault. Per altre informazioni, vedere l'articolo Sicurezza di Servizi di Azure AI.

Tradurre testo

La funzione principale del servizio Traduttore è tradurre testo. In questa guida introduttiva si compilerà una richiesta usando un linguaggio di programmazione di propria scelta che accetta una singola origine (from) e fornisce due output (to). Si esamineranno quindi alcuni parametri che possono essere usati per modificare sia la richiesta che la risposta.

Per informazioni dettagliate sui limiti delle richieste del servizio Traduttore per Azure AI, vedereLimiti delle richieste di traduzione testuale.

Configurare il progetto di Visual Studio

  1. Assicurarsi di disporre della versione corrente dell'IDE di Visual Studio.

    Suggerimento

    Se non si ha familiarità con Visual Studio, provare il modulo Learn Introduzione a Visual Studio.

  2. Aprire Visual Studio.

  3. Nella pagina Avvio, scegliere Crea nuovo progetto.

    Screenshot: Visual Studio start window.

  4. Nella pagina Crea un nuovo progetto immettere console nella casella di ricerca. Scegliere il modello Applicazione console, quindi scegliere Avanti.

    Screenshot: Visual Studio's create new project page.

  5. Nella finestra di dialogo Configura il nuovo progetto immettere translator_quickstart nella casella Nome progetto. Lasciare la casella di controllo "Inserisci soluzione e progetto nella stessa directory" deselezionata e selezionare Avanti.

    Screenshot: Visual Studio's configure new project dialog window.

  6. Nella finestra di dialogo Informazioni aggiuntive assicurarsi che sia selezionata l'opzione .NET 6.0 (supporto a lungo termine). Lasciare la casella di controllo "Non usare istruzioni di primo livello" deselezionata e selezionare Crea.

    Screenshot: Visual Studio's additional information dialog window.

Installare il pacchetto Newtonsoft.json con NuGet

  1. Fare clic con il pulsante destro del mouse sul progetto translator_quickstart e selezionare Gestisci pacchetti NuGet....

    Screenshot of the NuGet package search box.

  2. Selezionare la scheda Sfoglia e digitare Newtonsoft.json.

    Screenshot of the NuGet package install window.

  3. Per aggiungere il pacchetto al progetto, selezionare Installa nella finestra di gestione pacchetti corretta.

    Screenshot of the NuGet package install button.

Compilare l'applicazione C#

Nota

  • A partire da .NET 6, i nuovi progetti che usano il modello console generano un nuovo stile di programma, diverso dalle versioni precedenti.
  • Il nuovo output usa le funzionalità C# recenti che semplificano il codice da scrivere.
  • Quando si usa la versione più recente, è sufficiente scrivere il corpo del metodo Main. Non è necessario includere istruzioni generali, direttive using globali o direttive using implicite.
  • Per altre informazioni, vedereNuovi modelli C# generano istruzioni generali.
  1. Aprire il file Program.cs.

  2. Eliminare il codice preesistente, inclusa la riga Console.WriteLine("Hello World!"). Copiare e incollare l'esempio di codice nel file Program.cs dell'applicazione. Assicurarsi di aggiornare la variabile chiave con il valore dell'istanza di Traduttore del portale di Azure:

using System.Text;
using Newtonsoft.Json;

class Program
{
    private static readonly string key = "<your-translator-key>";
    private static readonly string endpoint = "https://api.cognitive.microsofttranslator.com";

    // location, also known as region.
    // required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page.
    private static readonly string location = "<YOUR-RESOURCE-LOCATION>";

    static async Task Main(string[] args)
    {
        // Input and output languages are defined as parameters.
        string route = "/translate?api-version=3.0&from=en&to=fr&to=zu";
        string textToTranslate = "I would really like to drive your car around the block a few times!";
        object[] body = new object[] { new { Text = textToTranslate } };
        var requestBody = JsonConvert.SerializeObject(body);

        using (var client = new HttpClient())
        using (var request = new HttpRequestMessage())
        {
            // Build the request.
            request.Method = HttpMethod.Post;
            request.RequestUri = new Uri(endpoint + route);
            request.Content = new StringContent(requestBody, Encoding.UTF8, "application/json");
            request.Headers.Add("Ocp-Apim-Subscription-Key", key);
            // location required if you're using a multi-service or regional (not global) resource.
            request.Headers.Add("Ocp-Apim-Subscription-Region", location);

            // Send the request and get response.
            HttpResponseMessage response = await client.SendAsync(request).ConfigureAwait(false);
            // Read response as a string.
            string result = await response.Content.ReadAsStringAsync();
            Console.WriteLine(result);
        }
    }
}

Eseguire l'applicazione C#

Dopo aver aggiunto un esempio di codice all'applicazione, scegliere il pulsante verde di avvio accanto a formRecognizer_quickstart per compilare ed eseguire il programma oppure premere F5.

Screenshot of the run program button in Visual Studio.

Output di traduzione:

Dopo una chiamata riuscita, si dovrebbe vedere la risposta seguente:

[
    {
        "detectedLanguage": {
            "language": "en",
            "score": 1.0
        },
        "translations": [
            {
                "text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!",
                "to": "fr"
            },
            {
                "text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!",
                "to": "zu"
            }
        ]
    }
]

Passaggi successivi

Fatto, congratulazioni! Si è appena appreso come usare il servizio Traduttore per tradurre testo.

Esplorare la documentazione sulle procedure e approfondire le funzionalità del servizio Traduzione: