API de Ollama frente a API de OpenAI: ¿cuál se adapta a tu proyecto?
Ollama ejecuta modelos en tu propia máquina, mientras que OpenAI ejecuta sus modelos en sus servidores. Esta página compara ambos en alojamiento, formato de petición, coste, límites y reglas de contenido, y luego muestra una tercera opción intermedia.
Actualizado

Puntos clave
- Ollama es un entorno local que alojas tú mismo; la API de OpenAI es un servicio alojado facturado por token.
- Ambos aceptan peticiones de chat estilo OpenAI, por lo que un cliente puede hablar con cualquiera cambiando la URL base.
- Las ejecuciones locales cuestan hardware y tiempo; las alojadas cuestan tokens; el punto de equilibrio depende de tu volumen.
- Un endpoint alojado compatible con OpenAI con un modelo de pesos abiertos te ofrece pago por uso sin necesidad de poseer una GPU.
La respuesta corta
La pregunta sobre la API de Ollama frente a la API de OpenAI es principalmente una cuestión de dónde se ejecuta el modelo. Con Ollama, el modelo reside en un ordenador que controlas, y tu código llama a localhost. Con OpenAI, el modelo reside en el centro de datos de otra persona, y tu código llama a una dirección HTTPS pública con una clave y una factura al final del mes.
Todo lo demás se deriva de esa única diferencia: estructura de costes, latencia que puedes ajustar, quién ve tus prompts, qué modelos puedes elegir y qué ocurre cuando envías cien peticiones a la vez. La tabla proporciona los hechos que se aplican a ambos.
| Asunto | Ollama | API OpenAI |
|---|---|---|
| Dónde se ejecuta | Tu portátil, estación de trabajo o servidor | Servidores de OpenAI |
| Quién configura el modelo | Tú descargas y actualizas los pesos tú mismo | OpenAI elige y actualiza sus modelos |
| Facturación | Sin cargo por token desde el entorno local; pagas por hardware y energía | Por token, desde una cuenta con facturación |
| Formato de petición | Rutas nativas más una capa al estilo de OpenAI /v1 | El formato original de OpenAI |
| Rendimiento | Limitado por tu hardware | Limitado por los límites de peticiones de la cuenta |
Si buscas un término medio, un endpoint alojado que utilice el mismo formato de OpenAI pero sirva un modelo de pesos abiertos se cubre cerca del final de esta página.
Qué es realmente cada API
Ollama
Ollama es un programa que descarga modelos de pesos abiertos y los sirve por HTTP en tu máquina. Por defecto escucha en el puerto 11434. Tiene sus propias rutas como /api/chat y /api/generate, y también expone una capa estilo OpenAI bajo /v1 para que el código cliente de OpenAI existente pueda apuntar a él. No hay cuenta ni clave en la configuración local habitual. Los clientes que exigen un campo de clave reciben una cadena de marcador.
Tú eliges el modelo, la cuantización y la configuración de contexto. Esa libertad es la principal atracción, y también es el coste: si el modelo no cabe en tu memoria, será lento o no se cargará en absoluto.
La API de OpenAI
La API de OpenAI es un servicio alojado. Creas una cuenta, añades facturación, generas una clave y envías peticiones a la dirección de OpenAI. Obtienes los modelos que ofrece OpenAI, bajo las políticas de uso de OpenAI, con los límites que permita tu nivel de cuenta. La capacidad, las mejoras y la disponibilidad son su responsabilidad, no la tuya. El formato de petición que ves en la mayoría de tutoriales, con un arreglo messages y un arreglo choices en la respuesta, proviene de esta API.
Por qué la gente los compara
La comparación existe porque ambos pueden alcanzarse con el mismo código cliente. Los SDK oficiales de OpenAI permiten anular la URL base, y la capa /v1 de Ollama entiende las completaciones de chat. Así que un script escrito para uno a menudo puede apuntar al otro en una línea. Eso es conveniente, y también oculta diferencias reales, que las siguientes secciones desglosan.
El mismo código cliente, dos base URLs
Esta es la parte que hace que el cambio sea barato. El fragmento de Python a continuación se comunica con un servidor Ollama local. Solo la base URL, la clave y el nombre del modelo son específicos del destino.
from openai import OpenAI
# Local Ollama through its OpenAI-style layer
client = OpenAI(base_url="http://localhost:11434/v1", api_key="ollama")
reply = client.chat.completions.create(
model="llama3.2", # whatever model you pulled locally
messages=[{"role": "user", "content": "Summarize what a base URL is."}],
)
print(reply.choices[0].message.content)Para enviar la misma petición a un endpoint alojado compatible con OpenAI, cambias tres valores. Aquí tienes la versión para este sitio, con el ID de modelo uncensored.
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaapi.com/v1", api_key="YOUR_KEY")
reply = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarize what a base URL is."}],
)
print(reply.choices[0].message.content)La misma petición funciona con curl, lo cual es útil para una prueba rápida antes de tocar cualquier código de aplicación.
curl https://api.ollamaapi.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","messages":[{"role":"user","content":"Hello"}]}'Aplica una advertencia a cualquier cambio entre estos destinos. La compatibilidad cubre la forma de la petición y la respuesta, no el comportamiento. Los diferentes modelos siguen las instrucciones de manera diferente, manejan las llamadas a herramientas de forma diferente y producen diferentes formatos. Ejecuta tus propios prompts a través del nuevo destino antes de confiar en él.
Coste: hardware que posees frente a tokens que compras
La inferencia local parece gratuita porque no llega ninguna factura. No lo es. Pagas por una GPU o una máquina de gran memoria, por la electricidad y por las horas dedicadas a instalar controladores, elegir cuantizaciones y reiniciar un servidor que se quedó sin memoria. Si ya posees hardware capaz y ejecutas unos pocos prompts al día, ese coste es cercano a cero en la práctica. Si tendrías que comprar una tarjeta solo para ejecutar el modelo que quieres, las matemáticas cambian.
La facturación alojada tiene una forma opuesta: nada por adelantado y un cargo que crece con el uso. En este sitio el precio es $0,15 por 1M de tokens de entrada y $0,50 por 1M de tokens de salida, desde crédito prepago sin suscripción. Para OpenAI, consulta su página de precios actual, porque varía según el modelo y cambia con el tiempo.
Así funciona la matemática alojada para un trabajo realista en este endpoint. Supongamos que una aplicación envía 40.000 peticiones en un mes, cada una con 1.500 tokens de entrada y 400 tokens de salida.
- Entrada: 40,000 x 1,500 = 60,000,000 tokens, o 60M. A $0.15 por 1M eso es $9.00.
- Salida: 40,000 x 400 = 16,000,000 tokens, o 16M. A $0.50 por 1M eso es $8.00.
- Total: $17.00 para el mes.
Puedes comparar esa cantidad con lo que te costaría comprar, alimentar y mantener una máquina adecuada. Para tráfico ligero o intermitente, pagar por token suele ganar. Para tráfico pesado constante en hardware que ya posees, lo local suele ganar. Consulta la página de precios para ver importes de recarga y bonificaciones.
Modelos, reglas de contenido y privacidad
Con Ollama decides qué modelo de pesos abiertos ejecutar, y nadie se interpone entre tu prompt y los pesos. El comportamiento del contenido es lo que haga ese modelo. Algunos modelos de la comunidad están ajustados para rechazar menos, otros no, y puedes intercambiarlos libremente.
Un proveedor alojado aplica sus propias políticas de uso y sus propios filtros. Esa es una posición razonable para un servicio de propósito general, y también es la razón por la que algunos escritores, desarrolladores de roleplay e investigadores que trabajan con ficción madura encuentran que las respuestas alojadas se cortan. Lee la política de cualquier proveedor del que planees depender, y verifica sus reglas actuales en lugar de asumir.
Este sitio se sitúa en un lugar diferente. Sirve un modelo de pesos abiertos, ejecutado por un proveedor independiente y ajustado para responder sin rechazos de contenido para uso adulto lícito. No es la API oficial de OpenAI, Meta, Mistral ni ningún otro proveedor, y no es un enrutador entre proveedores. Hay un límite estricto: no hay contenido sexual que involucre menores de edad. Los prompts no se utilizan para entrenamiento. Las peticiones fallidas o rechazadas no se cobran.
En cuanto a la privacidad, Ollama local mantiene los prompts en tu máquina, algo que ningún servicio alojado puede igualar. Si tus datos no deben salir del edificio, ejecútalo localmente y deja de comparar. Si puedes enviar texto a un servicio alojado, lee primero la página de privacidad del proveedor. La nuestra está en /privacy/.
Límites, concurrencia y características
Los límites locales son físicos. Una GPU sirve unas pocas peticiones simultáneas antes de que cada una se ralentice, y un contexto largo consume memoria rápidamente. Los límites alojados son de política. En este endpoint una clave completa permite 8 peticiones concurrentes y 300 peticiones por minuto, y una clave de prueba permite 2 concurrentes y 60 por minuto. La ventana de contexto es de 100.000 tokens, contando prompt más completion, y el cuerpo de la petición puede ser de hasta 8 MB.
Si excedes un límite, obtienes HTTP 429. El código de error es rate_limited para peticiones por minuto y concurrency para demasiadas peticiones a la vez. Un 429 con un encabezado Retry-After: 5 indica sobrecarga temporal, así que espera cinco segundos y reintenta. Una petición en streaming mantiene su slot de concurrencia hasta que finalice el streaming, lo cual es importante si abres muchos streams en paralelo.
La cobertura de funciones en el lado alojado se centra en chat. Obtienes streaming sobre SSE con uso al final, tool calling, modo JSON, y el paso de temperatura, top_p, stop, seed y las penalizaciones. No hay generación de imágenes, audio o video, ni embeddings ni fine-tuning. Si necesitas eso, planea obtenerlos en otro lugar. Nuestra documentación lista los campos de petición exactos.
Los encabezados de respuesta incluyen X-Request-Id y X-Balance-USD, para que puedas registrar una petición y ver tu crédito restante sin una llamada separada.
Cómo elegir
Elige según la restricción que más te afecte.
- Los prompts deben permanecer en tu hardware. Usa Ollama local.
- Ya posees una GPU capaz y quieres experimentar. Usa Ollama localmente, luego cambia más adelante si el tráfico lo supera.
- Necesitas el modelo de vanguardia de un proveedor específico o su ecosistema. Usa la API de ese proveedor. Un proveedor diferente no es un sustituto para un modelo en particular.
- Quieres acceso alojado, de pago por uso, a un modelo de pesos abiertos sin que se rechace contenido adulto lícito, y sin hardware que vigilar. Usa un endpoint compatible con OpenAI alojado como este.
Muchos equipos terminan usando dos: Ollama en un portátil para desarrollo, y un endpoint alojado para cualquier cosa que deba ser accesible desde un servidor o el navegador de un cliente. Como ambos hablan el mismo formato de petición, el cambio es un valor de configuración, no una reescritura. Si quieres probar el lado alojado, los nuevos usuarios pueden reclamar $0,50 de crédito de prueba con un clic en la página de clave de API después del registro. No necesita tarjeta y es válido por 7 días. Las recargas pagadas comienzan en $20 y aceptan tarjeta o cripto.
Más guías
Preguntas y respuestas
¿Es compatible la API de Ollama con el SDK de OpenAI?
Ollama expone una capa estilo OpenAI bajo /v1 que maneja completaciones de chat, por lo que los SDK oficiales de OpenAI pueden apuntar a él cambiando la URL base. Consulta la documentación de Ollama para ver qué campos admite tu versión.
¿Es Ollama más barato que la API de OpenAI?
Depende de tu hardware y volumen. El entorno local no tiene cargo por token, pero pagas por la máquina y su mantenimiento. Para uso ligero o irregular, la facturación por token suele ser más barata que comprar una GPU.
¿Puedo usar el endpoint de este sitio en lugar de Ollama local?
Sí, si quieres un endpoint compatible con OpenAI alojado. Establece la base URL a https://api.ollamaapi.com/v1 y el modelo a uncensored. No es Ollama y no se ejecuta en tu máquina.
¿El endpoint alojado admite llamadas a funciones y streaming?
Sí. Admite streaming sobre SSE, llamadas a funciones y modo JSON, con una ventana de contexto de 100,000 tokens.
Tu clave está a un formulario de distancia
Crea una cuenta, copia la clave, cambia la URL base. Esa es toda la configuración.