DOC · MICRODC-BLOG-002 · ESv3.4
2026-04-08 · INTEGRACIÓN · ~5 MIN DE LECTURA

Una API compatible con OpenAI, lista para usar, a una fracción del costo.

Los SDK de OpenAI para Python y TypeScript se han convertido en la lengua franca de las aplicaciones con LLM. Los admitimos tal cual. Cambie una línea, la base_url, y su código existente sigue funcionando con un costo por token considerablemente menor.

Si inició una nueva aplicación con LLM en los últimos 18 meses, hay una alta probabilidad de que la línea de importación diga from openai import OpenAI. El SDK está bien diseñado, la documentación es buena y la mayoría de los demás proveedores han copiado la forma de la solicitud y la respuesta. Es una feliz coincidencia para todos: significa que puede cambiar de proveedor sin reescribir su aplicación.

MicroDC.ai ofrece un endpoint de Chat Completions compatible con OpenAI. Usted cambia la base_url por la nuestra, proporciona su clave de API de MicroDC.ai y el resto de su código — incluidos LangChain, LlamaIndex, Instructor y cualquier otra biblioteca construida sobre el SDK de OpenAI — funciona sin modificaciones.

El diff.

Esta es una integración típica con OpenAI:

from openai import OpenAI

client = OpenAI(api_key=os.environ["OPENAI_API_KEY"])

resp = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "Summarize this contract..."}],
)
print(resp.choices[0].message.content)

La versión con MicroDC.ai:

from openai import OpenAI

client = OpenAI(
    api_key=os.environ["MICRODC_API_KEY"],
    base_url="https://api.microdc.ai/v1",
)

resp = client.chat.completions.create(
    model="llama-3.1-8b",
    messages=[{"role": "user", "content": "Summarize this contract..."}],
)
print(resp.choices[0].message.content)

Cambian dos líneas: la base_url y el model. Todo lo demás es idéntico — incluidos la forma de la respuesta, el formato de los errores y los nombres de los parámetros. Si ya había encapsulado el cliente de OpenAI en una clase de servicio, cambiaría la base_url en un solo lugar y lo desplegaría.

Lo que funciona tal cual.

Lo que es diferente.

Conviene ser claros sobre las diferencias, porque las sorpresas en producción son las peores:

La diferencia de costo.

Para la misma chat completion con Llama 3.1 8B (1,000 tokens de salida, ~500 de entrada):

ProveedorCostoNotas
Nube principal, serverless$0.10–$0.20Prima de tiempo real incluida
OpenAI gpt-4o-mini, calidad equivalente~$0.0006Nivel propietario económico
MicroDC.ai llama-3.1-8b~$0.011Pesos abiertos, costo de infraestructura fraccional

El nivel propietario es competitivo en precio bruto para modelos pequeños, pero usted renuncia al control: enrutamiento opaco, límites de tasa inesperados y ninguna posibilidad de usar un modelo personalizado o ajustado. El nivel de MicroDC.ai gana con claridad cuando quiere ejecutar modelos de pesos abiertos, cuando necesita precios predecibles para volumen por lotes o cuando tiene requisitos de residencia de datos o de conocimiento cero que las API propietarias no pueden cumplir.

Migración en un solo diff.

La mayoría de los equipos que hemos migrado tienen una clase envolvente alrededor del cliente de OpenAI — algo como LLMClient en su carpeta services/. La migración consiste en cambiar el constructor en ese único archivo. El resto del código base no sabe que se ejecuta sobre otro proveedor.

--- a/services/llm_client.py
+++ b/services/llm_client.py
@@
-client = OpenAI(api_key=os.environ["OPENAI_API_KEY"])
+client = OpenAI(
+    api_key=os.environ["MICRODC_API_KEY"],
+    base_url="https://api.microdc.ai/v1",
+)
@@
-DEFAULT_MODEL = "gpt-4o-mini"
+DEFAULT_MODEL = "llama-3.1-8b"

Ese es todo el cambio. Ejecute su conjunto de pruebas. Ejecute un pequeño canario con tráfico real. Compare costos a fin de mes. La mayoría de los equipos mantienen ambos proveedores conectados durante una o dos versiones para poder hacer pruebas A/B y revertir si algo los sorprende.

La conclusión.

La compatibilidad con OpenAI no es una casilla de marketing. Significa que el SDK que ya usa, el código de framework que ya escribió y las pruebas de integración que ya tiene funcionan sin modificaciones. La brecha de costo entre una "API propietaria premium en tiempo real" y un "modelo de pesos abiertos en una red distribuida" es lo bastante grande como para importar en cualquier volumen de inferencia no trivial.

Si está pagando precios de tiempo real por una carga de trabajo con LLM que en realidad no es de tiempo real, esta migración está a un diff de distancia de una factura considerablemente menor.

Documentación para desarrolladores →   Obtenga una clave de API →