Artfical AI / API
Obtener una clave de API Abrir tAI
Referencia

Compatibilidad con el SDK de OpenAI

Qué funciona sin cambios si apunta una integración existente compatible con OpenAI hacia tAI, y qué no, para que nada tenga que descubrirse por ensayo y error.

La versión corta

Cambie dos valores, base_url a https://api.artfical.com/v1 y api_key a una clave de tAI, y el ciclo central de solicitud/respuesta, chat completions, streaming, llamadas a herramientas, entrada de imágenes, funciona igual que contra la propia API de OpenAI. Esta página existe para las partes que no se trasladan uno a uno, de modo que una migración no dependa de descubrir las diferencias una solicitud fallida a la vez.

# Before
client = OpenAI(api_key="sk-...")

# After
client = OpenAI(base_url="https://api.artfical.com/v1", api_key="tai-sk-...")

Funciona tal cual

FuncionalidadNotas
Chat completionsMisma forma de solicitud y respuesta. Vea Chat completions.
StreamingMisma forma de chunk SSE, incluido un chunk final solo de uso. Vea Streaming.
Llamadas a herramientas / funcionesMisma forma de tools y tool_calls. tAI nunca ejecuta herramientas por sí mismo; vea Llamadas a herramientas para saber por qué eso es distinto de algunas otras API orientadas a agentes.
Entrada de imágenesMisma forma de parte de contenido image_url, data URIs en base64. Vea Imágenes para saber qué modelos la aceptan.
temperature, top_p, presence_penalty, frequency_penalty, seed, stopMismos nombres, mismos rangos aceptados. Vea Parámetros de muestreo.
Envoltorio de errorMisma forma {"error": {"message", "type"}}. Vea Errores.
GET /v1/modelsMismo envoltorio de lista, aunque el conjunto de campos de cada entrada de modelo es más reducido que el de OpenAI. Vea Modelos.

No compatible actualmente

FuncionalidadQué ocurre si la envía
n (varios completions)Se ignora. choices siempre contiene exactamente una entrada.
logprobs / top_logprobsSe ignora. No se devuelven datos de log-probabilidad.
response_format (modo JSON / salidas estructuradas)Se ignora. Si necesita una salida estructurada de forma confiable, el enfoque más portable es indicarle al modelo en el propio prompt que responda en un formato específico (JSON, una plantilla fija) e interpretar el texto resultante.
Endpoints de embeddings, audio, generación de imágenesNo implementados. La superficie de la API de tAI es solo chat completions y listado de modelos; vea la descripción general de la API para la lista completa de endpoints.
Endpoints de fine-tuning, batch, y subida de archivosNo implementados.
Claves con alcance de organización / proyectoNo aplica. Una clave de tAI tiene el alcance de un solo workspace; vea Autenticación.

Ninguno de los campos no admitidos hace que una solicitud falle de forma directa; se aceptan y se ignoran silenciosamente en lugar de provocar un 400. Es una decisión deliberada para no romper un cliente existente que, por costumbre, siempre envía, por ejemplo, n: 1, aunque de todos modos sea el valor por defecto; el riesgo es que un cliente asuma que una funcionalidad realmente no admitida (como n: 3 para tres completions candidatos reales) está funcionando cuando en silencio no lo está, así que vale la pena verificar explícitamente la forma de la respuesta en lugar de confiar en que no se generó ningún error.

Los nombres de modelo no se trasladan

La cadena de modelo de una integración existente, "gpt-4o", "gpt-4.1-mini", o similar, debe cambiarse por uno de los propios IDs de modelo de tAI (tai-4.0.6P, tai-4.0.6B, tai-4.0.7, tai-4.1, tai-4.2); vea la página Modelos para saber para qué está pensado cada uno. No existe un mapeo automático de los nombres de modelo de otro proveedor a los de tAI, ya que los dos catálogos no se corresponden uno a uno en capacidad ni en nomenclatura.

Vale la pena verificar después de migrar

Algunas cosas que no provocan un error pero son fáciles de dejar sutilmente mal en un primer intento: confirme que base_url incluye el sufijo /v1 (un simple https://api.artfical.com sin él no resolverá las solicitudes correctamente), confirme que la clave de API tiene el prefijo tai-sk- y no es una clave sobrante de donde apuntaba antes la integración, y si la integración depende de que alguno de los campos no admitidos listados arriba produzca un efecto real, planifique explícitamente para esa diferencia en lugar de asumir paridad.