1
0

Много мелких доработок

- переименован input_md => data
- добавление инфы о дате, версии и авторе изменений conf-страницы в индекс
- вывод этой инфы в источниках
- вывод статистики последнего ответа
- указание имени коллекции для qdrant
- мелочи по текстовкам
This commit is contained in:
2025-08-29 08:54:43 +08:00
parent 3f2491db27
commit f3672e6ffd
10 changed files with 136 additions and 53 deletions

View File

@@ -37,7 +37,7 @@ RAG (Retrieval-Augmented Generation) — это архитектура, кото
```
rag/
├── input_html/ # Входные файлы HTML, загруженные из Confluence
├── input_md/ # Входные (конвертированные) файлы Markdown
├── data/ # Входные (конвертированные) Markdown и прочие текстовые файлы
├── chats/ # Директория для сохранения чатов
├── download.sh # Скрипт для загрузки страниц из Confluence
├── convert.py # Скрипт конвертации HTML в Markdown
@@ -121,7 +121,7 @@ https://conf.company.ltd/pages/viewpreviousversions.action?pageId=987654321
python3 convert.py
```
В результате все html-файлы будут сохранены в директорию `./input_md/`.
В результате все html-файлы будут сохранены в директорию `./data/`.
Файлы будут названы по заголовкам страниц, внутри также сохранится ссылка на исходную страницу `@@...@@`.
Для получения справки по скрипту выполни команду:
@@ -132,9 +132,9 @@ python3 convert.py --help
### 3. Векторизация (индексирование)
Файлы `./input_md/*.md` должны быть проиндексированы.
Файлы `./data/*` должны быть проиндексированы.
Для того, чтобы проиндексировать Markdown-документы, выполнить команду:
Для того, чтобы проиндексировать документы, выполнить команду:
```bash
python3 vectorize.py
@@ -185,6 +185,9 @@ python3 rag.py --query "твой запрос здесь"
python3 rag.py --help
```
> [!NOTE]
> У скрипта очень довольно аргументов для гибкой настройки.
### Кастомный системный промпт
Если хочется уточнить роль генеративной модели, можно создать файл `sys_prompt.txt` и прописать туда всё необходимое, учитывая следующие правила:
@@ -213,10 +216,15 @@ python3 rag.py --help
Для генерации ответов:
- `qwen2.5:3b` (по умолчанию)
- `qwen3:8b`
- `gemma3n:e2b`
- `phi4-mini:3.8b`
- `qwen2.5:1.5b`
- ...
> [!NOTE]
> Чем меньше млрд параметров (b, billion), тем меньше вероятности получить корректный ответ на не-английском языке.
> Такие модели работают быстро, но качество ответов низкое.
> Чем больше параметров, тем лучше и медленее ответы.
## Дисклеймер