Saltar al contenido principal

API REST

Ollama expone una API compatible con la API de OpenAI en http://localhost:11434. Esto significa que cualquier aplicación que use la API de OpenAI puede apuntar a Ollama sin apenas cambios.

Endpoint /api/generate

curl http://localhost:11434/api/generate \
-d '{
"model": "llama3.2",
"prompt": "¿Qué es la cuantización en LLMs?",
"stream": false
}'

Endpoint /api/chat (compatible OpenAI)

curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "llama3.2",
"messages": [
{"role": "user", "content": "¿Qué es RAG?"}
]
}'

Desde Python

Con la librería oficial:

pip install ollama
import ollama

response = ollama.chat(
model="llama3.2",
messages=[{"role": "user", "content": "¿Qué es un embedding?"}]
)
print(response["message"]["content"])

Con la librería de OpenAI apuntando a Ollama:

from openai import OpenAI

client = OpenAI(
base_url="http://localhost:11434/v1",
api_key="ollama", # cualquier valor no vacío
)

response = client.chat.completions.create(
model="llama3.2",
messages=[{"role": "user", "content": "¿Qué es un embedding?"}]
)
print(response.choices[0].message.content)

Referencias