Tutorial de Ollama CLI: ejecutar Ollama a través del terminal

Tutorial de Ollama CLI: ejecutar Ollama a través del terminal

Al ser una herramienta potente para ejecutar modelos de lenguaje grandes (LLM) de forma local, Ollama ofrece a desarrolladores, científicos de datos y usuarios técnicos un mayor control y flexibilidad a la hora de personalizar modelos.

Aunque puedes utilizar Ollama con interfaces gráficas de terceros, como Open WebUI, para interacciones más sencillas, ejecutarlo a través de la interfaz de línea de comandos (CLI) te permite registrar las respuestas en archivos y automatizar los flujos de trabajo mediante scripts.

Este tutorial te guiará a través del uso de Ollama a través de la CLI, desde el aprendizaje de los comandos básicos y la interacción con los modelos hasta la automatización de tareas y la implementación de tus propios modelos.

Al final, podrás adaptar Ollama a tus proyectos basados en IA.

Configuración de Ollama en la CLI

Antes de utilizar Ollama en la CLI, asegúrate de que lo has instalado en tu sistema correctamente. Para verificarlo, abre tu terminal y ejecuta el siguiente comando:

ollama --version

Deberías ver un resultado similar a este:

Salida del terminal que muestra la versión instalada de Ollama.

A continuación, familiarízate con estos comandos esenciales de Ollama:

ComandoDescripción
ollama serveInicia Ollama en tu sistema local.
ollama create< new_model>Crea un nuevo modelo a partir de uno existente para personalizarlo o entrenarlo.
ollama show< model>Muestra detalles sobre un modelo específico, como su configuración y fecha de lanzamiento.
ollama run< model>Ejecuta el modelo especificado, dejándolo listo para la interacción.
ollama pull< model>Descarga el modelo especificado en tu sistema.
ollama listEnumera todos los modelos descargados.
ollama psMuestra los modelos que se están ejecutando actualmente.
ollama stop< model>Detiene el modelo en ejecución especificado.
ollama rm< model>Elimina el modelo especificado de tu sistema.

Uso esencial de Ollama en la CLI

En esta sección se describe el uso principal de la CLI de Ollama, desde la interacción con los modelos hasta el almacenamiento de los resultados de los modelos en archivos.

Ejecución de modelos

Para empezar a utilizar modelos en Ollama, primero debes descargar el modelo deseado con el comando pull. Por ejemplo, para descargar Llama 3.2, ejecuta lo siguiente:

ollama pull llama3.2

Espera a que se complete la descarga; el tiempo puede variar en función del tamaño del archivo del modelo.

Consejo profesional

Si no estás seguro de qué modelo descargar, consulta la biblioteca oficial de modelos de Ollama. Proporciona detalles importantes sobre cada modelo, incluidas las opciones de personalización, los idiomas compatibles y los casos de uso recomendados.

Después de extraer el modelo, puedes ejecutarlo con un comando predefinido como este:

ollama run llama3.2 "Explain the basics of machine learning."

Este es el resultado esperado:

Terminal que muestra la respuesta de un modelo Ollama sobre el aprendizaje automático.

Como alternativa, ejecuta el modelo sin una solicitud para iniciar una sesión interactiva:

ollama run llama3.2

En este modo, puedes introducir tus consultas o instrucciones y el modelo generará respuestas. También puedes hacer preguntas de seguimiento para obtener información más detallada o aclarar una respuesta anterior, como por ejemplo:

¿Podría explicar con más detalle cómo se utiliza el aprendizaje automático en el sector sanitario?

Cuando hayas terminado de interactuar con el modelo, escribe:

/bye

Esto cerrará la sesión y te devolverá a la interfaz normal del terminal.

Consejo profesional

Aprende a crear indicaciones de IA efectivas para mejorar tus resultados y tus interacciones con los modelos de Ollama.

Entrenamiento de modelos

Aunque los modelos de código abierto preentrenados, como Llama 3.2, funcionan bien para tareas generales como la generación de contenido, es posible que no siempre satisfagan las necesidades de casos de uso específicos. Para mejorar la precisión de un modelo en un tema concreto, es necesario entrenarlo con datos relevantes.

Sin embargo, ten en cuenta que estos modelos tienen limitaciones de memoria a corto plazo, lo que significa que los datos de entrenamiento solo se conservan durante la conversación activa. 

Cuando salgas de la sesión y comiences una nueva, el modelo no recordará la información con la que lo entrenaste anteriormente.

Para entrenar el modelo, inicia una sesión interactiva. A continuación, inicia el entrenamiento escribiendo un mensaje como:

Hola, quiero que aprendas sobre [tema]. ¿Puedo enseñarte?

El modelo responderá con algo como:

Terminal que muestra la respuesta de un modelo Ollama a una indicación de entrenamiento.

A continuación, puedes proporcionar información básica sobre el tema para ayudar al modelo a comprenderlo:

Terminal que muestra un mensaje para fines de formación.

Para continuar con el entrenamiento y proporcionar más información, pide al modelo que te haga preguntas sobre el tema. Por ejemplo:

¿Puedes hacerme algunas preguntas sobre [tema] para ayudarte a entenderlo mejor?

Una vez que el modelo tenga suficiente contexto sobre el tema, puedes finalizar la formación y comprobar si el modelo ha retenido estos conocimientos.

Terminal que muestra la respuesta de un modelo Ollama tras el entrenamiento.

Solicitar y registrar respuestas en archivos

En Ollama, puedes pedir al modelo que realice tareas utilizando el contenido de un archivo, como resumir texto o analizar información. Esto es especialmente útil para documentos largos, ya que elimina la necesidad de copiar y pegar texto al dar instrucciones al modelo.

Por ejemplo, si tienes un archivo llamado input.txt que contiene la información que deseas resumir, puedes ejecutar lo siguiente:

ollama run llama3.2 "Resuma el contenido de este archivo en 50 palabras." < input.txt

El modelo leerá el contenido del archivo y generará un resumen:

Terminal que muestra la respuesta de un modelo Ollama al resumir un archivo TXT.

Ollama también te permite registrar las respuestas del modelo en un archivo, lo que facilita su revisión o perfeccionamiento posterior. A continuación se muestra un ejemplo de cómo hacer una pregunta al modelo y guardar el resultado en un archivo:

ollama run llama3.2 "Háblame de las energías renovables."> output.txt

Esto guardará la respuesta del modelo en output.txt:

Terminal que muestra el contenido del archivo output.txt utilizando el comando cat de Linux.

Uso avanzado de Ollama en la CLI

Ahora que ya conoces los conceptos básicos, exploremos usos más avanzados de Ollama a través de la CLI.

Creación de modelos personalizados

Al ejecutar Ollama a través de la CLI, puedes crear un modelo personalizado basado en tus necesidades específicas.

Para ello, crea un archivo Modelfile, que es el plano de tu modelo personalizado. El archivo define ajustes clave como el modelo base, los parámetros que se deben ajustar y cómo responderá el modelo a las indicaciones.

Sigue estos pasos para crear un modelo personalizado en Ollama:

1. Crear un nuevo archivo Modelfile

Utiliza un editor de texto como nano para crear un nuevo archivo Modelfile. En este ejemplo, llamaremos al archivo custom-modelfile:

nano custom-modelfile

A continuación, copia y pega esta plantilla básica de archivo Modelfile, que personalizarás en el siguiente paso:

# Use Llama 3.2 as the base model

FROM llama3.2

# Adjust model parameters

PARAMETER temperature 0.7

PARAMETER num_ctx 3072

PARAMETER stop "assistant:"

# Define model behavior

SYSTEM "Eres un experto en cyber seguridad."

# Customize the conversation template

TEMPLATE """{{ if .System }}Advisor: {{ .System }}{{ end }}

Client: {{ .Prompt }}

Advisor: {{ .Response }}"""

2. Personalizar el archivo Modelfile

Estos son los elementos clave que puedes personalizar en el archivo Modelfile:

  • Modelo base (FROM): establece el modelo base para tu instancia personalizada. Puedes elegir entre los modelos disponibles, como Llama 3.2:
FROM llama3.2
  • Parámetros (PARAMETER): controla el comportamiento del modelo, como por ejemplo:
    • Temperatura: ajusta la creatividad del modelo. Los valores más altos, como 1,0, lo hacen más creativo, mientras que los más bajos, como 0,5, lo hacen más específico.
PARAMETER temperature 0.9
  • Ventana de contexto (num_ctx): define la cantidad de texto anterior que el modelo utiliza como contexto.
PARÁMETRO num_ctx 4096
  • Mensaje del sistema (SYSTEM): define cómo debe comportarse el modelo. Por ejemplo, puedes indicarle que actúe como un personaje específico o que evite responder a preguntas irrelevantes:
SYSTEM “Eres un experto en ciberseguridad. Responde solo a preguntas relacionadas con la ciberseguridad. Si te preguntan algo que no esté relacionado, responde con: «Solo respondo preguntas relacionadas con la ciberseguridad».’"
  • Plantilla (TEMPLATE): personaliza cómo estructurar la interacción entre el usuario y el modelo. Por ejemplo:
TEMPLATE """{{ if .System }}<|start|>system

{{ .System }}<|end|>{{ end }}

<|start|>user

{{ .Prompt }}<|end|>

<|start|>assistant

"""

Después de realizar los ajustes necesarios, guarda el archivo y sal de nano pulsando Ctrl + X → Y → Intro.

3. Crear y ejecutar el modelo personalizado

Una vez que tu archivo Modelfile esté listo, utiliza el siguiente comando para crear un modelo basado en el archivo:

ollama create custom-model-name -f ./custom-modelfile

Deberías ver un resultado que indica que el modelo se ha creado correctamente:

Salida del terminal que muestra la creación correcta de un modelo personalizado.

A continuación, ejecútalo como cualquier otro modelo:

ollama run custom-model-name

Esto iniciará el modelo con las personalizaciones que hayas aplicado y podrás interactuar con él:

Terminal que muestra la respuesta de un modelo personalizado a un tema no relacionado.

Puedes modificar y perfeccionar continuamente el archivo Modelfile ajustando los parámetros, editando los mensajes del sistema, añadiendo plantillas más avanzadas o incluso incluyendo tus propios conjuntos de datos. Guarda los cambios y vuelve a ejecutar el modelo para ver los efectos.

Automatización de tareas con scripts

La automatización de tareas repetitivas en Ollama puede ahorrar tiempo y garantizar la coherencia del flujo de trabajo. 

Mediante el uso de scripts bash, puedes ejecutar comandos automáticamente. Por otra parte, con las tareas cron, puedes programar tareas para que se ejecuten en momentos específicos. 

A continuación te explicamos cómo empezar:

Crear y ejecutar scripts bash

Puedes crear un script bash que ejecute los comandos de Ollama. A continuación te explicamos cómo:

  1. Abre un editor de texto y crea un nuevo archivo llamado ollama-script.sh:
nano ollama-script.sh
  1. Añade los comandos de Ollama necesarios dentro del script. Por ejemplo, para ejecutar un modelo y guardar el resultado en un archivo:
#!/bin/bash

# Run the model and save the output to a file

ollama run llama3.2 "¿Cuáles son las últimas tendencias en IA?" > ai-output.txt
  1. Haz que el script sea ejecutable otorgándole los permisos correctos:
chmod +x ollama-script.sh
  1. Ejecuta el script directamente desde el terminal:
./ollama-script.sh

Configurar tareas cron para automatizar tareas

Puedes combinar tu script con una tarea cron para automatizar tareas como la ejecución periódica de modelos. 

A continuación se explica cómo configurar una tarea cron para ejecutar scripts de Ollama automáticamente:

  1. Abre el editor crontab escribiendo:
crontab -e
  1. Añade una línea especificando la programación y el script que deseas ejecutar. Por ejemplo, para ejecutar el script todos los domingos a medianoche:
0 0 * * 0 /path/to/ollama-script.sh
  1. Guarda y sal del editor después de añadir la tarea cron.

Casos de uso habituales de la CLI

A continuación se muestran algunos ejemplos reales del uso de la CLI de Ollama.

Generación de texto

Puedes utilizar modelos preentrenados para crear resúmenes, generar contenido o responder preguntas específicas.

  • Resumir un archivo de texto grande:
ollama run llama3.2 "Resume el siguiente texto:" < long-document.txt
  • Generar contenido como entradas de blog o descripciones de productos:
ollama run llama3.2 "Escribe un artículo breve sobre las ventajas de utilizar la IA en el ámbito sanitario."> article.txt
  • Responder preguntas específicas para ayudar en la investigación:
ollama run llama3.2 "¿Cuáles son las últimas tendencias en IA y cómo afectarán a la asistencia sanitaria?"

Procesamiento, análisis y predicción de datos

Ollama también te permite realizar tareas de procesamiento de datos, como la clasificación de textos, el análisis de opiniones y la predicción.

  • Clasificar texto en sentimiento positivo, negativo o neutro:
ollama run llama3.2 "Analiza el sentimiento de esta reseña de un cliente: «El producto es fantástico, pero la entrega fue lenta».'"
  • Categorizar texto en categorías predefinidas:
ollama run llama3.2 "Clasifica este texto en las siguientes categorías: Noticias, Opinión o Reseña." < textfile.txt
  • Predicción de un resultado basado en los datos proporcionados:
ollama run llama3.2 "Predice la tendencia del precio de las acciones para el próximo mes basándote en los siguientes datos:" < stock-data.txt

Integración con herramientas externas

Otro uso habitual de la CLI de Ollama es combinarla con herramientas externas para automatizar el procesamiento de datos y ampliar las capacidades de otros programas.

  • Integración de Ollama con una API de terceros para recuperar datos, procesarlos y generar resultados:
ollama run llama3.2 "Predice la tendencia del precio de las acciones para el próximo mes basándote en los siguientes datos:" < stock-data.txt
  • Uso de código Python para ejecutar un subproceso con Ollama:
import subprocess

result = subprocess.run(['ollama', 'run', 'llama3.2', 'Dame las últimas tendencias del mercado bursátil.'], capture_output=True)

print(result.stdout.decode())

Conclusión

En este artículo, has aprendido los conceptos básicos del uso de Ollama a través de la CLI, incluyendo la ejecución de comandos, la interacción con modelos y el registro de las respuestas de los modelos en archivos.

Mediante la interfaz de línea de comandos, también puedes realizar tareas más avanzadas, como crear nuevos modelos basados en los existentes, automatizar flujos de trabajo complejos con scripts y tareas cron, e integrar Ollama con herramientas externas.

Te animamos a explorar las funciones de personalización de Ollama para aprovechar todo su potencial y mejorar tus proyectos de IA. 

Si tienes alguna pregunta o deseas compartir tu experiencia con Ollama en la CLI, no dudes en utilizar el cuadro de comentarios que aparece a continuación.

Tutorial de Ollama CLI – Preguntas frecuentes

Esta sección cubre algunas de las preguntas más comunes sobre el uso de Ollama CLI. 

¿Qué puedo hacer con la versión CLI de Ollama?

Con la versión CLI de Ollama, puedes ejecutar modelos, generar texto, realizar tareas de procesamiento de datos como el análisis de sentimientos, automatizar flujos de trabajo con scripts, crear modelos personalizados e integrar Ollama con herramientas externas o API para aplicaciones avanzadas.

¿Cómo instalo modelos para Ollama en la CLI?

Para instalar modelos a través de la CLI, primero asegúrate de haber descargado Ollama en tu sistema. 

A continuación, utiliza el comando ollama pull seguido del nombre del modelo. Por ejemplo, para instalar Llama 3.2, ejecuta ollama pull llama3.2.

¿Puedo utilizar modelos multimodales en la versión CLI?

Aunque técnicamente es posible utilizar modelos multimodales como LlaVa en la CLI de Ollama, no es conveniente porque la CLI está optimizada para tareas basadas en texto. 

Te recomendamos utilizar Ollama con herramientas GUI para realizar tareas relacionadas con imágenes.

Author
El autor

Diego Boada

Diego es comunicador social, especialista en publicidad digital que trabaja constantemente en mejorar sus conocimientos de marketing digital, enfocándose en contenido y SEO. Idiomas, series, libros y cursos en internet son sus hobbies principales, además de los deportes. Este es su perfil de LinkedIn.