link
函数功能
在开启CacheManager的场景下,开启方式是在初始化LLMDataDist时传入llm.EnableCacheManager为1时,调用此接口通过建立通信域方式建链。
函数原型
link(comm_name: str, cluster_rank_info: Dict[int, int], rank_table: str) -> int
参数说明
调用示例
from llm_datadist import LLMDataDist, LLMRole, LlmConfig
device_id = 0
llm_datadist = LLMDataDist(LLMRole.PROMPT, 1)
options = {
    "ge.exec.deviceId": str(device_id),
    "llm.MemPoolConfig": "{\"memory_size\": 1073741824}"
}
llm_config = LlmConfig()
llm_config.enable_cache_manager = True
options.update(llm_config.generate_options())
llm_datadist.init(options)
rank_table = """
{
    "server_count": "2",
    "server_list": [
        {
            "device": [
                {
                    "device_id": "0",
                    "device_ip": "x.x.x.x",
                    "rank_id": "0"
                },
            ],
            "server_id": "xxxx"
        },{
            "device": [
                {
                    "device_id": "0",
                    "device_ip": "x.x.x.x",
                    "rank_id": "0"
                },
            ],
            "server_id": "xxxx"
        }
    ],
    "status": "completed",
    "version": "1.0"
}"""
comm_id = llm_datadist.link("comm1", {1: 0, 2: 1}, rank_table)
print("init link suc:", comm_id)
返回值
返回标识通信域的ID。
约束说明
- 需要开启CacheManager模式。
- 需要通信域内所有集群同时发起。
- 需要先配置内存池或者先注册内存。
父主题: LLMDataDist