08 May 2024

Tutorial CrewAI: Crea Agentes Autónomos con IA

0. INTRODUCCIÓN

 

INTRODUCCIÓN A LOS AGENTES

Los agentes de IA son sistemas informáticos que toman decisiones basadas en datos y modelos matemáticos, y utilizan aprendizaje automático.

 

INTRODUCCIÓN A CREWAI

CrewAI es una plataforma que facilita la colaboración entre agentes de inteligencia artificial para abordar tareas complejas.

  • Colaboración

  • Integración

  • Automatización

  • Innovación

 

INTRODUCCIÓN A WSL

WSL (Windows Subsystem for Linux) permite ejecutar Linux en Windows sin máquinas virtuales, optimizando compatibilidad y eficiencia. Pero sin el apartado gráfico. Lo necesitaremos para usar CrewAI.

  • INSTALAR WSL

- Videotutorial per l’apartat 1:

https://www.youtube.com/watch?v=uMZQI6VqYtM 

Habilitar el Subsistema de Windows para Linux (WSL)

  • Abre PowerShell como administrador. Para hacerlo, busca "PowerShell" en el menú de inicio, haz clic derecho sobre "Windows PowerShell" y selecciona "Ejecutar como administrador".

  • En la ventana de PowerShell, ejecuta el siguiente comando para habilitar el Subsistema de Windows para Linux (WSL):

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

  •  
  • Si estás en Windows 10, también necesitarás habilitar la Plataforma de Máquina Virtual ejecutando este comando en la misma ventana de PowerShell:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

  •  

Instalar la Versión de WSL 2 (Opcional pero Recomendado)

  • Descarga e instala el paquete de actualización de WSL 2 desde el sitio web oficial de Microsoft para tu versión de Windows. Solo necesitas hacer esto en Windows 10, ya que Windows 11 viene con WSL 2 por defecto.

  • Abre PowerShell como administrador nuevamente y ejecuta el siguiente comando para establecer WSL 2 como tu versión predeterminada de WSL:

wsl --set-default-version 2

  •  

Instalar Ubuntu desde la Tienda de Aplicaciones de Windows

  • Abre la Tienda de aplicaciones de Windows y busca "Ubuntu". Verás varias versiones de Ubuntu disponibles (como Ubuntu 20.04, Ubuntu 18.04, etc.). Selecciona la versión que prefieras.

  • Haz clic en "Obtener" o "Instalar" para descargar e instalar Ubuntu. Una vez completada la instalación, haz clic en "Iniciar" para abrir Ubuntu.

  • La primera vez que inicies Ubuntu, tardará un poco en configurarse y luego te pedirá que crees un nombre de usuario y una contraseña. Estos serán tus credenciales para acceder a tu entorno de Ubuntu en Windows.

  • CLONAR EL REPOSITORIO

Clonar el repositorio en wsl

Dentro de la versión de ubuntu instalada clonamos el repositorio usando la terminal.

Copia esta linea y pegala a la terminal de ubuntu con click derecho.

git clone https://github.com/joaomdmoura/crewAI-examples.git

Entrar en la carpeta de ejemplos

Nos dirigimos dentro de wsl y usamos el siguiente comando después de clonar el repositorio:

cd crewAI-examples/

Podemos ver todos los ejemplos disponibles con el comando ls:

Elegir ejemplo

Después de entrar en la carpeta de los diversos ejemplos elegimos uno y entramos en su carpeta. En mi caso voy a usar “prep-for-a-meeting”.

cd prep-for-a-meeting/

  • COMPROBAR E INSTALAR LAS BIBLIOTECAS NECESARIAS

Comprobamos en el fichero requirements.txt las bibliotecas necesarias. Lo visualizamos mediante el comando cat requirements.txt

A continuación comprobamos en las bibliotecas que tenemos instaladas si están todas las necesarias. Para listarlas utilitzamos el comando pip freeze:

El listado sale ordenado alfabéticamente. En mi caso me falta langchain-exa:

Lo instalamos mediante el comando pip install langchain-exa:

  • MODIFICAR “.env.example” (OPENAI)

Abrir .env.example con un editor

Dentro de la carpeta del ejemplo elegido abriremos el archivo .env.example con el editor que elijamos. En mi caso voy a usar nano.

nano .env.example

Generar las API_KEY

Primero nos dirigimos a https://platform.openai.com/api-keys con la cuenta de gpt plus. Aquí le damos a create new secret key y la copiamos después de que se genere.

 

Ahora pegamos la Api key generada dentro del archivo que estamos editando en wsl.

 

Seguidamente nos dirigimos a https://dashboard.exa.ai/overview, creamos una cuenta y copiamos la API Key que nos genera automáticamente.

Pegamos la API Key de Exa dentro del archivo que estamos editando.

 

Guardamos los cambios y salimos del editor de texto.

  • EJECUTAR EL EJEMPLO

Ejecutar main.py

Finalmente usamos el siguiente comando dentro del directorio del ejemplo para ejecutar el archivo main.py:

python3 main.py

Depende del ejemplo que usemos tendremos un output distinto. En el caso de prep-for-a-meeting

  • PARA MODIFICAR EL LLM

Los agentes de crewAI utilizan por defecto GPT4 como LLM. Si nos interesa trabajar en local o queremos utilizar un modelo de suscripción gratuita podemos hacerlo con unas pequeñas modificaciones en el código de los agentes.

Abrimos el fichero agents.py con un editor de texto. En este caso utilizamos nano que viene instalado con nuestra version de Ubuntu: nano agents.py

Si queremos utilizar GPT3.5

Añadimos las librerías necesarias:

 

 

En todos y cada uno de los métodos de la clase MeetingPreparationAgent añadimos el siguiente parámetro: llm=ChatOpenAI(model_name="gpt-3.5-turbo", temperature=0.7)

 

Si queremos utilitzar un LLM local

Instalar Ollama

Abrimos la terminal de la distribución de Linux y ejecutamos:

curl https://ollama.ai/install.sh | sh

Ollama Model library

Instalamos alguno de estos modelos para el chatbot-ui en la terminal de la distribución de Linux instalada.

Model

Parameters

Size

Download

Llama 2

7B

3.8GB

ollama run llama2

Mistral

7B

4.1GB

ollama run mistral

Dolphin Phi

2.7B

1.6GB

ollama run dolphin-phi

Phi-2

2.7B

1.7GB

ollama run phi

Añadimos las librerias necesarias al agents.py. En este caso utilizaremos el LLM Ollama:

 

Hay que introducir en el código las instrucciones para que utilitce el LLM que queremos (Ollama) y también escoger un modelo. En nuestro caso utilizaremos Openhermes. En todos y cada uno de los métodos de la clase MeetingPreparationAgent añadimos el siguiente parámetro: llm=Ollama(model="openhermes")

 

CONCLUSIONES

En este tutorial sobre CrewAI aprendemos la accesibilidad y versatilidad de los modelos de lenguaje generativos de tanto Ollama como GPTs. Aprendemos su integración en CrewAI que ayuda y facilita la ejecución de proyectos con varios agentes de manera eficaz. Este tutorial abre nuevas puertas para la innovación en el procesamiento de tareas usando agentes.

 

Dónde estamos

👨‍💻 Somos el spin-off para Empresas de SaturdaysAI

With 💓 from Barcelona

Contacto

Menú

Síguenos

© 2024 SaturdaysAI. All Rights Reserved