862e6b7b25
Co-authored-by: Cursor <cursoragent@cursor.com>
190 lines
7.5 KiB
YAML
190 lines
7.5 KiB
YAML
# =============================================================================
|
|
# ВКУС — конфигурация подключения к LLM и платформе ИИ Beeline
|
|
# =============================================================================
|
|
# Документ-основание: Start data/Архитектура ассистента.txt (v2.0)
|
|
#
|
|
# Секреты (API-ключ, JWT) не храните в этом файле.
|
|
# Задайте их через переменные окружения или файл .env в корне проекта:
|
|
#
|
|
# VKUS_LLM_API_KEY=your-api-key
|
|
# VKUS_LLM_JWT_TOKEN=your-jwt-token # опционально, если используется Keycloak
|
|
#
|
|
# =============================================================================
|
|
|
|
version: "1.0"
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Общие настройки провайдера
|
|
# -----------------------------------------------------------------------------
|
|
provider:
|
|
# beeline-ai-platform | openai-compatible | mock
|
|
name: beeline-ai-platform
|
|
|
|
# false — ответы из локальной базы знаний (текущий прототип)
|
|
# true — запросы к корпоративной платформе ИИ
|
|
enabled: false
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# API платформы ИИ (единая точка входа, OpenAI-совместимый API)
|
|
# -----------------------------------------------------------------------------
|
|
api:
|
|
# FQDN корпоративного шлюза
|
|
base_url: https://apiai.sibur.local
|
|
|
|
# IP (из архитектуры, для справки / внутренней сети)
|
|
host: 10.204.128.14
|
|
|
|
# Стандарт OpenAI API
|
|
api_version: v1
|
|
|
|
# Таймаут HTTP-запросов, сек
|
|
timeout_seconds: 60
|
|
|
|
# Проверка TLS-сертификата (в dev можно отключить)
|
|
verify_ssl: true
|
|
|
|
# Повтор при временных сбоях
|
|
retry:
|
|
max_attempts: 3
|
|
backoff_seconds: 2
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Аутентификация (JWT + Keycloak, secure-by-default)
|
|
# -----------------------------------------------------------------------------
|
|
auth:
|
|
type: jwt
|
|
|
|
# Имя переменной окружения с API-ключом платформы ИИ
|
|
api_key_env: VKUS_LLM_API_KEY
|
|
|
|
# Имя переменной окружения с JWT (если авторизация через Keycloak)
|
|
jwt_token_env: VKUS_LLM_JWT_TOKEN
|
|
|
|
keycloak:
|
|
enabled: true
|
|
# realm_url: https://keycloak.sibur.local/realms/corporate
|
|
# client_id: vkus-it-assistant
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# LLM — генерация ответов
|
|
# -----------------------------------------------------------------------------
|
|
llm:
|
|
# Основная модель (архитектура v2.0)
|
|
model: gpt-oss-120b
|
|
|
|
# Хост GPU-кластера (справочно)
|
|
host: 10.204.128.13
|
|
|
|
# OpenAI-совместимый endpoint
|
|
chat_completions_path: /v1/chat/completions
|
|
|
|
# Параметры генерации
|
|
parameters:
|
|
temperature: 0.3
|
|
max_tokens: 2048
|
|
top_p: 0.9
|
|
frequency_penalty: 0.0
|
|
presence_penalty: 0.0
|
|
|
|
# Роль system-сообщения в запросе
|
|
system_prompt:
|
|
# Путь относительно корня репозитория
|
|
file: "Start data/Системный промпт - правила общения с пользователем.md"
|
|
# Если file недоступен — краткий fallback
|
|
fallback: |
|
|
Ты — корпоративный ИТ-ассистент портала ВКУС. Помогаешь сотрудникам
|
|
решать рабочие ИТ-задачи. Отвечай на русском, обращайся на «вы».
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Эмбеддинги (RAG-слой, BERT Inference Service)
|
|
# -----------------------------------------------------------------------------
|
|
embeddings:
|
|
enabled: true
|
|
|
|
# Сервис эмбеддингов на GPU-кластере
|
|
host: 10.204.128.13
|
|
service: bert-inference
|
|
|
|
# OpenAI-совместимый endpoint (если проксируется через apiai.sibur.local)
|
|
embeddings_path: /v1/embeddings
|
|
|
|
model: bert
|
|
dimensions: 768
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# RAG — поиск по инструкциям и документам
|
|
# -----------------------------------------------------------------------------
|
|
rag:
|
|
# local — ВРЕМЕННО: RAG внутри backend (для тестирования витрины)
|
|
# external — ЦЕЛЕВОЙ КОНТУР: Docling + BERT + VectorDB на платформе ИИ
|
|
mode: local
|
|
|
|
# --- Временный локальный RAG (в backend, MVP) ---
|
|
local:
|
|
enabled: true
|
|
documents_path: Manuals
|
|
top_k: 5
|
|
min_score: 0.12
|
|
chunk_size: 450
|
|
|
|
# --- Целевой внешний RAG (платформа ИИ Beeline) ---
|
|
external:
|
|
enabled: false
|
|
docling:
|
|
host: 10.204.128.13
|
|
vector_db:
|
|
index_type: hnsw
|
|
top_k: 5
|
|
min_similarity_score: 0.65
|
|
|
|
# Запасной путь при недоступности внешнего ИИ (client_journey.md)
|
|
fallback:
|
|
use_local_index: true
|
|
use_keyword_search: true
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Бизнес-логика ассистента (пороги из клиентского пути)
|
|
# -----------------------------------------------------------------------------
|
|
assistant:
|
|
# Эскалация в ITSM при уверенности ниже порога (%)
|
|
confidence_threshold: 70
|
|
|
|
# Язык ответа по умолчанию
|
|
default_language: ru
|
|
|
|
# Лимит уточняющих вопросов за один шаг диалога
|
|
max_clarification_questions: 1
|
|
|
|
# Таймаут ожидания ответа пользователя, мин (системный промпт)
|
|
user_reply_timeout_minutes: 10
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Поведение при сбоях LLM / RAG
|
|
# -----------------------------------------------------------------------------
|
|
fallback:
|
|
# Локальная база знаний backend (knowledge_base.py)
|
|
use_local_knowledge_base: true
|
|
|
|
# Шаблонный ответ из инструкции без LLM
|
|
use_template_on_llm_failure: true
|
|
|
|
# Логировать ошибки интеграции
|
|
log_failures: true
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Мониторинг (опционально, из архитектуры)
|
|
# -----------------------------------------------------------------------------
|
|
monitoring:
|
|
enabled: false
|
|
# metrics_url: http://victoriametrics.sibur.local
|
|
# logs_url: http://opensearch.sibur.local
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Пример переменных для .env (скопируйте в .env и заполните)
|
|
# -----------------------------------------------------------------------------
|
|
# VKUS_LLM_API_KEY=
|
|
# VKUS_LLM_JWT_TOKEN=
|
|
# VKUS_LLM_BASE_URL=https://apiai.sibur.local
|
|
# VKUS_LLM_MODEL=gpt-oss-120b
|
|
# VKUS_LLM_ENABLED=true
|