工作流、WorkItem 与数据血缘

使用 Product SDK 部署和运行工作流、发布 WorkItem API 服务,以及查看工作流产物和数据血缘。SDK 返回的资源对象会保留工作区与资源 ID 的作用域;后续操作应从创建、查询或运行结果取得下一层对象。

运行工作流

运行工作流前,准备已审核的工作流定义、工作流 ID 和运行输入。运行调用返回工作流作业标识后,保存该标识并使用工作流作业对象查询状态、结果、算子信息,或在条件允许时取消和重新运行。

启动工作流作业只表示运行请求已提交。应用应设置自己的轮询间隔和截止时间,在状态进入终态后再读取结果;本地等待超时并不代表平台已经停止运行,也不应直接提交第二次运行。

SDK 调用

workflow, _, err := workspace.DeployWorkflow(ctx, workflowName, dslYAML, workflowID)
started, err := workflow.Run(ctx, sdk.WithWorkflowRunInput(runInput))
run, err := workflow.RunHandle(started.GetWorkflowRun().GetExecutionId())
result, err := run.Result(ctx)
workflow, deployed = workspace.deploy_workflow(workflow_name, dsl_yaml, workflow_id)
started = workflow.run(sdk.with_workflow_run_input(run_input))
run = workflow.run_handle(started.workflow_run.execution_id)
result = run.result()

started 中的工作流作业标识用于取得运行对象;result 才是读取运行结果的入口。

发布 WorkItem API 服务

WorkItem API 服务以 WorkItem 目录项和版本为范围。发布和调用都应使用 SDK 提供的服务对象与配置对象,并明确提供目录项标识、版本、服务名称、服务类型、计算实例和调用负载。

SDK 不会从目录显示名称推断发布参数。发布、启用、禁用和调用都可能影响外部使用方,操作前请确认版本和服务配置。

查看工作流产物与数据血缘

使用工作流产物对象查看输出块、算子、算子块和版本关系。切换有效版本或从算子重新运行时,先读取当前数据血缘和重新运行计划,再由调用方明确选择目标版本、算子和重新运行方式。

工作流产物与数据血缘不等同于智能体响应。不要将工作流作业 ID、算子 ID 或版本标识用于智能体任务。

语言方法对照

任务

Go

Python

运行工作流

Run

run

查询工作流作业状态和结果

Info / Result

info / result

取消工作流作业

Cancel

cancel

下一步

最后更新于