¿Qué hace cli-anything-ollama?
Inferencia local de modelos LLM y gestión de modelos a través de la API REST de Ollama. Diseñado para agentes de IA y usuarios avanzados que necesitan gestionar modelos, generar texto, chatear y crear embeddings sin interfaz gráfica.
Instalación
Este CLI se instala como parte del paquete cli-anything-ollama:
pip install cli-anything-ollama
Requisitos previos:
- Python 3.10+
- Ollama debe estar instalado y en ejecución (
ollama serve)
Uso
Comandos básicos
# Mostrar ayuda
cli-anything-ollama --help
# Iniciar modo REPL interactivo
cli-anything-ollama
# Listar modelos disponibles
cli-anything-ollama model list
# Ejecutar con salida JSON (para consumo por agentes)
cli-anything-ollama --json model list
Modo REPL
Cuando se invoca sin un subcomando, el CLI entra en una sesión REPL interactiva:
cli-anything-ollama
# Ingrese comandos de forma interactiva con autocompletado e historial
Grupos de comandos
Modelo
Comandos de gestión de modelos.
| Comando | Descripción |
|---|---|
list | Listar modelos disponibles localmente |
show | Mostrar detalles del modelo (parámetros, plantilla, licencia) |
pull | Descargar un modelo desde la biblioteca de Ollama |
rm | Eliminar un modelo del almacenamiento local |
copy | Copiar un modelo a un nuevo nombre |
ps | Listar modelos actualmente cargados en memoria |
Generar
Comandos de generación de texto y chat.
| Comando | Descripción |
|---|---|
text | Generar texto a partir de un prompt |
chat | Enviar una solicitud de finalización de chat |
Embeddings
Comandos de generación de embeddings.
| Comando | Descripción |
|---|---|
text | Generar embeddings para texto |
Servidor
Comandos de estado e información del servidor.
| Comando | Descripción |
|---|---|
status | Verificar si el servidor Ollama está en ejecución |
version | Mostrar la versión del servidor Ollama |
Sesión
Comandos de estado de la sesión.
| Comando | Descripción |
|---|---|
status | Mostrar el estado actual de la sesión |
history | Mostrar el historial de chat de la sesión actual |
Ejemplos
Listar y descargar modelos
# Listar modelos disponibles
cli-anything-ollama model list
# Descargar un modelo
cli-anything-ollama model pull llama3.2
# Mostrar detalles del modelo
cli-anything-ollama model show llama3.2
Generar texto
# Texto en streaming (por defecto)
cli-anything-ollama generate text --model llama3.2 --prompt "Explica la computación cuántica en una oración"
# Sin streaming con salida JSON (para agentes)
cli-anything-ollama --json generate text --model llama3.2 --prompt "Hola" --no-stream
Chat
# Chat de una sola vuelta
cli-anything-ollama generate chat --model llama3.2 --message "user:¿Qué es Python?"
# Chat de múltiples vueltas
cli-anything-ollama generate chat --model llama3.2 \
--message "user:¿Qué es Python?" \
--message "user:¿Cómo se compara con JavaScript?"
# Chat desde un archivo JSON
cli-anything-ollama generate chat --model llama3.2 --file messages.json
Embeddings
cli-anything-ollama embed text --model nomic-embed-text --input "Hola mundo"
cli-anything-ollama embed text --model nomic-embed-text --input "Hola" --input "Mundo"
Sesión REPL interactiva
Inicie una sesión interactiva para uso exploratorio.
cli-anything-ollama
# Ingrese comandos de forma interactiva
# Use 'help' para ver los comandos disponibles
Conectar a un host remoto
cli-anything-ollama --host http://192.168.1.100:11434 model list
Gestión de estado
El CLI mantiene un estado de sesión ligero:
- URL del host actual: Configurable mediante
--host - Historial de chat: Se rastrea para conversaciones de múltiples vueltas en REPL
- Último modelo usado: Se muestra en el prompt de REPL
Formatos de salida
Todos los comandos admiten modos de salida duales:
- Legible para humanos (por defecto): Tablas, colores, texto formateado
- Legible para máquinas (bandera
--json): JSON estructurado para consumo por agentes
# Salida humana
cli-anything-ollama model list
# Salida JSON para agentes
cli-anything-ollama --json model list
Para agentes de IA
Al usar este CLI de forma programática:
- Use siempre la bandera
--jsonpara obtener salida analizable - Verifique los códigos de retorno - 0 para éxito, distinto de cero para errores
- Analice stderr para mensajes de error en caso de fallo
- Use
--no-streampara generate/chat y obtener respuestas completas - Verifique que Ollama esté en ejecución con
server statusantes de otros comandos
Más información
- Documentación completa: Consulte README.md en el paquete
- Cobertura de pruebas: Consulte TEST.md en el paquete
- Metodología: Consulte HARNESS.md en cli-anything-plugin
Versión
1.0.1