10.4 QSCI
QSCI 函数用于执行 QSCI(Selected Configuration Interaction)计算,以获取分子体系的基态能量。该函数通过对量子采样得到的比特串进行筛选和处理,结合分子的积分信息,最终计算出基态能量。
10.4.1 node.json配置解析
本节点的所有配置说明、测试用例等,均集成于 node.json 文件中,您可以通过该文件来学习和配置您用于输入的计算节点。
{
"id": "c48123e3-33c5-4b2c-8b24-qsci-node-2025",
"name": {"cn":"QSCI 节点",
"en":"QSCI Node"},
"version": "1.0.0",
"input":{
"upstream":[
{
"var": "ffsim_file_path", // 变量名 与config.json和main.py一致
"name": { "cn": "ffsim对象", // 前端显示名称,可缺省
"en": "ffsim object"},
"description": "存储了分子的 SCF 积分信息,包括单电子积分、双电子积分、核心能量和自旋等"},
{
"var": "measure_counts_file_path", // 变量名 与config.json和main.py一致
"name": { "cn": "测量结果字典对象",
"en": "measure result dict"},
"description": "输出测量结果统计计数字典(state -> count)"},
{
"var": "hf_energy_file_path", // 变量名 与config.json和main.py一致
"name": { "cn": "hf节点输出对象", // 前端显示名称,可缺省
"en": "hf node output object"},
"description": "HF 节点输出的能量与键长配置"}
],
"web":[
{"var": "open_shell",
"name": { "cn": "测量次数",
"en": "shots number"},
"description": "可选:QSCI 的特殊参数,用于对称自旋恢复,默认值为 False。",
"ui": "checkbox"},
{"var": "unique_sample",
"name": { "cn": "最大迭代次数",
"en": "shots number"},
"description": "模拟测量次数(shots),建议在 1000 - 100000 范围内调整",
"ui": "plain_text"},
{"var": "percentage",
"name": { "cn": "百分比",
"en": "percentage"},
"description": "基于计数选择配置的百分比,默认值为 `0.1`。用于筛选出现次数较高的配置",
"ui": "plain_text"},
{"var": "verbose",
"name": { "cn": "结果输出级别",
"en": "output level"},
"description": "结果输出级别,默认为0",
"ui": "plain_text"}
]
},
"output":{
"downstream":[
{"var": "selected_configurations_file_path",
"name": { "cn": "筛选后的配置及其计数",
"en": "measure result dict"},
"description": "输出测量结果统计计数字典(state -> count)"
}
],
"downstream":[
{"var": "qsci_energy_file_path",
"name": { "cn": "测量结果字典对象",
"en": "measure configurations and their counts"},
"description": "筛选后的配置及其计数"
}
]
},
"performance_config_path": "/app/qsci/performance_config.json",
"example_config_path": "/app/qsci/example/test_config.json",
"contact": {
"name": "微观纪元量子化学团队",
"email": "wuchuixiong@miqroera.com",
},
"execution_command": "python /app/qsci/script/main.py --config_path ${input_config_path}" // 必须囊括 ${input_config_path} 变量
}
下列表格旨在详细解析MiqroForge系统中节点配置文件的结构与内容。节点配置文件是确保各个计算节点能够正确部署、初始化并高效运行的关键。通过该表格,用户可以清晰地了解每个配置项的意义、数据类型、默认值以及是否为必需项。此外,还将提供一些示例值以帮助理解如何根据实际需要进行配置。
基本信息
字段名 |
必填 |
描述 |
约束/选项 |
示例值 |
|---|---|---|---|---|
|
是 |
节点全局唯一标识符,在初始化节点时自动生成 |
UUID格式 |
|
|
是 |
节点版本号 |
语义化版本 |
|
输入/输出配置 (inputs/outputs)
在图中清晰地展示了QSCI计算节点的输入输出关系及UI界面配置选项,强调了通过对量子采样得到的比特串进行筛选和处理,结合分子的积分信息,最终计算出基态能量,以及与上下游节点的交互方式。
上游输入:(upstream)
字段名
必填
描述
约束/选项
var是
字段标识
小写蛇形命名
name否
数据类型
webUI输入 (web)
字段名
必填
描述
约束/选项
var是
字段标识
name否
数据类型
ui是
前端输入样式
下游输出:(downstream)
字段名
必填
描述
约束/选项
var是
字段标识
小写蛇形命名
name否
数据类型
webUI输出:(web)
字段名
必填
描述
约束/选项
var是
字段标识
name否
数据类型
ui是
前端输出样式
性能配置/测试案例
字段名 |
必填 |
描述 |
约束/选项 |
|---|---|---|---|
|
是 |
性能配置文件路径 |
绝对路径 |
|
是 |
运行测试输入文件test_config_path |
绝对路径 |
|
是 |
节点执行命令 |
联系信息 (contact)
字段名 |
必填 |
描述 |
约束/选项 |
示例值 |
|---|---|---|---|---|
|
是 |
维护者名称 |
- |
"微观纪元量子化学团队" |
|
是 |
联系邮箱 |
有效邮箱格式 |
10.4.2 config.json 节点测试及配置说明
在
MiqroForge平台中,每个节点镜像都包含一个标准化的测试配置文件test_config.json。此文件位于节点的/app/example/目录中,是验证节点功能的关键工具。
在节点的实际运行中,test_config.json或通过MiqroForge生成的${input_config_path}指向的config文件,他们的作用是作为计算时的输入/输出配置文件。用户在编写可执行程序时,需要保证main.py或其他可执行程序从config文件中读取到变量名。这些变量名和node.json中的变量名要保持一致。
测试配置文件示例(QSCI节点):
{
"open_shell": "Flase",
"unique_sample": "default",
"verbose":0,
"percentage":0.1,
"ffsim_file_path": "/app/qsci/example/h2o-molecule.json",
"measure_counts_file_path":"/app/qsci/example/h2o-counts.json",
"qsci_energy_file_path": "/app/qsci/example/h2o-energy.json",
"hf_energy_file_path":"/app/qsci/example/h2o_hf_energy_file_path.json",
"selected_configurations_path":"/app/qsci/example/h2o_selected_configurations.json"
}