2025.5.25
要整合这个流式输出中的 content 内容,可以按照以下步骤处理:
方法 1:手动整合
观察所有 content 字段,按顺序拼接后得到完整 JSON:
{
"analysis": "候选人具有五年C++开发经验,精通C++11/14标准、面向对象设计与数据结构算法,熟悉高性能计算、系统编程及底层开发,同时具备Python、C、Shell等语言能力,掌握Git、CMake等开发工具,并熟悉多操作系统和数据库操作。",
"questions": [
{
"question": "在C++11中,以下哪个关键字用于管理动态内存分配,避免内存泄漏?",
"options": ["A. auto", "B. register", "C. new", "D. smart_ptr"],
"answer": "D"
},
{
"question": "关于C++中的虚函数,下列说法正确的是?",
"options": ["A. 虚函数不能被声明为const", "B. 虚函数必须在派生类中重写", "C. 虚函数的调用依赖于对象的实际类型", "D. 虚函数不能是静态成员函数"],
"answer": "C"
}
]
}
方法 2:编程整合(Python示例)
import json
stream_data = [
{"code":0,"message":"Success","choices":[{"delta":{"content":"``"}}]},
{"code":0,"message":"Success","choices":[{"delta":{"content":"`json\n"}}]},
# 其他所有流式数据片段...
]
content_parts = []
for chunk in stream_data:
if "choices" in chunk and len(chunk["choices"]) > 0:
delta = chunk["choices"][0].get("delta", {})
if "content" in delta:
content_parts.append(delta["content"])
full_content = "".join(content_parts)
print(full_content) # 输出完整内容
关键点说明
- 所有
content按顺序拼接后即为完整 JSON(注意首尾的 ```json 标记) - 实际开发中建议:
- 检查数据完整性(如开头/结尾标记)
- 处理可能的传输中断情况
- 用
json.loads()验证最终结果有效性
最终有效数据
去掉首尾的 ```json 标记后,实际有效数据为:
{
"analysis": "候选人具有五年C++开发经验...",
"questions": [
{
"question": "在C++11中...",
"options": [...],
"answer": "D"
},
{
"question": "关于C++中的虚函数...",
"options": [...],
"answer": "C"
}
]
}

浙公网安备 33010602011771号