0cbd5339117c45bcb026bf6a359d48b3bc437997
FAQ Bot – ChromaDB + MCP‑style Tool
This repository implements a small FAQ bot that answers questions about a course. The bot uses:
- ChromaDB (via
langchain_chroma) for local semantic search over markdown notes. - Ollama embeddings (
nomic-embed-text) and a local LLM (llama3). - A single MCP‑style tool that mimics a metadata service.
- A LangChain agent that routes queries to the correct tool and tags the answer with a source.
The bot is launched from the command line and offers three preset questions (two for the FAQ store, one for metadata) as well as an interactive mode.
Setup
# Pull the required Ollama model
ollama pull nomic-embed-text
ollama pull llama3
# Install dependencies
pip install -r requirements.txt
Running the bot
python main.py
You will see three preset questions. Type the number or a custom question and press Enter. Type /quit to exit.
Project structure
├── data/ # Markdown FAQ files and static metadata JSON
├── config.py # Configuration constants
├── chunker.py # Text chunking helper
├── vector_store.py # Chroma store and search tool
├── tools.py # LangChain tools (search + MCP‑style)
├── main.py # Entry point & CLI
├── requirements.txt
└── README.md
License
MIT
Description
Languages
Python
100%