Agent Loop, Tool Calling и Мышление
Нативный механизм вызова инструментов позволяет модели обращаться к внешним функциям и API в несколько шагов (run_agent_loop).
Особые Режимы и Возможности
1. Стриминг Мышления (Reasoning Tokens)
Для моделей с поддержкой рассуждений (Qwen / DashScope chat_think_enabled, Ollama think: true) токены мыслей стримятся через StreamChunk.reasoning_delta и отображаются во фронтенде прозрачным блоком в фазе "thinking".
2. Отключение Bubble Mode
При активном вызове инструментов (tool_calling_enabled=True) автоматическое разбитие текста на бабблы отключается — итоговый ответ генерируется единым цельным сообщением.
3. Кэширование Проб (probe_cache.py)
При получении 400 ошибки от модели на отправку схемы или инструментов статус сбоя кэшируется в Redis (struct_mode:{bot_id} и tool_capable:{bot_id}:{model}) на 1 час. Это защищает от циклических падений при запросах к моделям без поддержки вызова инструментов.