40 lines
2.6 KiB
Markdown
40 lines
2.6 KiB
Markdown
# Сохранение в Qdrant (шаг 7)
|
||
|
||
Сохранение вектора эмбеддинга (шаг 6) и метаданных в коллекцию `chapter_analyses`. Метаданные главы/книги (book_id, chapter_id, chapter_number, chapter_title, book_title, author) берутся из merged JSON — они попадают туда на шаге 5 при мерже с `--input-chapter` (входной JSON этапа 1).
|
||
|
||
## Вход
|
||
|
||
- **merged JSON** (шаг 5): теги, анализ и метаданные главы/книги (book_id, chapter_id, chapter_number, chapter_title, book_title, author). Должны быть подмешаны при мерже через `--input-chapter` (вход этапа 1).
|
||
- **Вектор** (шаг 6): файл с JSON-массивом чисел или stdin.
|
||
- Опционально: `--validation-score`.
|
||
|
||
## Выход
|
||
|
||
Одна точка в коллекции Qdrant: id = `chapter_id`, vector = эмбеддинг, payload = bookId, chapterId, chapterNumber, chapterTitle, validationScore, tags, title, author (по схеме ARCHITECTURE_SUMMARY).
|
||
|
||
## Использование
|
||
|
||
Вектор — JSON-массив чисел из шага 6: файл `embedding.json` (Ollama, `run_embed_ollama.py`) или `vector.json` / любой другой файл с массивом, либо stdin.
|
||
|
||
```bash
|
||
# Вектор из файла (merged должен содержать book_id, chapter_id, chapter_number, chapter_title из шага 5 с --input-chapter)
|
||
# Вариант 1: после run_embed_ollama.py (шаг 6 через Ollama)
|
||
python3 save_to_qdrant.py 5_мерж_анализа_и_тегов/merged_with_tags.json 6_генерация_эмбеддингов/embedding.json [--validation-score 0.95]
|
||
|
||
# Вариант 2: вектор в любом файле (например vector.json)
|
||
python3 save_to_qdrant.py merged_with_tags.json vector.json [--validation-score 0.95]
|
||
|
||
# Вектор из stdin (пайплайн с шагом 6 через embed_cli.py)
|
||
python3 6_генерация_эмбеддингов/embed_cli.py merged_with_tags.json model_name \
|
||
| python3 7_сохранение_qdrant/save_to_qdrant.py merged_with_tags.json -
|
||
```
|
||
|
||
## Переменные окружения
|
||
|
||
| Переменная | По умолчанию | Описание |
|
||
|------------|--------------|----------|
|
||
| `QDRANT_URL` | `http://localhost:6333` | URL Qdrant |
|
||
| `QDRANT_COLLECTION_CHAPTER_ANALYSES` | `chapter_analyses` | Имя коллекции |
|
||
|
||
В Docker используйте `QDRANT_URL=http://qdrant:6333`.
|