Skip to content

Proveedores y modelos de LLM

Cada pipeline de traducción —translate-ui, translate-docs, translate-json y translate-svg— envía texto a un LLM a través del mismo cliente independiente del proveedor. Antes de que cualquiera de esos comandos pueda ejecutarse, configure al menos un proveedor en ai-i18n-tools.config.json y establezca la clave API correspondiente en su entorno o .env (ajustes preestablecidos integrados excepto Ollama). init escribe un bloque inicial provider / providers; aún debe proporcionar credenciales para el ajuste preestablecido activo.

Usted configura qué punto final de API llamar y qué modelos probar una vez en la configuración; todos los comandos de traducción comparten esa configuración y la misma caché de SQLite.

La CLI resuelve el proveedor activo a partir de la clave provider de nivel superior (o la única entrada en providers cuando solo hay uno configurado). Cada bloque de proveedor enumera una cadena de reserva translationModels ordenada; los ajustes preestablecidos incorporados heredan baseUrl y la variable de entorno de clave de API automáticamente (anúlelos por proveedor cuando sea necesario).

Proveedores integrados

Las claves de proveedor preestablecidas solo necesitan translationModels: la URL base y la variable de entorno de la clave de API se rellenan automáticamente:

ProveedorURL baseVariable de entorno de clave API
openrouterhttps://openrouter.ai/api/v1OPENROUTER_API_KEY
openaihttps://api.openai.com/v1OPENAI_API_KEY
anthropichttps://api.anthropic.com/v1ANTHROPIC_API_KEY
geminihttps://generativelanguage.googleapis.com/v1beta/openaiGOOGLE_API_KEY
deepseekhttps://api.deepseek.comDEEPSEEK_API_KEY
cerebrashttps://api.cerebras.ai/v1CEREBRAS_API_KEY
groqhttps://api.groq.com/openai/v1GROQ_API_KEY
mistralhttps://api.mistral.ai/v1MISTRAL_API_KEY
xaihttps://api.x.ai/v1XAI_API_KEY
nvidiahttps://integrate.api.nvidia.com/v1NVIDIA_API_KEY
alibabahttps://dashscope-intl.aliyuncs.com/compatible-mode/v1ALIBABA_API_KEY
apifunhttps://api.apikey.fun/v1APIFUN_API_KEY
ollamahttp://localhost:11434/v1(ninguno)

Para cualquier clave no preestablecida, configure baseUrl y apiKeyEnv explícitamente en la configuración.

Establezca la clave de API del proveedor activo en su entorno o en el archivo .env. La CLI carga automáticamente .env desde el directorio de trabajo sin anular las variables ya establecidas en el shell. Consulte Variables de entorno.

Cadena de reserva de modelos

translationModels es una lista ordenada, no una única opción. La CLI prueba el primer modelo; si la solicitud o el análisis fallan, pasa a la siguiente entrada. Configure varios modelos para que una interrupción transitoria o un modelo que tenga dificultades con una configuración regional no bloquee toda la ejecución.

Niveles de resolución (deduplicados, orden conservado):

CanalizaciónOrden
UI (translate-ui, plurales, proofread-ui)localeModels(locale)uiModelstranslationModels
Documentos, JSON, SVGlocaleModels(locale)translationModels

La providers.<active>.uiModels opcional es una lista solo de UI que se prueba después de cualquier anulación por configuración regional coincidente y antes de la cadena global translationModels. La providers.<active>.localeModels opcional asigna una configuración regional BCP-47 a los modelos que se prueban primero para esa configuración regional en cada canalización (pt-br coincide con pt-BR). Cuando ninguna entrada localeModels coincide, solo se aplican los niveles específicos de la canalización.

Los diferentes proveedores y modelos varían en costo, velocidad y calidad entre idiomas. Trate la lista predeterminada de npx ai-i18n-tools init como un punto de partida: amplíela cuando una configuración regional produzca resultados consistentemente deficientes, o agregue una entrada localeModels para esa configuración regional. Valores predeterminados completos y justificación: Configuración — provider y providers.

Cadenas de interfaz de usuario: la uiModels opcional le permite enrutar translate-ui, la generación plural y proofread-ui a través de modelos premium antes de la cadena translationModels global, lo que es útil porque el texto de la interfaz de usuario es corto pero está orientado al usuario.

Configuraciones regionales asiáticas: las entradas localeModels opcionales para ja, ko, zh-Hans y zh-Hant se prueban primero en cada canalización; los modelos como z-ai/glm-5.2 y minimax/minimax-m2.7 a menudo funcionan mejor en scripts CJK que las alternativas de propósito general.

Configuración de ejemplo (OpenRouter):

json
{
  "provider": "openrouter",
  "providers": {
    "openrouter": {
      "translationModels": [
        "google/gemini-2.5-flash",
        "meta-llama/llama-3.3-70b-instruct",
        "openai/gpt-4o-mini",
        "google/gemma-4-26b-a4b-it",
        "anthropic/claude-3-haiku",
        "z-ai/glm-5.2",
        "google/gemini-3-flash-preview",
        "~anthropic/claude-sonnet-latest"
      ],
      "uiModels": [
        "~anthropic/claude-sonnet-latest",
        "z-ai/glm-5.2"
      ],
      "localeModels": [
        { "locale": "ja",      "models": [ "z-ai/glm-5.2", "minimax/minimax-m2.7" ] },
        { "locale": "ko",      "models": [ "z-ai/glm-5.2", "minimax/minimax-m2.7" ] },
        { "locale": "zh-Hans", "models": [ "z-ai/glm-5.2", "minimax/minimax-m2.7" ] },
        { "locale": "zh-Hant", "models": [ "z-ai/glm-5.2", "minimax/minimax-m2.7" ] }
      ]
    }
  }
}

Validar y comparar modelos

Antes de cambiar translationModels, confirme que cada ID todavía esté disponible en el proveedor activo:

bash
npx ai-i18n-tools check-models

check-models llama al punto final GET /models del proveedor, valida cada ID de translationModels, uiModels y localeModels, informa las ID que faltan o que superan expiration_date, y sale con un valor distinto de cero cuando cualquier ID configurada no es válida. Cuando el proveedor devuelve precios (OpenRouter lo hace), también muestra el USD estimado por 1 millón de tokens.

Explore el catálogo completo anunciado por un proveedor:

bash
npx ai-i18n-tools list-models

Compare el rendimiento de los modelos configurados con una muestra de traducción real: cada ID único de translationModels, uiModels y localeModels se ejecuta de forma aislada para que pueda comparar el tiempo real, el uso de tokens y el costo:

bash
npx ai-i18n-tools bench-models

Anule el texto de muestra, las configuraciones regionales o la lista de modelos:

bash
npx ai-i18n-tools bench-models --text "Hello world" --source en --target de --model openai/gpt-4o-mini,anthropic/claude-3-haiku

Detalles del comando: referencia de la CLI.

Múltiples proveedores

Cuando se configura más de un proveedor, establezca la clave provider de nivel superior para seleccionar el predeterminado. Cambie por ejecución sin editar la configuración:

bash
npx ai-i18n-tools translate-docs -P anthropic
npx ai-i18n-tools bench-models -P deepseek

Cada bloque de proveedor puede definir su propio translationModels, uiModels y localeModels opcionales, maxTokens, temperature y requestTimeoutMs. Todavía se acepta un bloque openrouter de nivel superior heredado y se migra automáticamente a providers.openrouter al cargarse.

Ejemplo ejecutable con cuatro proveedores en el mismo documento: examples/multi-provider.

Referencia adicional

Publicado bajo la licencia MIT.