This End-to-end project that simplifies the lifecycle of Large Language Model (LLM) applications, including development, productionization, and deployment. The repository contains folders and files as components of the project, such as agents, APIs, chains, chatbots, GROQ (a query language), Hugging Face models, ObjectBox (an embedded database), OpenAI models, and Retrieval-Augmented Generation (RAG) models. The project aims to provide a comprehensive solution for working with LLMs, covering data handling, chatbot development, and integration with various tools and frameworks.
Este proyecto demuestra la creación de un chatbot utilizando tanto modelos de lenguaje de gran escala (LLMs) de pago como de código abierto a través de Langchain y Ollama. Cubre todo el ciclo de vida de las aplicaciones LLM, incluyendo desarrollo, producción y despliegue.
Si. Todas las API están secretas, con acceso de usuario restringido y anonimizadas .gitignore y otra capa de seguridad mediante Github Secret Environments (Lo siento! tendrás que utilizar las tuyas!)
conda create -p venv python==3.10 -y
venvScriptsactivate
pip install -r requirements.txt
Configura las claves de API necesarias y las configuraciones en el archivo app.py
.
python app.py
Abre un navegador web y navega a (o al puerto progresivo asignado en tu computador). el mío eso:
http://localhost:8502
Creamos el archivo llamando las 3 funciones principales encadenadas de nuestro chatbot base.
Cargamos requerimientos de modulos y librerías:
Ejecutamos nuestro app.py
Terminamos de configurar app.py
y corremos
nos devuelve la ruta y abre el host en el navegador de pruebas
Local URL: http://localhost:8502
Network URL: http://192.168.100.30:8502
Revisemos la página:
Revisemos en el project en el framework de Langchain:
observemos la estructura del output según la definimos:
Observamos en detalle el StrOutputParser:
Le consultaremos por “proveer un codigo python que intercambie dos valores” para evaluar costo, tokenizado y timepo de demora para resolver la pregunta:
*proveeme de un código python que swapee 2 valores.*
:
# Definir los dos valores a intercambiar
a = 5
b = 10
print("Valores originales:")
print("a =", a)
print("b =", b)
# Intercambiar los valores
temp = a
a = b
b = temp
print("nValores intercambiados:")
print("a =", a)
print("b =", b)
Por ultimo generamos una consulta común:
“question": "Cuándo comenzar a cepillarle los dientes a los cachorros?”
cargaremos ollama especificamente descargando Llama2 a nuestro computadorp ara correrlo desde mi entorno local
abro un cmd
ollama run llama2
descargamos llama2
Llama2
en comparación con la generada con gpt3.5 turbo
El proyecto incluye una comparación entre el GPT-3.5-turbo de OpenAI y el modelo Llama2 ejecutado localmente:
Utilizamos Langsmith en Langchain para monitorear:
Las contribuciones para mejorar el chatbot o extender sus capacidades son siempre bienvenidas. Por favor, envía solicitudes de extracción o abre problemas para cualquier mejora.
#### Quieres aprender? enviame un DM!
Este proyecto es de código abierto y está disponible bajo la Licencia MIT.