当前位置: 首页 > news >正文

CANN/ge LLM集群连接API

# link_clusters

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

产品支持情况

  • Atlas A3 训练系列产品/Atlas A3 推理系列产品:支持
  • Atlas A2 推理系列产品:支持
  • Atlas A2 训练系列产品:不支持

函数功能

由Client单侧发起建链。由于动态扩缩的部分大部分是Decode侧,因此将P定义为Server端,D定义为Client端,建链过程实现由D向P发起建链的流程。

函数原型

link_clusters(clusters: Union[List[LLMClusterInfo], Tuple[LLMClusterInfo]], timeout=3000)

参数说明

参数名称数据类型取值说明
clustersUnion[List[LLMClusterInfo], Tuple[LLMClusterInfo]]集群列表。
timeoutint超时时间,单位:ms,默认超时时间3000ms。

调用示例

from llm_datadist import LLMDataDist, LLMRole, LLMStatusCode, LLMClusterInfo llm_datadist = LLMDataDist(LLMRole.DECODER, 0) cluster = LLMClusterInfo() cluster.remote_cluster_id = 1 cluster.append_local_ip_info("1.1.1.1", 26000) cluster.append_remote_ip_info("1.1.1.1", 26000) ret, rets = llm_datadist.link_clusters([cluster], 5000) if ret != LLMStatusCode.LLM_SUCCESS: raise Exception("link failed.") for cluster_i in range(len(rets)): link_ret = rets[cluster_i] if link_ret != LLMStatusCode.LLM_SUCCESS: print(f"{cluster_i} link failed.")

返回值

正常情况下返回两个值的元组,第一个值是接口的返回值,类型是LLMStatusCode,第二个是每个集群建链结果的列表,类型是LLMStatusCode。

参数错误可能抛出TypeError或ValueError。

约束说明

  • 建链的要求如下。建链数量过多存在内存OOM及KV Cache传输的性能风险。

    • Server侧(P侧)并发建链的数量=16,允许创建的最大通信数量=512。
    • Client侧(D侧)允许创建的最大通信连接数量=512。
  • 建议超时时间配置200ms以上。

  • 只有Client发起调用

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.cnnetsun.cn/news/3131888.html

相关文章:

  • 为什么选择ampy?探索MicroPython串口工具的5大优势
  • 计算机毕业设计之springboot医院信息管理系统
  • 终极AgentScope嵌入模型实战指南:3步构建高效语义检索系统
  • Livox-SDK2激光雷达开发完整教程:从安装到实战应用
  • 终极bCNC指南:如何用这款开源GRBL工具彻底改变你的CNC加工流程
  • FOC矢量控制在电动出行设备中的应用与优化
  • 数字手写的革命:Saber如何重新定义跨平台笔记体验
  • Path of Building PoE2:流放之路2最强离线构建规划工具终极指南
  • Yuzu模拟器版本选择终极指南:3步找到最适合你的完美版本
  • 2026年AI模型实操红黑榜:六模型生存指南
  • 为什么Fooocus是AI图像生成的革命性工具:简化复杂,专注创作
  • Node.js连接Redis实战:从基础到高级应用
  • clang-tutor实战:使用ASTMatcher实现代码风格检查插件
  • ToastNotifications核心组件揭秘:从Notifier到NotificationAnimator的终极解析
  • 三步打造你的智能车辆数据中心:TeslaMate深度应用指南
  • 终极指南:如何用Twitch Drops Miner轻松自动化获取游戏奖励 [特殊字符]
  • 最小风险贝叶斯决策实战:Python 3.11 实现医疗诊断与损失矩阵设计
  • 突破性多语言OCR技术解析:PaddleOCR如何用17MB模型实现企业级文档智能识别
  • PostgreSQL向量搜索企业级解决方案:构建高性能相似性匹配系统
  • AI赋能UI自动化测试:Selenium智能脚本生成原理与实践
  • 深度解析PoB2 Lua架构:如何实现高效物品数据处理与构建优化
  • 终极指南:3分钟快速掌握Google图片批量下载神器
  • 手写体识别终极指南:PaddleOCR如何让潦草文字“开口说话“?
  • Linux数据恢复与备份:从误删文件到系统灾难的完整解决方案
  • HPL1Engine物理引擎详解:碰撞检测与关节系统开发实战
  • 从数组到菜单:spatie/menu的Menu::build方法批量创建导航的实用指南
  • 6脉动桥在HVDC系统中的应用与参数配置详解
  • Flutter游戏代码重构指南:如何优化现有游戏代码结构
  • XStream安全配置完全指南:如何防范CVE漏洞保护应用安全
  • Elm-platform性能优化:提升Elm应用构建速度的7个技巧