[RFC]: 在 /inference/v1/generate 上请求文本和重新渲染输出
动机
vLLM中分类的活性路径被渲染出-生成- derender. /交出'将OpenAI请求变为基因请求' (# 36166)。 /inference/v1/generate'在GPU级别运行并返回代号ID(#22817,#24261)。 /v1/chat/complet/deren'和`/v1/complete/deren'将结果回转为OpenAI反应(# 42729)。
在呼叫者已经拥有完整的“GenerateResponse”的批量交通和RL交通中,这很有效。
在预填/解码(P/D)部署中,不及时的敏感交互流量不合适。 流出德伦德(# 47161) 是一个无国籍的每个块翻译, 所以每个SSE块产生成本 客户端 另一次 HTTP 往返:
- 每批1个 " POST " ,客户在每次通话中都回响 " stream state " 。
- 在解析路径上, " 聊天-请求 " 与每一块重排。
- 解析器状态通过重放每个块的所有输出符来重建。 #50550将此作为O(n3)字符在一代人的时间里工作,并推迟缓存.
所有这些都位于TPOT关键路径上,为了分析产出,成本随着反应长度而增加。 基准
在流出式德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能德能 在相匹配的负载下,解剖并解析出德伦德分级成本~9×在流程中CPU,而E2E p50在多键推理输出上上升了15%. 在主服务器上,一个呼叫中的tokens-in / text-out已经有效(/v1/complete'接受prompt'中的代号ID)。 空白是专门用于电线格式为 " Generate Request " 的部署。
** 每一个池都有开关。 解禁已经是每个请求。 ** 其中只有一个是发射时间决定:
今天决定在哪里? |.
| De De De | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |-| | | | | | | | | |-| | | | | | | | “ samplingPrams.dokenize", default default default default" default" " " " ru". Generate Event.sampling-params'是一个完整的Sampling-Params',所以今天在电线上。 |
唯一能使破解看起来像发射水平的是 " 仅取 " 于请求值之上。 用可允许规模 ' 发射的、没有只用 ' 的生成服务器,已经为每项请求运行了快速递减器 ' 。 然后,处理器只用output.token ids'来构建反应,并扔出`output.text'。
** P/D 将请求级别定为:**
- ** 只有终端腿的输出到达客户端。 ** 代理以 “max tokens=1” 运行预填腿,只保留“kv tranch params”。 解码重算最后一个快取符,以抽取第一个输出符本身.
- ** 十进制已经具备了所有破解的需要。 ** " Generate Arequest.token ids " 的 " 十进制 " 具有全部的快感和破解质素。 没有解剖器状态跨越 P-D 边界 。
- ** 国家接受现场请求。 ** . . . . . . .
内容来源: vllm-project/vllm