Solution published: update README.md

This commit is contained in:
2026-06-16 11:22:54 +00:00
parent 9a71a91c65
commit bc6f88c68d
+26 -23
View File
@@ -1,30 +1,33 @@
# FAQ-бот (ChromaDB + MCP-tool) # FAQбот (ChromaDB + MCPtool)
## Что это ## Что делает
- Загружает локальные `.md` файлы в ChromaDB.
Агент, отвечающий на вопросы по локальным конспектам курса, используя ChromaDB, и при необходимости вызывающий внешний MCP‑подобный инструмент (mock‑сервер). - Предоставляет два инструмента:
1. `search_course_docs` поиск по FAQ.
## Установка 2. `fetch_course_meta` – получение метаданных курса (расписание, преподаватель).
- Агент на основе LangChain‑Agent использует только нужный инструмент и указывает источник ответа.
## Как запустить
```bash ```bash
# Установить зависимости
pip install -r requirements.txt pip install -r requirements.txt
# Подготовить базу FAQ
python -c "from src.utils import load_faq_to_chroma; load_faq_to_chroma()"
# Запустить mock‑сервер метаданных (если нужен HTTP‑tool)
python -m http.server 8000 # или используйте встроенный сервер в src/mcp_tool.py
# Запустить CLI‑бота
python src/agent.py --question "Какой у нас график занятий?"
``` ```
## Запуск ## Тестовые вопросы
1. `Какой у нас график занятий?` – должен использовать `fetch_course_meta`.
2. `Что такое ChromaDB?` – должен использовать `search_course_docs`.
3. `Кто преподаватель?` – должен использовать `fetch_course_meta`.
```bash ## Структура репозитория
python -m src.agent - `data/` исходные `.md` и `course_meta.json`.
``` - `src/` код бота.
- `requirements.txt` зависимости.
## Примеры вопросов
1. **Chroma** `Что такое ChromaDB?`
2. **Chroma** `Как подключить Ollama embeddings?`
3. **MCP** `Какой у нас расписание?`
## Структура
- `data/` Markdown‑файлы FAQ.
- `src/utils.py` – загрузка в Chroma и поиск.
- `src/mcp_tool.py` – mock‑сервер и клиент MCP‑стиля.
- `src/agent.py` основной агент.