73c1ab9352919f13a44d7546e7f97b005982dcc8
RAG-агент с ChromaDB и веб-поиском
AI-агент с локальным RAG-хранилищем на ChromaDB и веб-поиском через Tavily.
Требования
- Python 3.10+
- Ollama (должен быть запущен локально)
- Модели Ollama:
llama3иnomic-embed-text
Установка
1. Установка моделей Ollama
ollama pull llama3
ollama pull nomic-embed-text
2. Установка зависимостей
pip install -r requirements.txt
3. Настройка переменных окружения
Создайте файл .env с вашим Tavily API ключом:
TAVILY_API_KEY=your_tavily_api_key_here
Запуск
1. Инициализация базы знаний
Поместите тестовые документы (.txt или .md) в папку documents/ и запустите:
python -c "from vectorstore import create_vectorstore, load_documents; load_documents('./documents', create_vectorstore())"
Или просто запустите main.py - документы загрузятся автоматически при первом запуске.
2. Запуск агента
python main.py
Использование
Запрос: Какие последние новости про AI-агентов?
[Web Search] ...
Источник: tavily
Запрос: Что в наших конспектах про LangGraph?
[Local KB] ...
Источник: chromadb
Для выхода введите exit.
Структура проекта
main.py— CLI чат-циклagent.py— создание агента с инструментамиtools.py— инструменты поиска (local KB + web)vectorstore.py— работа с ChromaDBrequirements.txt— зависимостиdocuments/— папка с тестовыми документами
Компоненты
| Компонент | Описание |
|---|---|
| ChromaDB | Векторное хранилище с эмбеддингами Ollama |
| search_local_kb | Семантический поиск в локальной базе |
| web_search | Поиск через Tavily API |
| create_agent | Агент с автоматическим выбором источника |
Description
Languages
Python
100%