明确了swarm分配方式的局限性
This commit is contained in:
@@ -83,4 +83,50 @@ def search_from_oqmd_by_composition(composition: str) -> str:
|
||||
response.raise_for_status()
|
||||
return str(response.json()['data'])
|
||||
except requests.exceptions.RequestException as e:
|
||||
return f"Error: {str(e)}"
|
||||
return f"Error: {str(e)}"
|
||||
|
||||
|
||||
def scheme_convert_to_json():
|
||||
return """
|
||||
转换合成方案时,必须严格遵守如下预定义的JSON格式,每个JSON结构的字段必须填充完整,即使有些字段留空:
|
||||
```json
|
||||
{
|
||||
"workflow": [
|
||||
{
|
||||
"step_id": <step_number>,
|
||||
"description": "<brief_description>",
|
||||
"actions": [
|
||||
{
|
||||
"action_id": <action_number>,
|
||||
"action_type": "<action_type>",
|
||||
"materials": [{"name": "<material_name>", "amount": <amount>, "unit": "<unit>"}],
|
||||
"containers": [{"type": "<container_type>", "capacity": "<capacity>", "unit": "<unit>", "additional_parameters": {"material_of_construction": "<material_type>", "shape": "<shape>"}}],
|
||||
"equipment": [{"name": "<equipment_name>", "parameters": {"<param_name>": <param_value>, "<param_name>": <param_value>}}],
|
||||
"output": "<action_output>"
|
||||
}
|
||||
],
|
||||
"dependencies": ["<previous_step_ids>"],
|
||||
"step_output": "<step_output_identifier>"
|
||||
}
|
||||
...
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### JSON结构字段说明
|
||||
1. workflow 类型: 数组; 说明: 包含所有步骤的列表; 限制: 每个步骤都是一个对象,且顺序重要。
|
||||
2. step_id 类型: 整数; 说明: 步骤的唯一标识符,用于区分不同的步骤; 限制: 必须唯一,不能重复。
|
||||
3. description 类型: 字符串; 说明: 对步骤的简要描述,说明步骤的目的或内容。限制: 描述应清晰简洁,避免冗长。
|
||||
4. actions 类型: 数组; 说明: 包含该步骤中所有动作的列表。限制: 每个动作都是一个对象,且顺序可能影响执行顺序。
|
||||
5. action_id 类型: 字符串; 说明: 动作的唯一标识符,用于区分不同的动作。限制: 在同一步骤内必须唯一。
|
||||
6. action_type 类型: 字符串; 说明: 动作的类型,例如 "add_material", "ultrasonicate", "centrifuge"。限制: 必须是预定义的类型之一。
|
||||
7. materials 类型: 数组; 说明: 使用的材料列表,每个材料包含名称、数量和单位。限制: 每个材料对象必须包含 "name", "amount", 和 "unit" 字段。
|
||||
8. containers 类型: 数组; 说明: 使用的容器列表,每个容器包含类型、容量、单位和附加参数。限制: 每个容器对象必须包含 "type", "capacity", 和 "unit" 字段,"additional_parameters" 为可选。
|
||||
9. equipment 类型: 数组; 说明: 使用的设备列表,每个设备包含名称和参数。限制: 每个设备对象必须包含 "name" 字段,"parameters" 为可选,根据设备需要填充。
|
||||
10. output 类型: 字符串; 说明: 动作的输出标识符,用于后续步骤的输入。限制: 标识符应唯一且有意义。
|
||||
11. dependencies 类型: 数组; 说明: 依赖的前一步骤的 "step_id" 列表。限制: 每个依赖项必须是有效的 "step_id"。
|
||||
12. step_output 类型: 字符串; 说明: 步骤的输出标识符,用于后续步骤的输入。限制: 标识符应唯一且有意义。
|
||||
"""
|
||||
|
||||
def default_func():
|
||||
return "Approved. Proceed as planned!"
|
||||
Reference in New Issue
Block a user