Referencia de la CLI
Ollaya es un único binario: la CLI, el servidor y los ejecutores de modelos. Si has usado Ollama, los comandos te resultarán familiares.
| Comando | Qué hace |
|---|---|
ollaya serve |
Inicia el servidor en 127.0.0.1:11435 |
ollaya run MODEL [STATE] |
Responde preguntas sobre un estado, o abre un prompt; descarga y carga el modelo según haga falta |
ollaya pull MODEL |
Descarga un modelo desde el registry |
ollaya list (ls) |
Lista los modelos de esta máquina |
ollaya ps |
Lista los modelos cargados en memoria |
ollaya show MODEL |
Muestra los detalles, las capacidades y la licencia de un modelo |
ollaya stop MODEL |
Descarga de la memoria un modelo en ejecución |
ollaya stop |
Detiene el servidor que inició la CLI |
ollaya mcp [--http [ADDR]] |
Sirve los modelos a agentes de IA por MCP (Agents) |
ollaya rm MODEL… |
Elimina uno o varios modelos |
ollaya cp SOURCE DESTINATION |
Copia un modelo con un nombre nuevo |
ollaya create NAME [-f Modelfile] |
Crea un modelo a partir de un Modelfile |
ollaya update [--check] |
Instala la última versión sobre esta |
ollaya -v |
Imprime la versión del servidor (y la del cliente) |
Todos los comandos salvo serve y update se comunican con el servidor en OLLAYA_HOST. Cuando allí no responde nada y la dirección es local, la CLI (excepto ollaya stop sin modelo) inicia ollaya serve en segundo plano y registra en ~/.ollaya/logs/server.log (o server.log dentro de OLLAYA_LOG_DIR).
Nombres de modelos
Los modelos se referencian como name:tag; si no hay tag, se usa latest. Los nombres no distinguen mayúsculas de minúsculas.
ollaya run laya # same as laya:latest, a router
ollaya run laya:multilingual
ollaya pull laya:en-fp32
Un modelo como laya:en incluye un grafo fp16 y otro fp32 que comparten un mismo archivo de pesos. La precisión se elige al cargar el modelo: fp16 en una GPU CUDA y fp32 en la CPU. Las etiquetas -fp16 y -fp32 fijan una de las dos.
ollaya run
ollaya run laya --preset triage "Your app crashed during checkout and I was charged twice. Please refund one of the charges."
run se conecta al servidor (lo inicia si hace falta), descarga el modelo si no está en esta máquina, lo carga e imprime una fila por pregunta: la respuesta, una barra y su probabilidad.
| Flag | Efecto |
|---|---|
--preset NAME |
Usa un preset: uno integrado (triage, email, guard, moderation, router o agent) o uno que hayas guardado con ollaya preset create |
--questions FILE|@FILE|JSON |
Usa estas preguntas (id de pregunta → pregunta), sobrescribiendo las del propio modelo: una ruta de archivo, @file (@- para stdin) o JSON en línea que empieza por { |
--format text|json |
text (predeterminado) imprime la tabla; json imprime la respuesta completa de /api/decide |
--keepalive DURATION |
Cuánto tiempo mantener cargado el modelo después: 5m, 1h, 0 (descargar de la memoria ahora), -1 (mantener cargado) |
--verbose |
Imprime también la probabilidad de cada opción, la decisión de enrutamiento y los tiempos |
--state-json |
Analiza el estado como JSON. Un estado que parece un objeto o un array JSON se detecta de todos modos |
--image FILE |
Una imagen PNG sobre la que decidir, para un modelo de visión (decider:2b-vision). Acompaña a cada estado, también en el REPL |
Las preguntas pueden venir de varios sitios; gana la primera coincidencia: --questions, luego --preset, luego las preguntas integradas en el modelo (las de qwen3guard, o las añadidas con un Modelfile) y, por último, el preset triage. Cuando run recurre a triage, lo indica en stderr.
--questions también acepta el JSON directamente en la línea de comandos, como hace curl -d: un valor que empieza por { es JSON en línea y cualquier otra cosa es una ruta de archivo. @file siempre es un archivo (útil si el nombre de un archivo empieza por {), y @- lee las preguntas de stdin, en cuyo caso el estado va en la línea de comandos:
ollaya run winnow:e4b --questions '{"topic":{"type":"choice","criteria":["billing","access","other"]}}' "..."
ollaya run winnow:e4b --questions @questions.json "..."
cat questions.json | ollaya run winnow:e4b --questions @- "..."
El estado es el resto de la línea de comandos. Sin uno, run lee lo que llega por stdin:
cat ticket.txt | ollaya run laya --preset triage
En un terminal y sin estado, run abre un prompt. Escribe un estado y pulsa Enter; para varias líneas, enciérralas en """. Comandos:
| Comando | Efecto |
|---|---|
/preset NAME |
Cambia a un conjunto de preguntas integrado |
/set questions FILE |
Usa las preguntas de un archivo JSON |
/show |
Muestra el modelo y las preguntas actuales |
/clear |
Limpia la pantalla |
/bye |
Sale (o Ctrl+D) |
/?, /help |
Ayuda |
ollaya serve
Inicia el servidor con el que se comunican la CLI y tus aplicaciones. Sirve la API nativa (/api/*) y la API compatible con TypeSafe (/v1/*); consulta la Referencia de la API. El instalador de Linux lo ejecuta como el servicio systemd ollaya.
ollaya serve
Rara vez lo necesitas: los otros comandos inician el servidor en segundo plano cuando no está en ejecución. Si ya hay un servidor en OLLAYA_HOST, ollaya serve lo dice y sale; detén ese primero con ollaya stop para ejecutar el servidor en primer plano.
Se configura con variables de entorno:
| Variable | Valor predeterminado | Efecto |
|---|---|---|
OLLAYA_HOST |
127.0.0.1:11435 |
Dirección de enlace; el destino de la CLI |
OLLAYA_MODELS |
~/.ollaya/models |
Almacén de modelos |
OLLAYA_KEEP_ALIVE |
5m |
Cuánto tiempo permanece cargado un modelo tras su última solicitud |
OLLAYA_MAX_LOADED_MODELS |
3 |
Modelos que se mantienen cargados a la vez |
OLLAYA_MAX_QUEUE |
512 |
Solicitudes de decisión en curso antes de 503 QUEUE_FULL |
OLLAYA_LOAD_TIMEOUT |
5m |
Cuánto puede tardar un modelo en cargarse |
OLLAYA_DEVICE |
auto |
auto (una GPU NVIDIA si el instalador añadió las bibliotecas CUDA; si no, la CPU), cpu, cuda o cuda:<n> |
OLLAYA_API_KEY |
sin definir | Exige Authorization: Bearer <key>; la CLI también la envía |
OLLAYA_ORIGINS |
sin definir | Orígenes de navegador adicionales permitidos, separados por comas |
OLLAYA_REGISTRY |
ollaya.dev |
Host del registry predeterminado en los nombres de modelos |
OLLAYA_LOG |
info |
Niveles de registro; debug registra cada solicitud con su estado y su duración |
OLLAYA_LOG_DIR |
sin definir | Registra en <dir>/server.log en lugar de stderr (se crea si falta; se añade al final, nunca se rota) |
Para el servicio systemd, cámbialas con sudo systemctl edit ollaya y líneas Environment=.
ollaya pull
Descarga un modelo y verifica cada capa con su sha256. Descargar un router también descarga todos los modelos a los que enruta. Solo se descargan las capas que necesita esta máquina, y las descargas interrumpidas se reanudan.
ollaya pull laya
ollaya list y ollaya ps
list muestra los modelos de esta máquina con su ID, su tamaño y cuándo se descargaron. ps muestra los modelos cargados, el dispositivo en el que se ejecutan (cpu, cuda:0), la precisión y cuándo se descargarán de la memoria.
NAME ID SIZE MODIFIED
laya:latest b87ca1631b11 11 KB 13 seconds ago
laya:multilingual ba7a334675b4 684 MB 13 seconds ago
laya:en bf30e4654e94 854 MB 30 seconds ago
ollaya show
Imprime la arquitectura de un modelo, sus parámetros, la longitud de contexto, las precisiones, los idiomas, las capacidades y la licencia. Para un router, imprime las rutas.
| Flag | Imprime solo |
|---|---|
--questions |
Las preguntas integradas en el modelo |
--license |
La licencia |
--modelfile |
Un Modelfile que recrea el modelo |
--parameters |
Los parámetros, como una precisión fijada |
ollaya stop
ollaya stop MODEL descarga de la memoria un modelo en ejecución en cuanto terminan sus solicitudes en curso, en lugar de esperar a que se agote el keep-alive.
ollaya stop sin modelo detiene el servidor en OLLAYA_HOST, lo que descarga de la memoria todos los modelos. Solo detiene un servidor que hayas iniciado tú, con ollaya serve o ejecutando otro comando. Nunca detiene el servidor de otro usuario, como el servicio systemd de Linux; detén ese con sudo systemctl stop ollaya.
ollaya rm y ollaya cp
ollaya cp laya:en my-guardrail
ollaya rm my-guardrail
rm también elimina los blobs que ningún otro modelo usa. Eliminar un router conserva los modelos a los que enruta. cp sobrescribe un destino existente.
ollaya preset
Un preset es un conjunto de preguntas con nombre que puedes reutilizar con cualquier modelo: ollaya run MODEL --preset NAME, o "preset": "NAME" en /api/decide. Hay seis integrados. Guarda el tuyo:
ollaya preset create billing-check --questions billing.json --description "Billing, and how upset the customer is"
ollaya run winnow:e4b --preset billing-check "I was charged twice this month."
| Comando | Efecto |
|---|---|
ollaya preset list |
Presets integrados y personalizados, con sus ids de pregunta |
ollaya preset show NAME |
Las preguntas de un preset, en JSON |
ollaya preset create NAME --questions FILE|@FILE|JSON [--description TEXT] |
Guarda un preset personalizado, reemplazando uno con el mismo nombre. --questions acepta las mismas formas que en ollaya run |
ollaya preset rm NAME... |
Elimina presets personalizados. Los presets integrados no se pueden eliminar |
Los nombres son letras minúsculas, dígitos, - y _. El servidor guarda los presets personalizados (en presets/, junto a los modelos), así que la CLI, la API y el servidor MCP los ven todos. Un preset se diferencia de un modelo hecho con el QUESTIONS de un Modelfile: no está atado a un solo modelo y no copia nada.
ollaya update
Instala la última versión sobre esta: vuelve a ejecutar el script de instalación en el mismo prefijo, así que los modelos, los presets y el servicio systemd se quedan como están.
ollaya update --check # only say whether a newer release exists
ollaya update
Un binario que vino con la aplicación de escritorio (la app de macOS, el instalador de Windows, un AppImage, o los paquetes .deb y .rpm) se actualiza instalando la nueva app, y un contenedor descargando la nueva imagen; ollaya update lo dice en lugar de modificarlo.
ollaya create
Construye un modelo a partir de un Modelfile, por ejemplo para incorporar un conjunto de preguntas, una calibración reajustada o una precisión fijada. -f es ./Modelfile de forma predeterminada.
ollaya create triage -f Modelfile