From a2089c70e198ba9f1d6b5fc6f39393493ab4552b Mon Sep 17 00:00:00 2001 From: balabanovan530 <175+balabanovan530@noreply.localhost> Date: Tue, 26 May 2026 13:36:00 +0000 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D1=84=D0=B0=D0=B9=D0=BB=20README.md=20=D1=81=20=D0=BE?= =?UTF-8?q?=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B8=D0=B5=D0=BC=20=D0=BF=D1=80?= =?UTF-8?q?=D0=BE=D0=B5=D0=BA=D1=82=D0=B0=20=D0=B8=20=D0=B8=D0=BD=D1=81?= =?UTF-8?q?=D1=82=D1=80=D1=83=D0=BA=D1=86=D0=B8=D1=8F=D0=BC=D0=B8=20=D0=BF?= =?UTF-8?q?=D0=BE=20=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA=D1=83=20RAG-?= =?UTF-8?q?=D0=B0=D0=B3=D0=B5=D0=BD=D1=82=D0=B0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..029b4e9 --- /dev/null +++ b/README.md @@ -0,0 +1,73 @@ +# 🤖 Агент корпоративной памяти с RAG (RAG Agent) + +Этот проект реализует интеллектуального ассистента, который использует векторную базу знаний Qdrant для извлечения контекстной информации (Retrieval-Augmented Generation, RAG). Все LLM и эмбеддинги обрабатываются локально через Ollama. + +## 🚀 Обзор функционала +Агент способен: +1. **Отвечать на вопросы:** Использовать семантический поиск по базе знаний Qdrant для предоставления точных ответов (RAG). +2. **Индексировать данные:** Получить новые документы от пользователя и добавить их в базу знаний, чтобы агент мог использовать эту информацию в будущем. + +## 🛠️ Требования к окружению +Для работы агента необходимы следующие компоненты: +1. **Python 3.10+** +2. **Ollama:** Локальный сервер для запуска LLM и эмбеддингов. +3. **Qdrant:** Векторная база данных (рекомендуется запуск Docker-контейнера). + +## ⚙️ Установка зависимостей + +### Шаг 1: Запуск Ollama +Установите [Ollama](https://ollama.com/) и убедитесь, что он запущен на `http://localhost:11434`. Затем скачайте необходимые модели через терминал: + +```bash +ollama pull llama3 # Основная модель для генерации ответов +ollama pull nomic-embed-text # Модель эмбеддингов (для векторного поиска) +``` + +### Шаг 2: Запуск Qdrant +Рекомендуется запустить Qdrant в Docker для простоты. + +```bash +docker run -p 6333:6333 qdrant/qdrant +``` +*Убедитесь, что порт `6333` свободен.* + +### Шаг 3: Установка Python зависимостей +Клонируйте репозиторий и установите все необходимые библиотеки. + +```bash +# Предполагая, что вы в корневой папке проекта +pip install -r requirements.txt +``` + +## ▶️ Запуск Агента + +Запустите скрипт `agent.py` из командной строки: + +```bash +python agent.py +``` + +При первом запуске агент автоматически проинициализирует коллекцию в Qdrant и загрузит имитацию начальных данных (Политика отпусков, Оплата труда). + +## 💬 Команды CLI + +Агент работает в интерактивном режиме. Используйте следующие команды: + +1. **Задать вопрос:** Просто введите ваш вопрос. Агент автоматически использует `search_knowledge_base` для поиска и генерации ответа на основе найденного контекста. +2. **Искать информацию по запросу (Явный вызов):** + ``` + /search <ваш запрос> + # Пример: /search условия отпуска + ``` +3. **Добавить новую информацию:** Используйте эту команду, когда вам нужно обучить агента на новом документе или тексте. Контент должен быть заключен в кавычки. + ``` + /add "<Полный текст нового документа>" "<Тема для индексации>" + # Пример: /add "Новый раздел о командировочных расходах..." "Политика командировок" + ``` + +## ⚠️ Важные замечания +* **Конфигурация:** Код предполагает, что Ollama запущен на `http://localhost:11434` и Qdrant — на `localhost:6333`. Измените константы в `agent.py`, если используются другие адреса. +* **Обработка ошибок:** В коде реализована базовая обработка исключений для случаев, когда Ollama или Qdrant недоступны. + +## 📚 Документация +[LangChain Documentation](https://docs.langchain.com/) \ No newline at end of file