translateMany
Riferimento API per il metodo GT translateMany per le traduzioni in batch
Panoramica
Il metodo translateMany traduce in modo efficiente più elementi di contenuto con una singola richiesta API.
È ottimizzato per l’elaborazione in batch e offre prestazioni migliori rispetto a effettuare più chiamate translate individuali.
const gt = new GT({
apiKey: 'your-api-key',
projectId: 'your-project-id'
});
const result = await gt.translateMany([
{ source: 'Ciao, mondo!' },
{ source: 'Benvenuto nella nostra app' },
{ source: 'Clicca qui per continuare' }
], { targetLocale: 'es' });Riferimenti
Parametri
Prop
Type
Descrizione dei parametri
| Parametro | Descrizione |
|---|---|
sources | Array di oggetti Entry contenenti il contenuto di origine e metadati opzionali per singolo elemento |
globalMetadata | Metadati globali applicati a tutte le voci, incluso il targetLocale obbligatorio |
Struttura dell’oggetto Entry
Ogni voce dell’array sources può contenere:
interface Entry {
source: Content; // Il contenuto da tradurre
targetLocale?: string; // Sovrascrive il locale di destinazione globale
context?: string; // Contesto di traduzione per questa voce
tags?: string[]; // Tag per la categorizzazione
// ... altre proprietà di EntryMetadata
}Valori restituiti
Promise<TranslateManyResult>Il risultato contiene le voci tradotte e le eventuali informazioni sugli errori:
interface TranslateManyResult {
translations: Array<TranslationResult | TranslationError>;
metadata: {
totalRequests: number;
successCount: number;
errorCount: number;
processingTime: number;
};
}Comportamento
Metadati globali vs per voce
- Metadati globali applicati a tutte le voci come valori predefiniti
- Metadati per voce che sostituiscono le impostazioni globali per voci specifiche
- La lingua di destinazione può essere impostata per singola voce
Strategia di gestione degli errori
- I singoli errori di traduzione non bloccano l’intero batch
- Ogni risultato indica in modo indipendente esito positivo o negativo
- Gli scenari di successo parziale sono pienamente supportati
Risoluzione delle locale
- La locale di destinazione globale è usata come impostazione predefinita per tutte le voci
- Le locale di destinazione specifiche per voce sostituiscono l’impostazione globale
- Tutte le locale vengono risolte tramite mappatura personalizzata, se configurata
Esempi
const menuItems = await gt.translateMany([
{ source: 'Home' },
{ source: 'Chi siamo' },
{ source: 'Prodotti' },
{ source: 'Contatti' }
], {
targetLocale: 'fr',
context: 'Voci di menu di navigazione'
});
menuItems.translations.forEach((result, index) => {
if ('translation' in result) {
console.log(`Elemento ${index}: ${result.translation}`);
} else {
console.error(`Elemento ${index} fallito: ${result.error}`);
}
});Note
- Traduce più elementi in un’unica richiesta API
- Un errore di traduzione in una voce non influisce sulle altre
- I risultati mantengono lo stesso ordine delle voci di input
- I metadati globali vengono uniti con quelli per voce (i metadati per voce hanno la precedenza)
Prossimi passaggi
- Scopri le traduzioni puntuali con translate
- Esplora i tipi Entry e EntryMetadata
- Approfondisci la struttura di TranslateManyResult
Come valuti questa guida?