Ce référentiel montre comment construire des chatbots avec différents niveaux de capacités de mémoire à l'aide de Langchain, Pinecone et Streamlit. Le projet montre l'évolution d'un chatbot sans état à un avec un stockage de mémoire permanente.
Avant de commencer, assurez-vous d'avoir:
git clone https://github.com/spandan114/building-intelligent-chatbots.git
cd building-intelligent-chatbotsSur Windows:
# Create virtual environment
python -m venv chatbotenv
# Activate virtual environment
chatbotenv S cripts a ctivateSur macOS / Linux:
# Create virtual environment
python -m venv chatbotenv
# Activate virtual environment
source chatbotenv/bin/activatepip install -r requirements.txt Créer un fichier .env dans la racine du projet:
PINECONE_API_KEY = your_pinecone_api_key_here
OPENAI_API_KEY = your_openai_api_key_here
GROQ_API_KEY = your_groq_api_key_herestreamlit run app.py La demande sera disponible sur http://localhost:8501
deactivate building-intelligent-chatbots/
├── bot_with_pinecone_memory.py # Main application with Pinecone
├── bot_without_memory.py # Basic bot implementation
├── bot_with_temporary_memory.py # Bot with session state memory
├── requirements.txt # Project dependencies
├── .env # Environment variables (create this)
└── README.md # This file
Basic Bot ( bot_without_memory.py ):
streamlit run bot_without_memory.py Bot de mémoire temporaire ( bot_with_temporary_memory.py ):
streamlit run bot_with_temporary_memory.py Bot de mémoire permanente ( bot_with_pinecone_memory.py ):
streamlit run bot_with_pinecone_memory.py langchain
langchain-groq
langchain-pinecone
langchain-huggingface
langchain-postgres
langchain-community
langchain-core
streamlit
python-dotenv
pinecone-client
psycopg2-binary
sentence-transformers
openai
tiktoken
Modulenotfounderror :
pip install -r requirements.txtErreurs clés de l'API :
.env existe et contient des clés API validesErreurs de Pinone :
Si vous avez trouvé ce projet utile, envisagez de lui donner une étoile! Il aide les autres à découvrir le projet et nous motive à créer plus de contenu.
Pour les questions et les commentaires, veuillez ouvrir un problème dans le référentiel GitHub.
Codage heureux!