聊天完成
授权:
请求正文架构: 应用程序/json必修的
必修的 | |
温度(数字)或温度(零)(温度) 我们建议使用0.0到0.7之间的采样温度。较高的值(如0.7)将使输出更加随机,而较低的值(例如0.2)将使其更加集中和确定。我们通常建议更改此或 | |
top_p | 数(顶部P) [ 0 .. 1 ] 违约: 1. Nucleus采样,其中模型考虑令牌的结果 |
最大令牌(整数)或最大令牌(空)(最大代币数) 完成时要生成的最大令牌数。您的提示加的令牌计数 | |
流动 | 布尔值(流动) 违约: 错误的 是否返回部分进度。如果设置,令牌将在可用时作为纯数据服务器端事件发送,流由data:[DONE]消息终止。否则,服务器将保持请求打开,直到超时或完成,响应将包含完整的JSON结果。 |
Stop(字符串)或Stop数组(字符串)(停止) 如果检测到此令牌,则停止生成。或者在提供数组时检测到其中一个令牌 | |
随机种子(整数)或随机种子(空)(随机种子) 用于随机抽样的种子。如果设置,不同的调用将生成确定性结果。 | |
必修的 | 数组 任何(信息) 生成补全的提示,编码为包含角色和内容的字典列表。 |
对象(响应格式) | |
工具数组(对象)或工具(空)(工具) | |
ToolChoice(对象)或ToolChoiceEnum(字符串)(工具选择) 违约: “自动” | |
出席_处罚 | 数(出席处罚) [ -2 .. 2 ] 违约: 0 presence_penalty决定了模型对单词或短语重复的惩罚程度。更高的出席惩罚鼓励模型使用更多种类的单词和短语,使输出更加多样化和创造性。 |
频率惩罚 | 数(频率惩罚) [ -2 .. 2 ] 违约: 0 frequency_penalty根据单词在生成的文本中的频率来惩罚单词的重复。更高的频率惩罚会阻止模型重复输出中已经频繁出现的单词,从而促进多样性并减少重复。 |
N(整数)或N(空)(n) 每个请求返回的完成次数,输入令牌只计费一次。 | |
safe_prompt | 布尔值 违约: 错误的 是否在所有对话前注入安全提示。 |
响应
索取样品
- 有效载荷
{- “模型”:“MIUI小最新”,
- “温度”:1.5,
- “top_p”:1.,
- “max_tokens”:0,
- “流”:错误的,
- “停止”:“字符串”,
- “随机设置”:0,
- “消息”:[
- {
- “角色”:“用户”,
- “内容”:“谁是最好的法国画家?用一句话回答。”
}
], - “response_format”:{
- “类型”:“文本”
}, - “工具”:[
- {
- “类型”:“功能”,
- :{
- “名称”:“字符串”,
- “描述”:"",
- “参数”:{ }
}
}
], - “工具选择”:“自动”,
- “存在_处罚”:0,
- “频率_惩罚”:0,
- n:1.,
- “safe_prompt”:错误的
}
响应样本
- 200
- 422
{- “id”:“cmpl-e5cc70bb28c444948073e77776eb30ef”,
- “对象”:“聊天完成”,
- “模型”:“MIUI小最新”,
- “用法”:{
- “提示标记”:16,
- “completion_tokens”:34,
- “总标记数”:50
}, - “创建”:1702256327,
- “选择”:[
- {
- “索引”:0,
- “消息”:{
- “内容”:“字符串”,
- “工具调用”:[
- {
- “id”:“null”,
- “类型”:“功能”,
- :{
- “名称”:“字符串”,
- “论点”:{ }
}
}
], - “前缀”:错误的,
- “角色”:“助理”
}, - “完成原因”:
}
]
}
Fim完工
FIM完成。
授权:
请求正文架构: 应用程序/json必修的
必修的 | 型号(字符串)或型号(空)(模型) 违约: “代码集-2405” 要使用的模型的ID。目前仅兼容:
|
温度(数字)或温度(零)(温度) 我们建议使用0.0到0.7之间的采样温度。较高的值(如0.7)将使输出更加随机,而较低的值(例如0.2)将使其更加集中和确定。我们通常建议更改此或 | |
top_p | 数(顶部P) [ 0 .. 1 ] 违约: 1. Nucleus采样,其中模型考虑令牌的结果 |
最大令牌(整数)或最大令牌(空)(最大代币数) 完成时要生成的最大令牌数。您的提示加的令牌计数 | |
流动 | 布尔值(流动) 违约: 错误的 是否返回部分进度。如果设置,令牌将在可用时作为纯数据服务器端事件发送,流由data:[DONE]消息终止。否则,服务器将保持请求打开,直到超时或完成,响应将包含完整的JSON结果。 |
Stop(字符串)或Stop数组(字符串)(停止) 如果检测到此令牌,则停止生成。或者在提供数组时检测到其中一个令牌 | |
随机种子(整数)或随机种子(空)(随机种子) 用于随机抽样的种子。如果设置,不同的调用将生成确定性结果。 | |
促使 必修的 | 一串(促使) 要完成的文本/代码。 |
后缀(字符串)或后缀(空)(后缀) 违约: "" 为模型添加更多上下文的可选文本/代码。当给出a | |
最小令牌(整数)或最小令牌(空)(最小代币) 完成时生成的最小令牌数。 |
响应
索取样品
- 有效载荷
{- “模型”:“代码集-2405”,
- “温度”:1.5,
- “top_p”:1.,
- “max_tokens”:0,
- “流”:错误的,
- “停止”:“字符串”,
- “随机设置”:0,
- “提示”:“def”,
- “后缀”:“返回a+b”,
- “min_tokes”:0
}
响应样本
- 200
- 422
{- “id”:“cmpl-e5cc70bb28c444948073e77776eb30ef”,
- “对象”:“聊天完成”,
- “模型”:“最新代码”,
- “用法”:{
- “提示标记”:16,
- “completion_tokens”:34,
- “总标记数”:50
}, - “创建”:1702256327,
- “选择”:[
- {
- “索引”:0,
- “消息”:{
- “内容”:“字符串”,
- “工具调用”:[
- {
- “id”:“null”,
- “类型”:“功能”,
- :{
- “名称”:“字符串”,
- “论点”:{ }
}
}
], - “前缀”:错误的,
- “角色”:“助理”
}, - “完成原因”:
}
]
}
代理完成
授权:
请求正文架构: 应用程序/json必修的
最大令牌(整数)或最大令牌(空)(最大代币数) 完成时要生成的最大令牌数。您的提示加的令牌计数 | |
流动 | 布尔值(流动) 违约: 错误的 是否返回部分进度。如果设置,令牌将在可用时作为纯数据服务器端事件发送,流由data:[DONE]消息终止。否则,服务器将保持请求打开,直到超时或完成,响应将包含完整的JSON结果。 |
Stop(字符串)或Stop数组(字符串)(停止) 如果检测到此令牌,则停止生成。或者在提供数组时检测到其中一个令牌 | |
随机种子(整数)或随机种子(空)(随机种子) 用于随机抽样的种子。如果设置,不同的调用将生成确定性结果。 | |
必修的 | 数组 任何(信息) 生成补全的提示,编码为包含角色和内容的字典列表。 |
对象(响应格式) | |
工具数组(对象)或工具(空)(工具) | |
ToolChoice(对象)或ToolChoiceEnum(字符串)(工具选择) 违约: “自动” | |
出席_处罚 | 数(出席处罚) [ -2 .. 2 ] 违约: 0 presence_penalty决定了模型对单词或短语重复的惩罚程度。更高的出席惩罚鼓励模型使用更多种类的单词和短语,使输出更加多样化和创造性。 |
频率惩罚 | 数(频率惩罚) [ -2 .. 2 ] 违约: 0 frequency_penalty根据单词在生成的文本中的频率来惩罚单词的重复。更高的频率惩罚会阻止模型重复输出中已经频繁出现的单词,从而促进多样性并减少重复。 |
N(整数)或N(空)(n) 每个请求返回的完成次数,输入令牌只计费一次。 | |
agent_id 必修的 | 一串 用于此完成的代理的ID。 |
响应
索取样品
- 有效载荷
{- “max_tokens”:0,
- “流”:错误的,
- “停止”:“字符串”,
- “随机设置”:0,
- “消息”:[
- {
- “角色”:“用户”,
- “内容”:“谁是最好的法国画家?用一句话回答。”
}
], - “response_format”:{
- “类型”:“文本”
}, - “工具”:[
- {
- “类型”:“功能”,
- :{
- “名称”:“字符串”,
- “描述”:"",
- “参数”:{ }
}
}
], - “工具选择”:“自动”,
- “存在_处罚”:0,
- “频率_惩罚”:0,
- n:1.,
- “代理id”:“字符串”
}
响应样本
- 200
- 422
{- “id”:“cmpl-e5cc70bb28c444948073e77776eb30ef”,
- “对象”:“聊天完成”,
- “模型”:“MIUI小最新”,
- “用法”:{
- “提示标记”:16,
- “completion_tokens”:34,
- “总标记数”:50
}, - “创建”:1702256327,
- “选择”:[
- {
- “索引”:0,
- “消息”:{
- “内容”:“字符串”,
- “工具调用”:[
- {
- “id”:“null”,
- “类型”:“功能”,
- :{
- “名称”:“字符串”,
- “论点”:{ }
}
}
], - “前缀”:错误的,
- “角色”:“助理”
}, - “完成原因”:
}
]
}
嵌入件
嵌入件
授权:
请求正文架构: 应用程序/json必修的
必修的 | 输入(字符串)或输入数组(字符串)(输入) 要嵌入的文本。 |
模型 必修的 | 一串(模型) 违约: “MIUI嵌入” 要使用的模型的ID。 |
编码格式(字符串)或编码格式(空)(编码格式) 违约: “浮动” 返回嵌入的格式。 |
响应
索取样品
- 有效载荷
{- “输入”:[
- “嵌入这个句子。”,
- “还有这个。”
], - “模型”:“MIUI嵌入”,
- “encoding_format”:“浮动”
}
响应样本
- 200
- 422
{- “id”:“cmpl-e5cc70bb28c444948073e77776eb30ef”,
- “对象”:“聊天完成”,
- “模型”:“MIUI小最新”,
- “用法”:{
- “提示标记”:16,
- “completion_tokens”:34,
- “总标记数”:50
}, - “数据”:[
- [
- {
- “对象”:“嵌入”,
- :[
- 0.1,
- 0.2,
- 0.3
], - “索引”:0
}, - {
- “对象”:“嵌入”,
- :[
- 0.4,
- 0.5,
- 0.6
], - “索引”:1.
}
]
]
}
上载文件
上传一个可在多个端点间使用的文件。
单个文件的最大大小为512 MB。微调API仅支持.jsonl文件。
如果您需要增加这些存储限制,请联系我们。
授权:
请求正文架构: 多部分/表单数据必修的
目的 | 一串(文件目的) 违约: “微调” 枚举: “微调” “批次” |
文件 必修的 | 一串 <二元的> (文件) 要上载的File对象(不是文件名)。要上传文件并指定自定义文件名,您应该将请求格式化为:
否则,您可以保留原始文件名:
|
响应
响应样本
- 200
{- “id”:“497f6eca-6276-4993-bfeb-53cbbbba6f09”,
- “对象”:“文件”,
- “字节”:13000,
- “created_at”:1716963433,
- “文件名”:“files_upload.json”,
- “目的”:“微调”,
- “样本类型”:“雨前”,
- “num_lines”:0,
- “来源”:“上传”
}
列出文件
返回属于用户组织的文件列表。
授权:
查询 参数
页面 | 整数(页面) 违约: 0 |
页面大小 | 整数(页面大小) 违约: 100 |
样本类型数组(字符串)或样本类型(null)(样品类型) | |
Source数组(字符串)或Source数组(null)(来源) | |
搜索(字符串)或搜索(空)(搜索) | |
FilePurpose(字符串)或null |
响应
响应样本
- 200
{- “数据”:[
- {
- “id”:“497f6eca-6276-4993-bfeb-53cbbbba6f09”,
- “对象”:“文件”,
- “字节”:13000,
- “created_at”:1716963433,
- “文件名”:“files_upload.json”,
- “目的”:“微调”,
- “样本类型”:“雨前”,
- “num_lines”:0,
- “来源”:“上传”
}
], - “对象”:“字符串”,
- “总计”:0
}
获得微调工作
为您的组织和用户获取微调作业列表。
授权:
查询 参数
页面 | 整数(页面) 违约: 0 要返回的结果的页码。 |
页面大小 | 整数(页面大小) 违约: 100 每页要返回的项目数。 |
型号(字符串)或型号(空)(模型) 用于微调以过滤的模型名称。设置后,其他结果不会显示。 | |
创建时间(字符串)或创建时间(null)(创建于) 要筛选的日期/时间。设置后,将不显示以前创建时间的结果。 | |
created_by_me | 布尔值(由我创造) 违约: 错误的 设置时,仅返回API调用程序创建的作业的结果。其他结果未显示。 |
状态(字符串)或状态(空)(地位) 要筛选的当前作业状态。设置后,其他结果不会显示。 | |
Wandb项目(字符串)或Wandb项目(Wandb项目) 要过滤的“权重和偏移”项目。设置后,其他结果不会显示。 | |
Wandb名称(字符串)或Wandb名称(Wandb名称) “权重和偏移”运行名称以进行筛选。设置后,其他结果不会显示。 | |
后缀(字符串)或后缀(空)(后缀) 要筛选的模型后缀。设置后,其他结果不会显示。 |
响应
响应样本
- 200
{- “数据”:[ ],
- “对象”:“列表”,
- “总计”:0
}
创建微调作业
创建一个新的微调作业,它将排队等待处理。
授权:
查询 参数
模拟运行(布尔值)或模拟运行(空)(排练)
|
请求正文架构: 应用程序/json必修的
模型 必修的 | 一串(可微调模型) 枚举: “开放式-7b” “MIUI小最新” “最新代码” “MIUI大最新” “公开的·” 要微调的模型名称。 |
数组 物体(培训文件) 违约: [] | |
验证文件数组(字符串)或验证文件(null)(验证文件) 包含包含验证数据的上传文件的ID的列表。如果您提供了这些文件,这些数据将用于在微调期间定期生成验证指标。这些指标可以在以下网址查看 | |
必修的 | 对象(培训参数In) 微调作业中使用的微调超参数设置。 |
后缀(字符串)或后缀(空)(后缀) 将添加到微调模型名称中的字符串。例如,后缀“my great model”会产生一个模型名称,如下所示 | |
集成数组(任意)或集成(空)(集成) 为您的微调工作启用的集成列表。 | |
数组 任何(存储库) 违约: [] | |
自动启动 | 布尔值(自动启动) 在未来的版本中,此字段将是必需的。 |
响应
索取样品
- 有效载荷
{- “模型”:“开放式-7b”,
- “培训文件”:[ ],
- “验证文件”:[
- “497f6eca-6276-4993-bfeb-53cbbbba6f08”
], - “超参数”:{
- “训练_步骤”:1.,
- “学习_速率”:0.0001,
- “权重_折扣”:0.1,
- “预热_动作”:0.05,
- “时代”:0,
- “fim_ratio”:0.9,
- “seq_len”:100
}, - “后缀”:“字符串”,
- “集成”:[
- {
- “类型”:“魔杖”,
- “项目”:“字符串”,
- “名称”:“字符串”,
- “api_key”:“字符串字符串字符串字符串stringstri”,
- “运行名称”:“字符串”
}
], - “存储库”:[ ],
- “自动启动”:真的
}
响应样本
- 200
{- “id”:“497f6eca-6276-4993-bfeb-53cbbbba6f08”,
- “自动启动”:真的,
- “超参数”:{
- “训练_步骤”:1.,
- “学习_速率”:0.0001,
- “权重_折扣”:0.1,
- “预热_动作”:0.05,
- “时代”:0,
- “fim_ratio”:0.9,
- “seq_len”:100
}, - “模型”:“开放式-7b”,
- “状态”:“排队”,
- “job_type”:“字符串”,
- “created_at”:0,
- “已修改_ at”:0,
- “培训文件”:[
- “497f6eca-6276-4993-bfeb-53cbbbba6f08”
], - “验证文件”:[ ],
- “对象”:“工作”,
- “fine_tuned_model”:“字符串”,
- “后缀”:“字符串”,
- “集成”:[
- {
- “类型”:“魔杖”,
- “项目”:“字符串”,
- “名称”:“字符串”,
- “运行名称”:“字符串”
}
], - “受过训练的人”:0,
- “存储库”:[ ],
- “元数据”:{
- “预期持续时间_秒”:0,
- “成本”:0,
- “成本货币”:“字符串”,
- “train_tokens_per-step”:0,
- “火车票”:0,
- “数据标记”:0,
- “估计启动时间”:0
}
}
响应样本
- 200
{- “id”:“497f6eca-6276-4993-bfeb-53cbbbba6f08”,
- “自动启动”:真的,
- “超参数”:{
- “训练_步骤”:1.,
- “学习_速率”:0.0001,
- “权重_折扣”:0.1,
- “预热_动作”:0.05,
- “时代”:0,
- “fim_ratio”:0.9,
- “seq_len”:100
}, - “模型”:“开放式-7b”,
- “状态”:“排队”,
- “job_type”:“字符串”,
- “created_at”:0,
- “已修改_ at”:0,
- “培训文件”:[
- “497f6eca-6276-4993-bfeb-53cbbbba6f08”
], - “验证文件”:[ ],
- “对象”:“工作”,
- “fine_tuned_model”:“字符串”,
- “后缀”:“字符串”,
- “集成”:[
- {
- “类型”:“魔杖”,
- “项目”:“字符串”,
- “名称”:“字符串”,
- “运行名称”:“字符串”
}
], - “受过训练的人”:0,
- “存储库”:[ ],
- “元数据”:{
- “预期持续时间_秒”:0,
- “成本”:0,
- “成本货币”:“字符串”,
- “train_tokens_per-step”:0,
- “火车票”:0,
- “数据标记”:0,
- “估计启动时间”:0
}, - “事件”:[ ],
- “检查点”:[ ]
}
响应样本
- 200
{- “id”:“497f6eca-6276-4993-bfeb-53cbbbba6f08”,
- “自动启动”:真的,
- “超参数”:{
- “训练_步骤”:1.,
- “学习_速率”:0.0001,
- “权重_折扣”:0.1,
- “预热_动作”:0.05,
- “时代”:0,
- “fim_ratio”:0.9,
- “seq_len”:100
}, - “模型”:“开放式-7b”,
- “状态”:“排队”,
- “job_type”:“字符串”,
- “created_at”:0,
- “已修改_ at”:0,
- “培训文件”:[
- “497f6eca-6276-4993-bfeb-53cbbbba6f08”
], - “验证文件”:[ ],
- “对象”:“工作”,
- “fine_tuned_model”:“字符串”,
- “后缀”:“字符串”,
- “集成”:[
- {
- “类型”:“魔杖”,
- “项目”:“字符串”,
- “名称”:“字符串”,
- “运行名称”:“字符串”
}
], - “受过训练的人”:0,
- “存储库”:[ ],
- “元数据”:{
- “预期持续时间_秒”:0,
- “成本”:0,
- “成本货币”:“字符串”,
- “train_tokens_per-step”:0,
- “火车票”:0,
- “数据标记”:0,
- “估计启动时间”:0
}, - “事件”:[ ],
- “检查点”:[ ]
}
响应样本
- 200
{- “id”:“497f6eca-6276-4993-bfeb-53cbbbba6f08”,
- “自动启动”:真的,
- “超参数”:{
- “训练_步骤”:1.,
- “学习_速率”:0.0001,
- “权重_折扣”:0.1,
- “预热_动作”:0.05,
- “时代”:0,
- “fim_ratio”:0.9,
- “seq_len”:100
}, - “模型”:“开放式-7b”,
- “状态”:“排队”,
- “job_type”:“字符串”,
- “created_at”:0,
- “已修改_ at”:0,
- “培训文件”:[
- “497f6eca-6276-4993-bfeb-53cbbbba6f08”
], - “验证文件”:[ ],
- “对象”:“工作”,
- “fine_tuned_model”:“字符串”,
- “后缀”:“字符串”,
- “集成”:[
- {
- “类型”:“魔杖”,
- “项目”:“字符串”,
- “名称”:“字符串”,
- “运行名称”:“字符串”
}
], - “受过训练的人”:0,
- “存储库”:[ ],
- “元数据”:{
- “预期持续时间_秒”:0,
- “成本”:0,
- “成本货币”:“字符串”,
- “train_tokens_per-step”:0,
- “火车票”:0,
- “数据标记”:0,
- “估计启动时间”:0
}, - “事件”:[ ],
- “检查点”:[ ]
}
检索模型
检索模型信息。
授权:
路径 参数
model_id 必修的 | 一串(型号Id) 例子: 英国《金融时报》:开放大街-7b:587a6b29:20240514:7e773925 要检索的模型的ID。 |
响应
响应样本
- 200
- 422
{- “id”:“字符串”,
- “对象”:,
- “创建”:0,
- “所有者_由”:“米斯特拉伊”,
- “能力”:{
- “completion_chat”:真的,
- “completion_fim”:错误的,
- “功能呼叫”:真的,
- “微调”:错误的,
- “愿景”:错误的
}, - “名称”:“字符串”,
- “描述”:“字符串”,
- “max_context_length”:32768,
- “别名”:[ ],
- “弃用”:“2019年8月24日14:15:22Z”,
- “默认模式温度”:0,
- “类型”:“基地”
}
更新微调模型
更新模型名称或描述。
授权:
路径 参数
model_id 必修的 | 一串(型号Id) 例子: 英国《金融时报》:开放大街-7b:587a6b29:20240514:7e773925 要更新的模型的ID。 |
请求正文架构: 应用程序/json必修的
名称(字符串)或名称(空)(名称) | |
描述(字符串)或描述(空)(描述) |
响应
索取样品
- 有效载荷
{- “名称”:“字符串”,
- “描述”:“字符串”
}
响应样本
- 200
{- “id”:“字符串”,
- “对象”:,
- “创建”:0,
- “所有者_由”:“字符串”,
- “根”:“字符串”,
- “已存档”:真的,
- “名称”:“字符串”,
- “描述”:“字符串”,
- “能力”:{
- “completion_chat”:真的,
- “completion_fim”:错误的,
- “功能呼叫”:错误的,
- “微调”:错误的
}, - “max_context_length”:32768,
- “别名”:[ ],
- :“4bbaedb0-902b-4b27-8218-8f40d3470a54”
}
创建批处理作业
创建一个新的批处理作业,它将排队等待处理。
授权:
请求正文架构: 应用程序/json必修的
输入文件 必修的 | 数组 串 <uuid> (输入文件)[项目<uuid>] |
端点 必修的 | 一串(ApiEndpoint) 枚举: “/v1/聊天/补全” “/v1/嵌入” “/v1/fim/完井” “/v1/调节” |
模型 必修的 | 一串(模型) |
元数据(对象)或元数据(null)(元数据) | |
超时_小时 | 整数(超时小时数) 违约: 24 |
响应
索取样品
- 有效载荷
{- “输入文件”:[
- “497f6eca-6276-4993-bfeb-53cbbbba6f08”
], - “端点”:“/v1/聊天/补全”,
- “模型”:“字符串”,
- “元数据”:{
- “财产1”:“字符串”,
- “财产2”:“字符串”
}, - “超时_小时”:24
}
响应样本
- 200
{- “id”:“字符串”,
- “对象”:“批次”,
- “输入文件”:[
- “497f6eca-6276-4993-bfeb-53cbbbba6f08”
], - “元数据”:{ },
- “端点”:“字符串”,
- “模型”:“字符串”,
- “输出文件”:“c7c9cb17-f818-4ee3-85de-0d2f8954882c”,
- “错误文件”:“6b79e6a4-c3a-4da1-8fb4-9e2520d26bfa”,
- “错误”:[
- {
- “消息”:“字符串”,
- “计数”:1.
}
], - “状态”:“排队”,
- “created_at”:0,
- “总请求数”:0,
- “已完成请求”:0,
- “成功的请求”:0,
- “失败的请求”:0,
- “started_at”:0,
- “已完成_ at”:0
}
响应样本
- 200
{- “id”:“字符串”,
- “对象”:“批次”,
- “输入文件”:[
- “497f6eca-6276-4993-bfeb-53cbbbba6f08”
], - “元数据”:{ },
- “端点”:“字符串”,
- “模型”:“字符串”,
- “输出文件”:“c7c9cb17-f818-4ee3-85de-0d2f8954882c”,
- “错误文件”:“6b79e6a4-c3a-4da1-8fb4-9e2520d26bfa”,
- “错误”:[
- {
- “消息”:“字符串”,
- “计数”:1.
}
], - “状态”:“排队”,
- “created_at”:0,
- “总请求数”:0,
- “已完成请求”:0,
- “成功的请求”:0,
- “失败的请求”:0,
- “started_at”:0,
- “已完成_ at”:0
}