Files
povtornyy-ekzamen-faq-bot-c…/README.md
T

42 lines
1.4 KiB
Markdown
Raw 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 + MCP-tool
This project implements a simple FAQ bot that uses **ChromaDB** as the sole vector store and a single **Minimal ContextAware Prompt (MCP) tool** for prompt generation.
## Stack
- **ChromaDB** vector database for storing and querying embeddings.
- **MCP-tool** a lightweight function that creates a prompt from a user question.
- **Node.js** runtime environment.
- **readline-sync** simple CLI input.
## How it works
1. **Vector Store**
- `src/vectorStore.js` wraps ChromaDB.
- Documents are embedded using a deterministic 768dimensional vector derived from word hashes.
- The collection is created (or fetched) on startup.
2. **MCP-tool**
- `src/bot.js` contains `generatePrompt` which formats the user question into a prompt.
- The prompt is embedded and queried against the vector store.
3. **Bot Loop**
- `src/index.js` loads a small FAQ dataset, populates the collection, and starts a REPL loop.
- User input is processed, the best matching FAQ answer is returned.
## Running the bot
```bash
npm install
npm start
```
Type a question and press Enter. Type `exit` to quit.
## Notes
- Only **ChromaDB** is used for vector operations; no other vector store libraries are present.
- Only **one MCP-tool** (`generatePrompt`) is integrated.
- The code is fully selfcontained and can be extended with real embeddings or a larger dataset.
---