Ce projet de bout en bout qui simplifie le cycle de vie des applications Large Language Model (LLM), y compris le développement, la production et le déploiement. Le référentiel contient des dossiers et des fichiers en tant que composants du projet, tels que des agents, des API, des chaînes, des chatbots, GROQ (un langage de requête), des modèles Hugging Face, ObjectBox (une base de données intégrée), des modèles OpenAI et la génération augmentée de récupération (RAG). ). ) modèles. Le projet vise à fournir une solution complète pour travailler avec les LLM, couvrant la gestion des données, le développement de chatbot et l'intégration avec divers outils et frameworks.
Ce projet démontre la création d'un chatbot utilisant des modèles de langage à grande échelle (LLM) payants et open source via Langchain et Ollama. Il couvre l'ensemble du cycle de vie des applications LLM, y compris le développement, la production et le déploiement.
Ouais. Toutes les API sont secrètes, avec un accès utilisateur restreint et un .gitignore anonymisé et une autre couche de sécurité via les environnements secrets Github (Désolé ! Vous devrez utiliser le vôtre !)
conda create -p venv python==3.10 -y
venv S cripts a ctivate
pip install -r requirements.txt
Configurez les clés et paramètres API nécessaires dans le fichier app.py
python app.py
Ouvrez un navigateur Web et accédez à (ou au port progressif attribué sur votre ordinateur). le mien c'est ça :
http://localhost:8502
Nous créons le fichier en appelant les 3 principales fonctions chaînées de notre chatbot de base.
Nous chargeons les exigences pour les modules et les bibliothèques :
Nous exécutons notre app.py
Nous finissons de configurer app.py
et exécutons
Il renvoie la route et ouvre l'hôte dans le navigateur de test
Local URL: http://localhost:8502
Network URL: http://192.168.100.30:8502
Vérifions la page :
Passons en revue le projet dans le framework Langchain :
Examinons la structure de la sortie telle que nous la définissons :
Nous examinons le StrOutputParser en détail :
Nous vous poserons des questions sur « fournir du code Python qui échange deux valeurs » pour évaluer le coût, la tokenisation et le délai afin de résoudre la question :
*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 ( " n Valores intercambiados:" )
print ( "a =" , a )
print ( "b =" , b )
Enfin nous générons une requête commune :
"question": "Quand commencer à brosser les dents des chiots ?"
Nous allons charger Llamama spécifiquement en téléchargeant Llama2 sur notre ordinateur pour l'exécuter depuis mon environnement local
J'ouvre un cmd
ollama run llama2
nous téléchargeons llama2
Llama2
par rapport à celui généré avec gpt3.5 turbo
Le projet comprend une comparaison entre le GPT-3.5-turbo d'OpenAI et le modèle Llama2 exécuté localement :
Nous utilisons Langsmith sur Langchain pour surveiller :
Les contributions pour améliorer le chatbot ou étendre ses capacités sont toujours les bienvenues. Veuillez soumettre des demandes d'extraction ou des problèmes ouverts pour toute amélioration.
#### Voulez-vous apprendre ? envoie-moi un DM !
Ce projet est open source et disponible sous la licence MIT.