Добавить README.md
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
# RAG-Agent — AI-агент с локальной базой знаний
|
||||
|
||||
## Стек
|
||||
- **Python 3.10+**
|
||||
- **Qdrant** — векторная база данных
|
||||
- **Ollama** — локальные LLM и эмбеддинги (`llama3`, `nomic-embed-text`)
|
||||
- **LangChain / LangGraph** — агент с инструментами
|
||||
|
||||
## Быстрый старт
|
||||
|
||||
### 1. Установка зависимостей
|
||||
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### 2. Запуск Ollama и загрузка моделей
|
||||
|
||||
```bash
|
||||
ollama pull llama3
|
||||
ollama pull nomic-embed-text
|
||||
```
|
||||
|
||||
### 3. Запуск Qdrant (Docker)
|
||||
|
||||
```bash
|
||||
docker run -d -p 6333:6333 -p 6334:6334 \
|
||||
-v qdrant_storage:/qdrant/storage \
|
||||
qdrant/qdrant
|
||||
```
|
||||
|
||||
### 4. Инициализация базы знаний из директории
|
||||
|
||||
```bash
|
||||
# Поместите .txt / .md файлы в папку docs/
|
||||
python init_knowledge_base.py ./docs
|
||||
```
|
||||
|
||||
### 5. Запуск интерактивного клиента
|
||||
|
||||
```bash
|
||||
python client.py
|
||||
```
|
||||
|
||||
## Команды в клиенте
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `/add <текст>` | Добавить текст в базу знаний |
|
||||
| `/add-file <путь>` | Загрузить файл в базу знаний |
|
||||
| `/search <запрос>` | Прямой семантический поиск (без агента) |
|
||||
| `/quit` | Выйти |
|
||||
| `<любой текст>` | Отправить запрос агенту |
|
||||
|
||||
## Архитектура
|
||||
|
||||
```
|
||||
client.py ← интерактивный CLI-клиент
|
||||
│
|
||||
├── agent.py ← create_react_agent (llama3 + RAG-инструменты)
|
||||
│ └── tools.py ← @tool: search_knowledge_base, add_to_knowledge_base
|
||||
│
|
||||
└── vector_store.py ← Qdrant + OllamaEmbeddings + RecursiveCharacterTextSplitter
|
||||
|
||||
init_knowledge_base.py ← загрузка документов из директории
|
||||
```
|
||||
Reference in New Issue
Block a user