56 lines
2.0 KiB
Markdown
56 lines
2.0 KiB
Markdown
# RAG Knowledge Base Agent
|
|
|
|
Локальный интеллектуальный ассистент с RAG‑памятью на базе Qdrant и Ollama.
|
|
|
|
## Что делает
|
|
|
|
Агент умеет запоминать произвольные текстовые знания (через команду `/add`) и находить релевантную информацию по смысловому поиску (через команду `/search`). Все данные хранятся в локальной векторной базе Qdrant и не покидают ваш компьютер.
|
|
|
|
## Стек
|
|
|
|
| Компонент | Технология |
|
|
|-----------|-----------|
|
|
| LLM | Ollama — llama3 |
|
|
| Эмбеддинги | Ollama — nomic-embed-text |
|
|
| Векторное хранилище | Qdrant |
|
|
| Фреймворк | LangChain + LangGraph |
|
|
|
|
## Установка
|
|
|
|
```bash
|
|
# 1. Установить Python‑зависимости
|
|
pip install -r requirements.txt
|
|
|
|
# 2. Загрузить модели Ollama
|
|
ollama pull llama3
|
|
ollama pull nomic-embed-text
|
|
|
|
# 3. Запустить Qdrant (через Docker)
|
|
docker run -p 6333:6333 qdrant/qdrant
|
|
```
|
|
|
|
## Запуск
|
|
|
|
```bash
|
|
python cli.py
|
|
```
|
|
|
|
## Команды
|
|
|
|
| Команда | Описание |
|
|
|---------|----------|
|
|
| `/add <текст>` | Добавить текст в базу знаний |
|
|
| `/search <запрос>` | Найти релевантные записи по смыслу |
|
|
| `/quit` | Выйти из программы |
|
|
|
|
Любой другой ввод передаётся агенту как обычный вопрос.
|
|
|
|
## Структура проекта
|
|
|
|
```
|
|
agent.py — агент, инструменты, векторное хранилище
|
|
cli.py — интерфейс командной строки
|
|
tools.py — реэкспорт инструментов
|
|
chunker.py — разбивка текстов на чанки
|
|
requirements.txt — зависимости
|
|
``` |