Appearance
Kimi Partial Mode 报错 agent message content is empty
问题
使用 Kimi API 的 Partial Mode("把话塞嘴里"),将 assistant 消息的 content 设置为空字符串时,API 返回 400 错误:
json
{"error":{"message":"Invalid request: agent message content is empty","type":"invalid_request_error"}}错误写法:
python
{"role": "assistant", "name": "", "content": "", "partial": True}解决方案
Partial Mode 中 content 不能为空字符串,必须至少有一个字符作为"前缀"。如果想要模型输出 JSON,应该在 content 里填入 {,让模型假定自己已经输出了这个字符并继续:
python
{"role": "assistant", "name": "", "content": "{", "partial": True}模型的输出结果会从 { 之后继续,实际内容类似 "foo": "bar" },需要手动把前缀拼上:
python
response = client.chat.completions.create(
model="kimi-k2.6",
messages=[
{"role": "user", "content": "返回一个 JSON,包含 name 字段"},
{"role": "assistant", "content": "{", "partial": True}, # 前缀必须非空
],
)
# 拼接前缀
full_json = "{" + response.choices[0].message.content总结:partial: True 的 assistant 消息要求 content 至少有一个字符,空字符串会触发输入校验失败。