Ejecuta modelos LLM de forma local

Luis Ch febrero 05, 2025 #llm #ai #privacidad

Intro

En esta ocasión vamos a ver como ejecutar modelos LLM[1] de forma local. Para ello vamos a usar Ollama[2], una herramienta que permite ejecutar modelos LLM de forma local y Docker, para ejecutar Ollama en un contenedor.

Si aún no has interactuado con modelos de inteligencia artificial, puedes hacerlo de forma anónima desde el sitio web de DuckDuckGo[3].

DuckDuckGo AI Chat
DuckDuckGo AI Chat

Por qué de forma local?

Esta es la forma en la que normalmente uso modelos de IA como ChatGPT[4], ya que me proporciona algunas ventajas. La primera es que suele funcionar sin conexion a internet, con sus limites pero funciona. Por otro lado, debido a mi ubicación, no tengo acceso a los servicios de OpenAI[5], por lo que no puedo usar ChatGPT. Aún teniendo las credenciales necesitaría conectarme a una VPN[6] para poder acceder, lo cual agrega complejidad a la hora de usar el servicio. Y por último, me ofrece privacidad ya que mis consultas se procesan localmente y no en la máquina de terceros.

Configuramos Ollama

Para este ejemplo necesitaremos tener instalado Docker o Podman. Dependiendo de tu sistema operativo, los pasos pueden variar. Estos son los pasos para hacerlo desde la terminal de Linux.

1. Descargar la imagen de docker para Ollama

La imagen de docker la podemos encontrar desde su blog. Y la descargamos con el siguiente comando:

docker pull ollama/ollama

2. Crear contenedor a partir de la imagen de docker

De acuerdo a la documentación, se puede crear el contenedor con el siguiente comando:

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

3. Ejecutar ollama desde el contenedor

Primero ejecutamos bash dentro del contenedor, de esta forma podremos acceder a sus recursos y el que necesitamos especificamente es ollama para descargar los modelos.

sudo docker exec -it ollama bash

4. Descargar modelos desde ollama

Desde el sitio web oficial podemos ver el listado de modelos, elegimos uno y ejecutamos el siguiente comando dentro del contenedor. Para este ejemplo vamos a descargar llama3.2:3b.

ollama pull llama3.2:3b

Una vez completada la descarga podemos acceder al modelo desde una interfaz, que debemos crear y configurar aparte, o desde la misma terminal, como podemos ver a continuación.

root@f5ed90aecd2b:/# ollama run llama3.2:3b
>>> hola
Hola! ¿En qué puedo ayudarte hoy?

>>> 

Configuramos interfaz web

Para este ejemplo vamos a configurar una interfaz web (Web UI) para interactuar con los modelos que hemos instalado.

1. Descargar la imagen de docker para Open Web UI

Descargamos la imagen de open-webui y creamos el contededor, con el siguiente comando:

docker run -d --network=host -v open-webui:/app/backend/data -e PORT=3000 -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main

2. Accede desde el navegador y crea un usuario

Luego abrimos el navegador y accedemos a localhost:3000. Veremos un mensaje de bienvenida con instrucciones para crea nuestro primer usuario.

3. Selecciona un modelo

Y por último, llegaremos a esta interfaz, donde podremos elegir entre los modelos que hemos descargado y comenzar a interactuar con ellos.

Ollama desde Open WebUI
Ollama desde Open WebUI


  1. Qué es un LLM?

  2. Sitio web oficial de Ollama

  3. DuckDuckGo Chat y Anuncio oficial

  4. Sitio web oficial de ChatGPT

  5. Sitio web oficial de OpenAI

  6. Qué es una VPN?