Files
2026-06-05 11:49:39 +00:00

46 lines
1.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# FAQ Bot ChromaDB + MCPstyle 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 MCPstyle 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
```bash
# Pull the required Ollama model
ollama pull nomic-embed-text
ollama pull llama3
# Install dependencies
pip install -r requirements.txt
```
## Running the bot
```bash
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 + MCPstyle)
├── main.py # Entry point & CLI
├── requirements.txt
└── README.md
```
## License
MIT