Bien démarrer avec la traduction de documents
La Traduction de documentation est une fonctionnalité cloud du service Azure Translator qui traduit de manière asynchrone des documents entiers dans des langues prises en charge et dans différents formats de fichiers. Dans ce guide de démarrage rapide, vous apprenez à utiliser la Traduction de documentation avec le langage de programmation de votre choix pour traduire un document source dans une langue cible tout en conservant la structure et la mise en forme du texte.
Prérequis
Notes
La traduction de documentation est actuellement prise en charge dans la ressource Translator (service unique) uniquement, et n’est pas incluse dans la ressource Cognitive Services (multiservice).
La Traduction de documentation est uniquement prise en charge dans le plan de service Standard S1 (paiement à l’utilisation) ou dans le plan de remise sur la quantité D3. VoirTarification de Cognitive Services - Traducteur.
Pour commencer, vous avez besoin des éléments suivants :
Un compte Azure actif. Si vous n’en avez pas, vous pouvez créer un compte gratuit.
Un compte de stockage Blob Azure. Vous devez créer des conteneurs dans votre compte de stockage Blob Azure pour vos fichiers sources et cibles :
- Conteneur source. Ce conteneur est l’emplacement où vous chargez vos fichiers pour la traduction (obligatoire).
- Conteneur cible. Ce conteneur est l’emplacement où vos fichiers traduits sont stockés (obligatoire).
Une ressource Translator de service unique (et pas une ressource Cognitive Services multiservice) :
Complétez les champs des détails du projet Translator et de l’instance comme suit :
Abonnement. Sélectionnez l’un de vos abonnements Azure disponibles.
Groupe de ressources. Vous pouvez créer un groupe de ressources ou ajouter votre ressource à un groupe de ressources préexistant qui partage le même cycle de vie, les mêmes autorisations et les mêmes stratégies.
Région de la ressource. Choisissez Globale, sauf si votre entreprise ou votre application nécessite une région spécifique. Si vous envisagez d’utiliser une identité managée affectée par le système pour l’authentification, choisissez une région géographique telle que USA Ouest.
Nom. Entrez le nom que vous avez choisi pour votre ressource. Le nom choisi doit être unique dans Azure.
Notes
La traduction de documentation requiert un point de terminaison de domaine personnalisé. La valeur que vous entrez dans le champ Nom sera le paramètre de nom de domaine personnalisé pour votre point de terminaison.
Niveau tarifaire. La traduction de documentation n’est pas prise en charge dans le niveau gratuit. Sélectionnez Standard S1 pour essayer le service.
Sélectionnez Vérifier + créer.
Passez en revue les conditions du service, puis sélectionnez Créer pour déployer votre ressource.
Une fois votre ressource correctement déployée, sélectionnez Accéder à la ressource.
Récupérez votre clé et le point de terminaison de la traduction de documentation
*Les demandes adressées au service Translator nécessitent une clé en lecture seule et un point de terminaison personnalisé pour authentifier l’accès. Le point de terminaison de domaine personnalisé est une URL mise en forme avec votre nom de ressource, votre nom d’hôte et les sous-répertoires de Translator et qui est disponible dans le portail Azure.
Si vous avez créé une ressource, après son déploiement, sélectionnez Accéder à la ressource. Si vous disposez déjà d’une ressource de Traduction de documentation, accédez directement à la page de votre ressource.
Dans le rail de gauche, sous Gestion des ressources, sélectionnez Clés et point de terminaison.
Copiez et collez votre
key
et votredocument translation endpoint
dans un endroit pratique, comme le Bloc-notes Microsoft. Une seule clé est nécessaire pour effectuer un appel d’API.Collez vos
key
etdocument translation endpoint
dans l’exemple de code pour authentifier votre demande auprès du service Traduction de documentation.
Créer des conteneurs de stockage d’objets blob Azure
Vous devez créer des conteneurs dans votre compte de stockage Blob Azure pour les fichiers sources et cibles.
- Conteneur source. Ce conteneur est l’emplacement où vous chargez vos fichiers pour la traduction (obligatoire).
- Conteneur cible. Ce conteneur est l’emplacement où vos fichiers traduits sont stockés (obligatoire).
Authentification requise
sourceUrl
, targetUrl
et glossaryUrl
(facultatif) doivent inclure un jeton de signature d’accès partagé (SAP), ajouté comme chaîne de requête. Le jeton peut être attribué à votre conteneur ou à des blobs spécifiques. Consultez Créer des jetons SAP pour le processus de Traduction de documentation.
- Votre blob ou conteneur source doit disposer d’un accès lecture et d’un accès liste désignés.
- Votre blob ou conteneur cible doit disposer d’un accès écriture et d’un accès liste désignés.
- Votre blob Glossaire doit disposer d’un accès lecture et d’un accès liste désignés.
Conseil
- Si vous traduisez plusieurs fichiers (blobs) dans une opération, déléguez l’accès SAP au niveau du conteneur.
- Si vous traduisez un seul fichier (blob) dans une opération, déléguez l’accès SAS au niveau du blob.
- Comme alternative aux jetons SAS, vous pouvez utiliser une identité managée affectée par le système pour l’authentification.
Exemple de document
Pour ce projet, vous avez besoin d’un document source chargé dans votre conteneur source. Pour ce guide de démarrage rapide, vous pouvez télécharger notre exemple de document Traduction de documentation. La langue source est l’anglais.
Demande HTTP
Une demande de Traduction de documentation par lot est soumise à votre point de terminaison de service Translator par le biais d’une requête POST. En cas de réussite, la méthode POST retourne un code de réponse 202 Accepted
et le service crée une demande de lot. Les documents traduits s’affichent dans votre conteneur cible.
En-têtes
Les en-têtes suivants sont inclus avec chaque requête d’API Traduction de documentation :
En-tête HTTP | Description |
---|---|
Ocp-Apim-Subscription-Key | Obligatoire : La valeur est la clé Azure de votre ressource Translator ou Cognitive Services. |
Content-Type | Obligatoire : spécifie le type de contenu de la charge utile. Les valeurs acceptées sont application/json ou charset=UTF-8. |
Corps de requête POST
- Le corps de la requête POST est un objet JSON nommé
inputs
. - L’objet
inputs
contient à la fois les adresses de conteneursourceURL
ettargetURL
pour vos paires de langue source et cible. prefix
etsuffix
sont des chaînes respectant la casse afin de filtrer les documents dans le chemin source pour la traduction. Le champprefix
est souvent utilisé pour délimiter les sous-dossiers pour la traduction. Le champsuffix
est généralement utilisé pour les extensions de fichier.- Une valeur du champ
glossaries
(facultatif) est appliquée quand le document est en cours de traduction. - La valeur
targetUrl
de chaque langue cible doit être unique.
Configurer votre environnement C#/.NET
Pour ce guide de démarrage rapide, nous utilisons la dernière version de l’IDE Visual Studio pour générer et exécuter l’application.
Démarrez Visual Studio.
Dans la page Démarrer, choisissez Créer un projet.
Dans la page Créer un nouveau projet, entrez console dans la zone de recherche. Choisissez le modèle Application console, puis choisissez Suivant.
Dans la fenêtre de dialogue Configurer votre nouveau projet, entrez
document-translation-qs
dans la zone Nom de projet. Ensuite, choisissez Suivant.Dans la fenêtre de dialogue Informations supplémentaires, sélectionnez .NET 6.0 (Actuel), puis sélectionnez Créer.
Installer Newtonsoft.Json
Cliquez avec le bouton droit sur votre projet document-translation-qs, puis sélectionnez Gérer les packages NuGet...
Sélectionnez l’onglet Parcourir et tapez NewtonsoftJson.
Sélectionnez la dernière version stable dans le menu déroulant, puis installez le pack dans votre projet.
Traduire tous les documents dans un conteneur de stockage
Notes
- À compter de .NET 6, de nouveaux projets utilisant le modèle
console
génèrent un nouveau style de programme qui diffère des versions précédentes. - La nouvelle sortie utilise des fonctionnalités C# récentes qui simplifient le code que vous devez écrire.
- Lorsque vous utilisez la version la plus récente, vous devez uniquement écrire le corps de la
Main
méthode. Vous n’avez pas besoin d’inclure des instructions de niveau supérieur, des directives globales à l’aide de directives ou des directives implicites. - Pour plus d’informations, voir Les nouveaux modèles C# qui génèrent des instructions de niveau supérieur.
Ouvrez le fichier Program.cs.
Supprimez le code préexistant, y compris la ligne
Console.Writeline("Hello World!")
.Copiez et collez l’exemple de code de Traduction de documentation dans le fichier Program.cs.
Mettez à jour
{your-document-translation-endpoint}
et{your-key}
avec les valeurs de votre instance Translator du portail Azure.Mettez à jour
{your-source-container-SAS-URL}
et{your-target-container-SAS-URL}
avec les valeurs de votre instance Conteneurs de compte de stockage du portail Azure.
Exemple de code
Important
N’oubliez pas de supprimer la clé de votre code une fois que vous avez terminé, et ne la postez jamais publiquement. Pour la production, utilisez un moyen sécurisé de stocker et d’accéder à vos informations d’identification comme Azure Key Vault. Pour plus d’informations, consultezSécurité Cognitive Services.
using System.Text;
class Program
{
private static readonly string endpoint = "{your-document-translator-endpoint}/translator/text/batch/v1.0";
private static readonly string key = "{your-key}";
static readonly string route = "/batches";
static readonly string sourceURL = "\" {your-source-container-SAS-URL}\"";
static readonly string targetURL = " \"{your-target-container-SAS-URL}\"";
static readonly string json = ("{\"inputs\": [{\"source\": {\"sourceUrl\":"+sourceURL+" ,\"storageSource\": \"AzureBlob\",\"language\": \"en\"}, \"targets\": [{\"targetUrl\":"+targetURL+",\"storageSource\": \"AzureBlob\",\"category\": \"general\",\"language\": \"es\"}]}]}");
static async Task Main(string[] args)
{
using HttpClient client = new HttpClient();
using HttpRequestMessage request = new HttpRequestMessage();
{
StringContent content = new StringContent(json, Encoding.UTF8, "application/json");
request.Method = HttpMethod.Post;
request.RequestUri = new Uri(endpoint + route);
request.Headers.Add("Ocp-Apim-Subscription-Key", key);
request.Content = content;
HttpResponseMessage response = await client.SendAsync(request);
string result = response.Content.ReadAsStringAsync().Result;
if (response.IsSuccessStatusCode)
{
Console.WriteLine($"Status code: {response.StatusCode}");
Console.WriteLine();
Console.WriteLine($"Response Headers:");
Console.WriteLine(response.Headers);
}
else
Console.Write("Error");
}
}
}
Exécuter votre application
Une fois que vous avez ajouté un exemple de code à votre application, choisissez le bouton vert Démarrer en regard de document-translation-qs pour générer et exécuter votre programme, ou appuyez sur F5.
Après la réussite de l’opération :
- Vous trouverez les documents traduits dans votre conteneur cible.
- La méthode POST réussie retourne un code de réponse
202 Accepted
indiquant que la requête de lots a été créée par le service. - La requête POST retourne également des en-têtes de réponse, notamment
Operation-Location
qui fournit une valeur utilisée dans les requêtes GET suivantes.
Configurer votre environnement Go
Vous pouvez utiliser n’importe quel éditeur de texte pour écrire des applications Go. Nous vous recommandons d’utiliser la dernière version de Visual Studio Code et l’extension Go.
Conseil
Si vous débutez avec Go, essayez le module Learn Prise en main de Go.
Si vous ne l’avez pas déjà fait, téléchargez et installez Go.
Téléchargez la version de Go pour votre système d'exploitation.
Une fois le téléchargement terminé, exécutez le programme d’installation.
Ouvrez une invite de commandes et entrez ce qui suit pour confirmer que Go a été installé :
go version
Traduire tous les documents dans un conteneur de stockage
Dans une fenêtre de console (comme cmd, PowerShell ou Bash), créez un répertoire appelé document-translation-qs pour votre application, et accédez-y.
Créez un fichier Go nommé document-translation.go dans le répertoire document-translation-qs.
Copiez et collez l’exemple de code de Traduction de documentation dans votre fichier document-translation.go.
Mettez à jour
{your-document-translation-endpoint}
et{your-key}
avec les valeurs de votre instance Translator du portail Azure.Mettez à jour
{your-source-container-SAS-URL}
et{your-target-container-SAS-URL}
avec les valeurs de votre instance Conteneurs de compte de stockage du portail Azure.
Exemple de code
Important
N’oubliez pas de supprimer la clé de votre code une fois que vous avez terminé, et ne la postez jamais publiquement. Pour la production, utilisez un moyen sécurisé de stocker et d’accéder à vos informations d’identification comme Azure Key Vault. Pour plus d’informations, consultezSécurité Cognitive Services.
package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
)
func main() {
httpposturl := "{your-document-translation-endpoint}/translator/text/batch/v1.0/batches"
fmt.Println("Response", httpposturl)
var jsonData = []byte(`{
"inputs": [
{
"source": {
"sourceUrl": "{your-source-container-SAS-URL}"
},
"targets": [
{
"{your-target-container-SAS-URL}",
"language": "fr"
}
]
}
]
}`)
request, error := http.NewRequest("POST", httpposturl, bytes.NewBuffer(jsonData))
request.Header.Set("Content-Type", "application/json")
request.Header.Set("Ocp-Apim-Subscription-Key", "{your-key}")
client := &http.Client{}
response, error := client.Do(request)
if error != nil {
panic(error)
}
defer response.Body.Close()
fmt.Println("response Status:", response.Status)
var printHeader = (response.Header)
prettyJSON, _ := json.MarshalIndent(printHeader, "", " ")
fmt.Printf("%s\n", prettyJSON)
}
Exécuter votre application Go
Une fois que vous avez ajouté un exemple de code à votre application, votre programme Go peut être exécuté dans une invite de commandes ou de terminal. Vérifiez que le chemin de votre invite est défini sur le dossier document-translation-qs et utilisez la commande suivante :
go run document-translation.go
Après la réussite de l’opération :
- Vous trouverez les documents traduits dans votre conteneur cible.
- La méthode POST réussie retourne un code de réponse
202 Accepted
indiquant que la requête de lots a été créée par le service. - La requête POST retourne également des en-têtes de réponse, notamment
Operation-Location
qui fournit une valeur utilisée dans les requêtes GET suivantes.
Configurer votre environnement Java
Pour ce guide de démarrage rapide, nous utilisons l’outil d’automatisation de build Gradle pour créer et exécuter l’application.
Vous devez utiliser la dernière version de Visual Studio Code ou de votre IDE préféré. VoirJava dans Visual Studio Code.
Conseil
- Visual Studio Code offre un pack de programmation pour Java pour Windows et macOS. Le pack de programmation est un bundle de VS Code, le Kit de développement Java (JDK) et une collection d’extensions suggérées par Microsoft. Le Pack de programmation peut également être utilisé pour corriger un environnement de développement existant.
- Si vous utilisez VS Code et le Pack de programmation pour Java, installez l’extension Gradle pour Java.
Si vous n’utilisez pas Visual Studio Code, vérifiez que les éléments suivants sont installés dans votre environnement de développement :
Un Kit de développement Java (OpenJDK), version 8 ou ultérieure.
Gradle, version 6.8 ou ultérieure.
Créer un projet Gradle
Dans une fenêtre de console (comme cmd, PowerShell ou Bash), créez un répertoire appelé document-translation pour votre application, et accédez-y.
mkdir document-translation && document-translation
mkdir document-translation; cd document-translation
Exécutez la commande
gradle init
à partir du répertoire document-translation. Cette commande crée des fichiers de build essentiels pour Gradle, notamment build.gradle.kts, qui est utilisé au moment de l’exécution pour créer et configurer votre application.gradle init --type basic
Quand vous êtes invité à choisir un DSL, sélectionnez Kotlin.
Acceptez le nom de projet par défaut (document-translation) en sélectionnant Retour ou Entrée.
Notes
La création de l’ensemble de l’application peut prendre quelques minutes, mais vous devriez bientôt voir plusieurs dossiers et fichiers, notamment
build-gradle.kts
.Mettez à jour
build.gradle.kts
à l’aide du code suivant :
plugins {
java
application
}
application {
mainClass.set("DocumentTranslation")
}
repositories {
mavenCentral()
}
dependencies {
implementation("com.squareup.okhttp3:okhttp:4.10.0")
implementation("com.google.code.gson:gson:2.9.0")
}
Traduire tous les documents dans un conteneur de stockage
À partir du répertoire document-translation, exécutez la commande suivante :
mkdir -p src/main/java
La commande crée la structure de répertoires suivante :
Accédez au répertoire
java
et créez un fichier nomméDocumentTranslation.java
.Conseil
Vous pouvez créer un nouveau fichier à l’aide de PowerShell.
Ouvrez une fenêtre PowerShell dans le répertoire de votre projet en maintenant la touche Maj enfoncée et en cliquant avec le bouton droit sur le dossier.
Entrez la commande suivante New-Item DocumentTranslation.java.
Vous pouvez également créer un fichier dans votre IDE nommé
DocumentTranslation.java
et l’enregistrer dans le répertoirejava
.
Copiez et collez l’exemple de code de Traduction de documentation dans votre fichier DocumentTranslation.java.
Mettez à jour
{your-document-translation-endpoint}
et{your-key}
avec les valeurs de votre instance Translator du portail Azure.Mettez à jour
{your-source-container-SAS-URL}
et{your-target-container-SAS-URL}
avec les valeurs de votre instance Conteneurs de compte de stockage du portail Azure.
Exemple de code
Important
N’oubliez pas de supprimer la clé de votre code une fois que vous avez terminé, et ne la postez jamais publiquement. Pour la production, utilisez un moyen sécurisé de stocker et d’accéder à vos informations d’identification comme Azure Key Vault. Pour plus d’informations, consultezSécurité Cognitive Services.
import java.io.*;
import java.net.*;
import java.util.*;
import okhttp3.*;
public class DocumentTranslation {
String key = "{your-key}";
String endpoint = "{your-document-translation-endpoint}/translator/text/batch/v1.0";
String path = endpoint + "/batches";
String sourceSASUrl = "{your-source-container-SAS-URL}";
String targetSASUrl = "{your-target-container-SAS-URL}";
String jsonInputString = (String.format("{\"inputs\":[{\"source\":{\"sourceUrl\":\"%s\"},\"targets\":[{\"targetUrl\":\"%s\",\"language\":\"fr\"}]}]}", sourceSASUrl, targetSASUrl));
OkHttpClient client = new OkHttpClient();
public void post() throws IOException {
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, jsonInputString);
Request request = new Request.Builder()
.url(path).post(body)
.addHeader("Ocp-Apim-Subscription-Key", key)
.addHeader("Content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
System.out.println(response.code());
System.out.println(response.headers());
}
public static void main(String[] args) {
try {
DocumentTranslation sampleRequest = new DocumentTranslation();
sampleRequest.post();
} catch (Exception e) {
System.out.println(e);
}
}
}
Générer et exécuter votre application Java
Une fois que vous avez ajouté un exemple de code à votre application, revenez à votre répertoire de projet principal (document-translation), ouvrez une fenêtre de console, puis entrez les commandes suivantes :
Générez votre application avec la commande
build
:gradle build
Exécutez votre application avec la commande
run
:gradle run
Après la réussite de l’opération :
- Vous trouverez les documents traduits dans votre conteneur cible.
- La méthode POST réussie retourne un code de réponse
202 Accepted
indiquant que la requête de lots a été créée par le service. - La requête POST retourne également des en-têtes de réponse, notamment
Operation-Location
qui fournit une valeur utilisée dans les requêtes GET suivantes.
Configurer votre environnement Node.js
Pour ce guide de démarrage rapide, nous utilisons l’environnement d’exécution JavaScript Node.js pour créer et exécuter l’application.
Si vous ne l’avez pas déjà fait, installez la dernière version de Node.js. Node Package Manager (npm) est inclus dans l’installation Node.js.
Conseil
Si vous débutez avec Node.js, essayez le module Learn Introduction à Node.js.
Dans une fenêtre de console (par exemple, cmd, PowerShell ou Bash), créez un répertoire
document-translation
pour votre application et accédez-y.mkdir document-translation && cd document-translation
mkdir document-translation; cd document-translation
Exécutez la commande npm init pour initialiser l’application et échafauder votre projet.
npm init
Spécifiez les attributs de votre projet en acceptant les invites qui s’affichent dans le terminal.
- Les attributs les plus importants sont le nom, le numéro de version et le point d’entrée.
- Nous vous recommandons de conserver
index.js
comme nom du point d’entrée. La description, la commande de test, le référentiel GitHub, les mots clés, l’auteur et les informations de licence sont des attributs facultatifs. Vous pouvez les ignorer pour ce projet. - Acceptez les suggestions entre parenthèses en sélectionnant Retour ou Entrée.
- Une fois les invites terminées, un fichier
package.json
est créé dans votre répertoire document-translation.
Utilisez npm pour installer la bibliothèque HTTP
axios
et le packageuuid
dans le répertoire de votre application document-translation :npm install axios uuid
Traduire tous les documents dans un conteneur de stockage
Créez le fichier
index.js
dans le répertoire de l’application.Conseil
Vous pouvez créer un nouveau fichier à l’aide de PowerShell.
Ouvrez une fenêtre PowerShell dans le répertoire de votre projet en maintenant la touche Maj enfoncée et en cliquant avec le bouton droit sur le dossier.
Entrez la commande suivante New-Item index.js.
Vous pouvez également créer un fichier nommé
index.js
dans votre IDE et l’enregistrer dans le répertoiredocument-translation
.
Copiez et collez l’exemple de code de Traduction de documentation dans votre fichier
index.js
.Mettez à jour
{your-document-translation-endpoint}
et{your-key}
avec les valeurs de votre instance Translator du portail Azure.Mettez à jour
{your-source-container-SAS-URL}
et{your-target-container-SAS-URL}
avec les valeurs de votre instance Conteneurs de compte de stockage du portail Azure.
Exemple de code
Important
N’oubliez pas de supprimer la clé de votre code une fois que vous avez terminé, et ne la postez jamais publiquement. Pour la production, utilisez un moyen sécurisé de stocker et d’accéder à vos informations d’identification comme Azure Key Vault. Pour plus d’informations, consultezSécurité Cognitive Services.
const axios = require('axios').default;
let endpoint = '{your-document-translation-endpoint}/translator/text/batch/v1.0';
let route = '/batches';
let key = '{your-key}';
let sourceSASUrl = "{your-source-container-SAS-URL}";
let targetSASUrl = "{your-target-container-SAS-URL}"
let data = JSON.stringify({"inputs": [
{
"source": {
"sourceUrl": sourceSASUrl,
"storageSource": "AzureBlob",
"language": "en"
},
"targets": [
{
"targetUrl": targetSASUrl,
"storageSource": "AzureBlob",
"category": "general",
"language": "es"}]}]});
let config = {
method: 'post',
baseURL: endpoint,
url: route,
headers: {
'Ocp-Apim-Subscription-Key': key,
'Content-Type': 'application/json'
},
data: data
};
axios(config)
.then(function (response) {
let result = { statusText: response.statusText, statusCode: response.status, headers: response.headers };
console.log()
console.log(JSON.stringify(result, null, 2));
})
.catch(function (error) {
console.log(error);
});
Exécuter votre application JavaScript
Une fois que vous avez ajouté l’exemple de code à votre application, exécutez votre programme :
Accédez au répertoire de votre application (document-translation).
Entrez et exécutez la commande suivante dans votre terminal :
node index.js
Après la réussite de l’opération :
- Vous trouverez les documents traduits dans votre conteneur cible.
- La méthode POST réussie retourne un code de réponse
202 Accepted
indiquant que la requête de lots a été créée par le service. - La requête POST retourne également des en-têtes de réponse, notamment
Operation-Location
qui fournit une valeur utilisée dans les requêtes GET suivantes.
Configurer votre projet Python
Si vous ne l’avez pas déjà fait, installez la dernière version de Python 3.x. Le package d’installation Python (pip) est inclus dans l’installation de Python.
Conseil
Si vous débutez avec Python, essayez le module Learn Introduction à Python.
Ouvrez une fenêtre de terminal et utilisez pip pour installer la bibliothèque Requests et le package uuid0 :
pip install requests uuid
Traduire tous les documents dans un conteneur de stockage
À l’aide de votre éditeur ou IDE préféré, créez un répertoire nommé
document-translation
pour votre application.Créez un fichier Python appelé document-translation.py dans votre répertoire document-translation.
Copiez et collez l’exemple de code de Traduction de documentation dans votre fichier
document-translation.py
.Mettez à jour
{your-document-translation-endpoint}
et{your-key}
avec les valeurs de votre instance Translator du portail Azure.Mettez à jour
{your-source-container-SAS-URL}
et{your-target-container-SAS-URL}
avec les valeurs de votre instance Conteneurs de compte de stockage du portail Azure.
Exemple de code
Important
N’oubliez pas de supprimer la clé de votre code une fois que vous avez terminé, et ne la postez jamais publiquement. Pour la production, utilisez un moyen sécurisé de stocker et d’accéder à vos informations d’identification comme Azure Key Vault. Pour plus d’informations, consultezSécurité Cognitive Services.
import requests
endpoint = '{your-document-translation-endpoint}'
key = '{your-key}'
path = 'translator/text/batch/v1.0/batches'
constructed_url = endpoint + path
sourceSASUrl = '{your-source-container-SAS-URL}'
targetSASUrl = '{your-target-container-SAS-URL}'
body= {
"inputs": [
{
"source": {
"sourceUrl": sourceSASUrl,
"storageSource": "AzureBlob",
"language": "en"
},
"targets": [
{
"targetUrl": targetSASUrl,
"storageSource": "AzureBlob",
"category": "general",
"language": "es"
}
]
}
]
}
headers = {
'Ocp-Apim-Subscription-Key': key,
'Content-Type': 'application/json',
}
response = requests.post(constructed_url, headers=headers, json=body)
response_headers = response.headers
print(f'response status code: {response.status_code}\nresponse status: {response.reason}\n\nresponse headers:\n')
for key, value in response_headers.items():
print(key, ":", value)
Exécuter votre application Python
Une fois que vous avez ajouté un exemple de code à votre application,générez et exécutez votre programme :
Accédez à votre répertoire document-translation.
Entrez et exécutez la commande suivante dans votre console :
python document-translation.py
Après la réussite de l’opération :
- Vous trouverez les documents traduits dans votre conteneur cible.
- La méthode POST réussie retourne un code de réponse
202 Accepted
indiquant que la requête de lots a été créée par le service. - La requête POST retourne également des en-têtes de réponse, notamment
Operation-Location
qui fournit une valeur utilisée dans les requêtes GET suivantes.
Configurer votre environnement de programmation
Dans ce démarrage rapide, nous utilisons l’outil en ligne de commande cURL pour effectuer des appels d’API REST Traduction de documents.
Notes
Le package cURL est préinstallé sur la plupart des systèmes Windows 10 et Windows 11 et sur la plupart des distributions macOS et Linux. Vous pouvez vérifier la version du package avec les commandes suivantes : Windows : curl.exe -V
.
macOS : curl -V
Linux : curl --version
Si cURL n’est pas installé, voici des liens pour votre plateforme :
Traduire des documents (Requête POST)
À l’aide de votre éditeur ou IDE préféré, créez un répertoire nommé
document-translation
pour votre application.Créez un fichier Json appelé document-translation.json dans votre répertoire document-translation.
Copiez et collez l’exemple de requête de Traduction de documentation dans votre fichier
document-translation.json
. Remplacez{your-source-container-SAS-URL}
et{your-target-container-SAS-URL}
par les valeurs de votre instance Conteneurs de compte de stockage du portail Azure.**Request sample**
{ "inputs":[ { "source":{ "sourceUrl":"{your-source-container-SAS-URL}" }, "targets":[ { "targetUrl":"{your-target-container-SAS-URL}", "language":"fr" } ] } ] }
Générer et exécuter la requête POST
Avant d’exécuter la requête POST, remplacez {your-source-container-SAS-URL}
et {your-key}
par la valeur de point de terminaison de votre instance du portail Azure Translator.
Important
N’oubliez pas de supprimer la clé de votre code une fois que vous avez terminé, et ne la postez jamais publiquement. Pour la production, utilisez un moyen sécurisé de stocker et d’accéder à vos informations d’identification comme Azure Key Vault. Pour plus d’informations, consultezSécurité Cognitive Services.
PowerShell
cmd /c curl "{your-source-container-SAS-URL}/translator/text/batch/v1.0/batches" -i -X POST --header "Content-Type: application/json" --header "Ocp-Apim-Subscription-Key: {your-key}" --data "@document-translation.json"
invite de commandes/terminal
curl "{your-source-container-SAS-URL}/translator/text/batch/v1.0/batches" -i -X POST --header "Content-Type: application/json" --header "Ocp-Apim-Subscription-Key: {your-key}" --data "@document-translation.json"
Après la réussite de l’opération :
- Vous trouverez les documents traduits dans votre conteneur cible.
- La méthode POST réussie retourne un code de réponse
202 Accepted
indiquant que la requête de lots a été créée par le service. - La requête POST retourne également des en-têtes de réponse, notamment
Operation-Location
qui fournit une valeur utilisée dans les requêtes GET suivantes.
Voilà, félicitations ! Dans ce guide de démarrage rapide, vous avez utilisé la Traduction de documentation pour traduire un document tout en conservant sa structure d’origine et son format de données.
Étapes suivantes
Découvrez-en plus sur la Traduction de documentation :