vLLM 支持使用 outlines
、lm-format-enforcer
或 xgrammar
作为引导解码的后端来生成结构化输出。本文档展示了一些可用于生成结构化输出的不同选项示例。
一、在线服务(OpenAI API)
你可以使用 OpenAI 的 Completions 和 Chat API 生成结构化输出。
支持以下参数,这些参数必须作为额外参数添加:
guided_choice
:输出将完全匹配其中一个选项。guided_regex
:输出将遵循正则表达式模式。guided_json
:输出将遵循 JSON 模式。guided_grammar
:输出将遵循上下文无关语法。guided_whitespace_pattern
:用于覆盖默认的空白字符模式(适用于引导 JSON 解码)。guided_decoding_backend
:用于选择引导解码后端。可以在后端名称后使用冒号分隔的列表提供特定于后端的选项。例如,"xgrammar:no-fallback"
将不允许 vLLM 在出错时回退到其他后端。</