diff --git a/files/bifrost/config.template.json b/files/bifrost/config.template.json index d6a1ec8..c4dd26f 100644 --- a/files/bifrost/config.template.json +++ b/files/bifrost/config.template.json @@ -12,10 +12,9 @@ encryption_key) рендерятся строками из vars/secrets.yml, поэтому готовый config.json — секретный файл (плейбук пишет его на 0600). - Провайдер deepseek заведён как КАСТОМНЫЙ OpenAI-совместимый - (base_provider_type=openai + network_config.base_url) — нативного провайдера - deepseek у Bifrost нет. ВАЖНО: Bifrost сам дописывает к base_url путь - /v1/chat/completions, поэтому base_url задаём БЕЗ хвостового /v1. + DeepSeek с v1.6.3 — НАТИВНЫЙ провайдер Bifrost (dedicated request handling, + thinking-mode gating, корректные reasoning-поля для v4-моделей — issue #3139): + не нужны ни custom_provider_config, ни base_url (дефолт api.deepseek.com). Роутинг — декларативно через governance.routing_rules (требует включённого config_store). tududi ходит на drop-in эндпоинт /openai и шлёт ЗАХАРДКОЖЕННОЕ @@ -35,11 +34,7 @@ "keys": [ { "name": "deepseek-primary", "value": {{ bifrost_deepseek_api_key | to_json }}, "models": ["*"], "weight": 1.0 } ], - "network_config": { "base_url": "https://api.deepseek.com", "max_retries": 2 }, - "custom_provider_config": { - "base_provider_type": "openai", - "allowed_requests": { "chat_completion": true, "chat_completion_stream": true } - } + "network_config": { "max_retries": 2 } } }, "config_store": { diff --git a/files/bifrost/docker-compose.template.yml b/files/bifrost/docker-compose.template.yml index be96561..5020300 100644 --- a/files/bifrost/docker-compose.template.yml +++ b/files/bifrost/docker-compose.template.yml @@ -15,7 +15,7 @@ services: bifrost_app: - image: maximhq/bifrost:v1.6.2 # проверь актуальный стабильный тег в releases + image: maximhq/bifrost:v1.6.3 # проверь актуальный стабильный тег в releases container_name: bifrost_app restart: unless-stopped user: "{{ owner_create_result.uid }}:{{ owner_create_result.group }}"