Files
fckbot/rag/rag.conf.example
2026-06-30 12:55:21 +00:00

107 lines
4.2 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ============================================================
# core.conf КОНФИГ RAG-СЕРВЕРА
# ============================================================
# Используется ТОЛЬКО rag_server.py.
# Содержит настройки:
# - PostgreSQL (единая БД для всех ботов)
# - Qdrant (единая коллекция)
# - GigaChat API
# - Параметры RAG (top_k, чанкинг, кэширование)
# - HTTP-сервер (хост, порт)
# - Логирование
# ============================================================
# ============================================================
# 1. База данных (PostgreSQL) единая для всех ботов
# ============================================================
database:
host: "192.168.1.100"
port: 5432
user: "rag_user"
password_env: "DB_PASSWORD"
database: "rag_db" # ОДНА БД
ssl: true
ssl_mode: "require"
# ============================================================
# 2. Векторная база Qdrant единая коллекция
# ============================================================
qdrant:
host: "192.168.1.200"
port: 6333
grpc_port: 6334
collection: "fckbot" # ОДНА КОЛЛЕКЦИЯ
vector_size: 1024
distance: "Cosine"
# ============================================================
# 3. GigaChat
# ============================================================
gigachat:
credentials_env: "GIGACHAT_API_KEY"
model_embedding: "Embeddings"
model_generation: "GigaChat-Max"
timeout: 600
temperature: 0.1
# ============================================================
# 4. Эмбеддинги (кэширование)
# ============================================================
embedding:
cache_size: 4096
verify_ssl_certs: false
model: "Embeddings"
timeout: 30
# ============================================================
# 5. Разбиение документов на чанки
# ============================================================
chunking:
enabled: true
chunk_size_tokens: 200
overlap_tokens: 50
strategy: "recursive_split_by_sentences"
approx_chunk_chars: 500
approx_overlap_chars: 100
# ============================================================
# 6. Параметры RAG
# ============================================================
rag:
default_top_k: 30
metrics_top_k: 30
contradiction_top_k: 10
max_context_tokens: 3000 # токенов
reserved_for_answer_tokens: 1000 # резервируем для ответа
# reserved_for_prompt_tokens вычисляется динамически
max_model_tokens: 8192 # лимит модели
reserved_for_overhead_tokens: 200
# ============================================================
# 7. HTTP-сервер
# ============================================================
http_server:
host: "0.0.0.0" # или localhost, если только локально
port: 8080
# ============================================================
# 8. Таймауты HTTP (для запросов к внешним API)
# ============================================================
http:
download_timeout: 30
upload_timeout: 60
# ============================================================
# 9. Логирование
# ============================================================
log_level: "INFO"
# ============================================================
# 10. Иерархическое резюмирование (для сжатия больших документов и истории)
# ============================================================
summarization:
enable_hierarchical_summarization: true # включить/выключить
max_tokens_for_document: 8000 # если документ превышает это число токенов, сжимаем
target_tokens_after_summary: 3000 # целевой размер после сжатия
chunk_size_tokens: 500 # размер блока для резюмирования
max_depth: 2 # максимальная глубина рекурсии