Gateway de API de IA unificado: una sola API para acceder a todos los modelos
Un gateway de API de IA unificado pone los modelos de texto, imagen y video detrás de un único endpoint, un solo token y un mismo formato de solicitud. Descubre qué debe gestionar un buen gateway, cómo se comparan las opciones principales y cómo hacer una primera llamada a la API de PicassoIA con código curl y Python que funciona.
Todo equipo que lanza funciones de IA se topa con el mismo muro al llegar al tercer proveedor. Un modelo escribe el texto, otro dibuja la imagen principal, un tercero genera el clip del producto, y cada uno llega con su propio SDK, sus propias credenciales, su propia factura y su propia idea de cómo es un error. Un gateway de API de IA unificado elimina ese caos: un endpoint, un token, un único patrón de solicitud y un catálogo completo de modelos detrás. Este artículo muestra cómo funciona en la práctica, qué debe gestionar un buen gateway, dónde se esconden las contrapartidas y cómo hacer una llamada real a la API de PicassoIA en unos minutos.
Qué hace un gateway unificado
Un gateway se sitúa entre tu aplicación y los proveedores de modelos. Tu código envía una sola solicitud en un solo formato. El gateway elige el modelo, traduce la solicitud a lo que ese modelo espera, espera el resultado y lo devuelve con una forma estable. Tu aplicación no necesita saber qué proveedor hay al otro lado, a menos que tú se lo pidas.
Imagina un nudo ferroviario. Decenas de vías llegan desde direcciones distintas, pero los pasajeros solo tratan con una estación. Esa es la promesa detrás de una sola API para acceder a todos los modelos de IA: muchas fuentes, un único lugar donde comprar el billete. Con un gateway unificado, el modelo se convierte en un parámetro en lugar de una integración, así que pasar de un modelo rápido y barato a uno más potente es un cambio de una línea en un archivo de configuración, no una carrera contrarreloj.
Un buen gateway suele ofrecer:
Una sola URL base para cada solicitud, sea cual sea el tipo de medio
Un único método de autenticación, normalmente un token Bearer en la cabecera Authorization
Una forma de solicitud común, de modo que prompt significa lo mismo para todos los modelos
Un objeto de respuesta predecible con un estado, una salida y un campo de error
Un catálogo de modelos navegable entre el que puedes cambiar por nombre
Los proveedores difieren en detalles pequeños que se acumulan. Uno llama al campo prompt, otro input_text. Uno devuelve la respuesta al instante, otro devuelve un id de trabajo que hay que consultar. Uno cobra por tokens, otro por segundos de video. El gateway absorbe esas diferencias para que el código de tu producto siga siendo sencillo, que es justo lo que quieres.
Por qué los equipos dejan de hacer malabares con proveedores
Nadie se propone construir un montón de integraciones. Ocurre una función cada vez, y cada paso tiene sentido en el momento en que se da. El problema aparece después, en tres puntos.
La proliferación de SDK consume tiempo real
Cada SDK de proveedor tiene su propio ritmo de publicación, sus propios tipos y sus propias clases de error. Un producto con cinco integraciones tiene cinco calendarios de actualización, cinco changelogs que leer y cinco conjuntos de cambios incompatibles esperando caer un viernes por la tarde. Las horas se van en tareas de integración, no en la función que tus clientes pidieron.
La facturación y las credenciales se acumulan
Cinco proveedores significan cinco facturas, cinco secretos en la configuración de tu CI y cinco calendarios de rotación. Una credencial filtrada se convierte en un incidente aparte para cada proveedor. Cuando finanzas pregunta cuánto cuesta la IA por función, nadie puede responder sin una hoja de cálculo y una tarde libre.
Cambiar de modelo duele sin una capa intermedia
Salen modelos nuevos casi cada semana. Cuando los nombres de los modelos están fijados en todo el código, probar uno más nuevo obliga a tocar cada punto de llamada, volver a probar y volver a desplegar. Una capa de gateway convierte eso en un cambio de configuración que puedes deshacer en segundos.
Aspecto
Integraciones directas
Detrás de un gateway unificado
Credenciales
Una por proveedor
Un token
Formato de solicitud
Distinto para cada proveedor
Una sola forma
Cambiar de modelo
Cambio de código y nuevo despliegue
Cambiar un nombre de modelo
Visibilidad de costos
Varias facturas
Una vista de cuenta
Lógica de reintentos y errores
Escrita una vez por proveedor
Escrita una vez
Qué debe gestionar un buen gateway
Un gateway solo sirve si te quita trabajo real de encima. Al comparar opciones, revisa estas tres áreas primero.
Enrutamiento y respaldos
El enrutamiento decide qué modelo responde a cada solicitud. La versión más simple es una búsqueda por nombre. Un enrutamiento mejor añade respaldos: si el primer modelo agota el tiempo de espera, el gateway prueba un segundo con el mismo prompt. En texto, eso puede pasar desapercibido para los usuarios. En imágenes y video, los respaldos requieren más reflexión, porque dos modelos rara vez producen el mismo aspecto. Decide de antemano si un estilo distinto es aceptable o si el trabajo debe simplemente fallar y reintentarse.
Límites de uso y colas
Cada plataforma limita cuánto trabajo se ejecuta a la vez. La API de PicassoIA permite 5 predicciones simultáneas por cuenta, compartidas entre todos los tokens y todas las conexiones MCP de esa cuenta. Lo que exceda ese número tiene que esperar en algún sitio, así que construye tu propia cola en lugar de dejar que las solicitudes fallen al azar. Un pequeño grupo de workers con un semáforo fijado en 5 basta para la mayoría de los productos.
Registro y seguimiento de costos
Registra el nombre del modelo, el id de la predicción, la duración y el resultado de cada llamada. Esos cuatro campos responden a la mayoría de las preguntas de soporte («¿por qué fue tan lento?», «¿qué modelo hizo esta imagen?») y convierten el costo por función en una consulta sencilla en lugar de un juego de adivinanzas.
💡 Consejo: Guarda el id de la predicción junto a la acción del usuario que la provocó. Cuando un cliente informe de un mal resultado, podrás encontrar la solicitud exacta en segundos.
Texto, imágenes y video juntos
La mayoría de los gateways empezaron solo con texto. Los más útiles ponen todos los tipos de medios detrás del mismo patrón de llamada, lo que importa porque los productos reales mezclan formatos: un guion, una miniatura y un clip corto para la misma campaña.
Modelos de lenguaje con una sola llamada
Piensa en el catálogo como un fichero de biblioteca: buscas lo que necesitas por nombre y el sistema lo trae. PicassoIA enumera 75 modelos de lenguaje, entre ellos Claude Sonnet 5, GPT 5.6 Sol, Gemini 3.1 Pro, Kimi K2.6, DeepSeek V3.1 y Llama 4 Maverick. Elige un modelo más potente para razonamiento y código, uno más pequeño para respuestas cortas y etiquetado, y guarda esa elección en una variable en lugar de enterrarla en la lógica.
Modelos de imagen para cada estilo
El trabajo con imágenes sigue la misma idea con una salida distinta. PicassoIA enumera 212 modelos de imagen. Seedream 4.5 encaja bien en escenas comerciales pulidas, Flux 2 Pro responde bien a prompts cargados de detalle, GPT Image 2 merece la pena probarlo cuando debe aparecer texto legible en el encuadre, y Nano Banana Pro es una opción popular para editar fotos. Hoy se puede acceder a dos modelos de imagen a través de la API: PicassoIA Image para generar y PicassoIA Image Editor Pro para editar y combinar imágenes.
Modelos de video y audio nativo
El video es el tipo de medio más pesado: los trabajos duran más, las salidas son más grandes y muchos modelos recientes generan audio sincronizado. PicassoIA enumera 121 modelos de video, entre ellos Veo 3.1, Kling v3 Video, Wan 3 y Seedance 2.5. A través de la API puedes usar PicassoIA Video para pasar de texto o imagen a video, y Seedance 2.5 Lite, que añade audio sincronizado. Como el video tarda, el patrón asíncrono (crear, consultar, obtener) no es un extra opcional. Así es como funciona todo.
Una sola campaña muestra el beneficio. Un modelo de lenguaje redacta el guion, PicassoIA Image produce la miniatura y PicassoIA Video anima la toma de apertura. Son tres llamadas, un token, una función auxiliar y un solo lugar donde leer los registros. Con proveedores separados, el mismo flujo necesita tres SDK, tres secretos y tres conjuntos de manejo de errores.
💡 Sé preciso con el alcance. Las cifras del catálogo anteriores describen lo que puedes explorar y usar en la plataforma. La API pública expone actualmente cuatro modelos. Revisa la página de la API de PicassoIA antes de prometer un modelo concreto a tus propios clientes.
Cómo usar PicassoIA Image mediante la API
Aquí tienes un recorrido práctico desde cero hasta una imagen terminada usando PicassoIA Image (picassoia/picassoia-image). Los mismos pasos sirven para los otros tres modelos de la API. Solo cambian el slug del modelo y los campos de entrada.
Crear un token de API
Abre la página de la API de PicassoIA, crea un token y cópialo de inmediato. Empieza por pia_sk_ y solo se muestra una vez. Una cuenta puede tener 2 tokens a la vez, suficientes para un entorno de producción y otro para pruebas. Guárdalo como variable de entorno o en tu gestor de secretos, nunca en tu repositorio.
Envía tu primera predicción
Haz un POST a /v1/models/{owner}/{name}/predictions y envuelve tus parámetros en un objeto input:
curl -X POST https://api.picassoia.com/v1/models/picassoia/picassoia-image/predictions \
-H "Authorization: Bearer $PICASSOIA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"input": {"prompt": "a lighthouse at sunset, film photograph", "aspect_ratio": "16:9"}}'
La respuesta es un objeto de predicción. Contiene un id que empieza por api_, un status, un eta con un retardo de consulta sugerido, y urls para obtener y cancelar el trabajo.
Consulta hasta que termine
Las predicciones son asíncronas. El estado pasa de starting a processing y termina como succeeded, failed o canceled. Esta pequeña función auxiliar en Python funciona con cualquier modelo de la lista:
import os
import time
import requests
BASE = "https://api.picassoia.com/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['PICASSOIA_TOKEN']}"}
def run(model, payload, timeout=900):
resp = requests.post(f"{BASE}/models/{model}/predictions",
headers=HEADERS, json={"input": payload})
resp.raise_for_status()
prediction = resp.json()
deadline = time.time() + timeout
while prediction["status"] in ("starting", "processing"):
if time.time() > deadline:
requests.post(f"{BASE}/predictions/{prediction['id']}/cancel",
headers=HEADERS)
raise TimeoutError(prediction["id"])
wait = (prediction.get("eta") or {}).get("next_poll_in_seconds", 3)
time.sleep(wait)
prediction = requests.get(f"{BASE}/predictions/{prediction['id']}",
headers=HEADERS).json()
if prediction["status"] != "succeeded":
raise RuntimeError(prediction.get("error") or prediction["status"])
return prediction["output"]
image = run("picassoia/picassoia-image",
{"prompt": "a lighthouse at sunset, film photograph", "aspect_ratio": "16:9"})
clip = run("picassoia/picassoia-video",
{"prompt": "slow dolly in on a lighthouse at dusk"})
Como run recibe el slug del modelo como argumento, pasar de una imagen a un video supone una cadena distinta y una carga útil distinta, nada más. Ese es el sentido completo de un gateway unificado, mostrado en unas pocas líneas de código.
Para detener un trabajo, envía POST /v1/predictions/{id}/cancel. Para revisar trabajos recientes, llama a GET /v1/predictions. Cancela los trabajos que un usuario abandonó en lugar de dejar que se ejecuten hasta agotar el tiempo.
Límite
Valor
Predicciones simultáneas
5 por cuenta, compartidas por todos los tokens y conexiones MCP
💡 Revisa las condiciones. La página de la API indica que las predicciones no usan créditos y que se necesita un plan Infinite para crearlas. Los planes cambian, así que confirma el texto vigente en la página de la API antes de construir un producto sobre ello.
Tipos de gateway comparados
No todos los gateways resuelven el mismo problema, y las etiquetas se confunden. Clasificarlos según lo que hacen facilita la elección.
Tipo
Ideal para
Contrapartida
Router alojado
Acceso rápido a muchos modelos de texto
Sobre todo texto, y dependes de un solo proveedor
Proxy autoalojado
Control total y redes privadas
Tú lo ejecutas, parcheas y escalas
Gateway de borde o en la nube
Caché, límites de uso y registros delante de llamadas existentes
Añade control, no modelos nuevos
API de plataforma con catálogo propio
Texto, imagen y video con una sola cuenta
Revisa qué modelos expone la API hoy
Si tu producto es solo texto y quieres control total, un proxy autoalojado es una opción razonable. Si tu producto mezcla imágenes, clips y texto, una API de plataforma con un catálogo amplio te evita tener que unir tres sistemas. Muchos equipos acaban usando dos capas: una API de plataforma para generar y un envoltorio interno ligero que añade sus propios registros y presupuestos.
Antes de comprometerte con cualquier opción, hazte cinco preguntas:
¿Qué tipos de medios admite hoy, y cuáles existen solo en una hoja de ruta?
¿Qué pasa cuando se retira un modelo? Una buena plataforma avisa con antelación y te indica un reemplazo.
¿Dónde viven mis prompts y mis resultados, y durante cuánto tiempo?
¿Cómo se comparten los límites entre tokens, compañeros de equipo y herramientas?
¿Puedo irme? Si tu código solo habla con un envoltorio ligero, cambiar a otro gateway lleva un fin de semana, no un trimestre.
Errores comunes que conviene evitar
Un gateway elimina mucha fricción, pero no elimina la necesidad de buenos hábitos. Estos tres errores aparecen una y otra vez.
Fijar nombres de modelos en todas partes
Si picassoia/picassoia-image aparece en veinte archivos, has reconstruido el problema que un gateway debía resolver. Guarda los slugs de los modelos en un único objeto de configuración, agrupados por tarea: hero_image, product_clip, summary. Así, actualizar un modelo es una sola edición, y una prueba A/B es una segunda entrada.
Ignorar el límite de concurrencia
Cinco predicciones simultáneas suena generoso hasta que un trabajo por lotes y una solicitud de un usuario en directo comparten la misma cuenta. Reserva capacidad para el tráfico interactivo, ejecuta el trabajo masivo a través de una cola con un techo más bajo y trata cualquier error de límite como una señal para esperar, no para reintentar en un bucle apretado.
Saltarse los tiempos de espera y los reintentos
Los trabajos largos fallan por motivos corrientes: un corte de red, una GPU ocupada, un prompt que activa un filtro de seguridad. Define tu propio plazo, más corto que el tiempo de espera de la plataforma, reintenta una vez con backoff y muestra un mensaje claro al usuario si el segundo intento falla. Mantén también el id de la predicción en tus registros, para que soporte pueda seguir cualquier solicitud de principio a fin.
Haz tu primera llamada hoy
La forma más rápida de juzgar un gateway es ejecutar una solicitud real a través de él. Abre la página de la API de PicassoIA, crea un token, pega el comando curl de arriba y observa cómo una predicción pasa de starting a succeeded. Luego cambia solo el slug del modelo y envía un prompt de video a PicassoIA Video. Si la segunda llamada funciona sin tocar tu capa de integración, habrás visto la idea en acción.
¿Aún no quieres escribir código? Abre Picasso IA en el navegador, elige un modelo del catálogo de texto, imagen o video y escribe un prompt. Prueba la misma idea con Seedream 4.5 y Flux 2 Pro, compara los resultados lado a lado y mira cuál encaja con tu proyecto. Unos minutos experimentando con Picasso IA te dirán más que cualquier lista de funciones, así que ponte a crear tus propias imágenes hoy.