For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://docs.nvidia.com/dynamo/llms.txt. For full content including API reference and SDK examples, see https://docs.nvidia.com/dynamo/llms-full.txt.
Вызов инструментов
Dynamo может подключать модели к внешним инструментам и сервисам, разбирая
синтаксис вызова инструментов из сырого вывода модели и представляя его как
совместимые с OpenAI tool_calls в ответе. Вызов инструментов управляется
параметрами запроса tool_choice и tools в API chat completions.
В Dynamo есть два способа разбора вызовов инструментов, в зависимости от того,
находится ли парсер в собственном реестре Dynamo или во frontend движка выше
по стеку (vllm serve, sglang serve или trtllm-serve).
Выберите путь разбора
| Путь | Когда использовать | Страница |
|---|---|---|
| Dynamo | Dynamo поставляет независимый от фреймворка Rust-парсер для формата вызова инструментов модели. Путь по умолчанию. | Разбор вызовов инструментов (Dynamo) |
| Engine Fallback | Используйте реализацию парсера фреймворка (сегодня это vLLM или SGLang; TRTLLM в работе) для предварительной и последующей обработки, включая разбор вызовов инструментов и reasoning, чтобы сохранить поведение фреймворка. | Разбор вызовов инструментов (резервный путь движка) |
Сначала используйте путь Dynamo. Переходите к пути движка только тогда, когда реестр Dynamo не содержит парсер для вашей модели.
Почему Dynamo реализует парсеры вызовов инструментов и reasoning
В vllm serve, sglang serve и trtllm-serve разбор вызовов инструментов и
разбор reasoning выполняются во frontend-сервере движка, причем поведение
между ними имеет тонкие различия. Ради производительности Dynamo управляет
маршрутизацией и токенизацией, передает токены напрямую в каждый LLM-движок и
обходит frontend OpenAI API сервера каждого движка, чтобы избежать
дублирования работы на каждый запрос.
Поэтому Dynamo реализует разбор вызовов инструментов и reasoning во frontend в виде независимого от фреймворка Rust-слоя. Это дает Dynamo один проверенный OpenAI-совместимый контракт для vLLM, SGLang, TRTLLM и других воркеров, при этом сохраняется высококонкурентный и масштабируемый hot path обслуживания без узких мест Python GIL.
Устранение неполадок
Если вызов инструмента возвращается некорректно, добавьте logprobs: true в
один запрос для воспроизведения и поделитесь ответом. См.
Устранение неполадок при вызовах инструментов, чтобы понять, что
собирать и включать в отчет о проблеме.
Дополнительно: structural tags
При необходимости можно включить xgrammar structural tags, чтобы guided decoding на уровне токенов совпадал с форматом вызова инструментов парсера. См. Structural tag (guided decoding for tool calls).
См. также
- Устранение неполадок при вызовах инструментов -- снимайте
сырой вывод модели с
logprobs, чтобы локализовать проблемы с вызовом инструментов. - Reasoning -- отделяет
reasoning_contentот содержимого assistant для моделей chain-of-thought. Некоторым моделям нужно одновременно настроить и парсер вызовов инструментов, и парсер reasoning. - Frontend Configuration Reference -- полный справочник по флагам CLI.
- Structural tag (guided decoding) — необязательные ограничения xgrammar, согласованные с парсерами вызовов инструментов Dynamo.