Ollama + FAISS based retrieval-augmented generation system that indexes Wikipedia articles on automatic control theory and answers questions in Russian. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
47 lines
1.9 KiB
Markdown
47 lines
1.9 KiB
Markdown
# RAG: Теория автоматического управления
|
|
|
|
Retrieval-Augmented Generation система для ответов на вопросы по теории автоматического управления и электротехнике.
|
|
|
|
## Архитектура
|
|
|
|
```
|
|
data/sources.txt → rag/index.py → rag/store/
|
|
├── faiss.index
|
|
├── chunks.pkl
|
|
└── meta.pkl
|
|
|
|
rag/query.py "вопрос" → FAISS поиск → Ollama generate → ответ
|
|
```
|
|
|
|
## Компоненты
|
|
|
|
- **Ollama** — локальный LLM-сервер (192.168.0.47:11434)
|
|
- Эмбеддинги: `bge-m3`
|
|
- Генерация: `qwen3.5:9b`
|
|
- **FAISS** — векторный индекс для поиска похожих фрагментов
|
|
- **BeautifulSoup** — парсинг веб-страниц
|
|
|
|
## Источники
|
|
|
|
Wikipedia-статьи (RU/EN) по темам: передаточные функции, обратная связь, устойчивость, PID-регулятор, Боде, Найквист, корневой годограф, RLC-цепи, импеданс, резонанс.
|
|
|
|
## Запуск
|
|
|
|
```bash
|
|
source .venv/bin/activate
|
|
|
|
# Индексация (уже выполнена)
|
|
python rag/index.py [--rebuild]
|
|
|
|
# Запрос
|
|
python rag/query.py "Что такое PID-регулятор?"
|
|
```
|
|
|
|
## Переменные окружения
|
|
|
|
| Переменная | По умолчанию | Описание |
|
|
|-------------------|----------------------------|-----------------------|
|
|
| `OLLAMA_HOST` | `http://192.168.0.47:11434`| Адрес Ollama |
|
|
| `EMBED_MODEL` | `bge-m3` | Модель эмбеддингов |
|
|
| `GENERATE_MODEL` | `qwen3.5:9b` | Модель генерации |
|