UnlinkLlmClusters

产品支持情况

产品 是否支持
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 推理系列产品
Atlas A2 训练系列产品 x

函数功能

进行Device间断链。

函数原型

Status UnlinkLlmClusters(const std::vector<ClusterInfo> &clusters, std::vector<Status> &rets, int32_t timeout_in_millis = 1000, bool force_flag = false)

参数说明

参数名 输入/输出 描述
clusters 输入 需要断链的cluster信息。类型为ClusterInfo
rets 输出 每个cluster断链结果。
timeout_in_millis 输入 断链超时时间,单位ms。默认超时1000。
force_flag 输入 是否为强制断链。默认为否。
强制断链仅强制拆除本端链接,两端都要调用。
非强制断链在Decode发起,无故障时两端链路都会拆除,在链路故障场景会耗时较久,且需要在Prompt端也发起调用。

返回值

  • SUCCESS:只有所有clusters断链成功,接口才会返回成功。
  • 其他:执行断链失败,需要查看rets每个cluster的断链结果。

异常处理

  • LLM_PROCESSING_LINK:接口有锁保护,一个LLM-DataDist多线程调用断链接口会串行执行,其他线程等待时间超过设置的超时时间会报错退出。
  • LLM_UNLINK_FAILED:断链失败。

约束说明

需要在Initialize接口初始化完成后调用。