1.3 KiB
1.3 KiB
Model Router
Цель
Единый интерфейс к разным моделям:
- локальным;
- внешним;
- отключенным;
- vision;
- embedding.
Слоты
weak
strong
vision
embedding
reranker
Provider types
local
external
disabled
Вызов
{
"slot": "weak",
"messages": [],
"tools": [],
"response_format": "json_schema | text",
"task_context": {
"task_id": "task_1",
"node_id": "node_2"
}
}
Ответ
{
"slot": "weak",
"provider": "local",
"model": "qwen-coder-7b",
"status": "success",
"message": {},
"tool_calls": [],
"usage": {
"input_tokens": 100,
"output_tokens": 200,
"cost": 0
},
"error": null
}
Fallback
Алгоритм:
1. вызвать weak;
2. если результат валиден — продолжить;
3. если результат невалиден — retry weak;
4. если strong доступна — вызвать strong;
5. если strong disabled — вернуть partial result и ошибку качества;
6. если external выключен настройкой — не вызывать external.
Важно: external не запрещен в коде. Он включается/выключается настройкой.