You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Dask集群中获取Worker名称?

获取Dask Worker名称的可行方法

方法1:从调度器信息中提取

通过client.scheduler_info()可以获取包含所有Worker元数据的字典,从中能直接取出Worker名称:

from dask.distributed import Client, LocalCluster

cluster = LocalCluster(name='AAA', n_workers=1, threads_per_worker=2)
client = Client(cluster)

# 获取调度器及Worker的完整信息
scheduler_data = client.scheduler_info()
# 遍历Worker条目,输出地址与对应名称
for worker_addr, details in scheduler_data['workers'].items():
    print(f"Worker地址: {worker_addr}, Worker名称: {details['name']}")

方法2:在Worker节点上直接获取

利用client.run()在每个Worker上执行函数,获取Worker自身的名称:

def fetch_worker_name():
    from dask.distributed import get_worker
    return get_worker().name

# 执行函数并收集所有Worker的名称
worker_name_map = client.run(fetch_worker_name)
print(worker_name_map)
# 输出示例:{'tcp://127.0.0.1:34567': 'AAA-0'}

自定义Worker名称(可选)

如果需要指定自定义的Worker名称,创建集群时可通过worker_kwargs参数传入:

cluster = LocalCluster(
    name='AAA',
    n_workers=1,
    threads_per_worker=2,
    worker_kwargs={'name': 'my-special-worker'}
)

内容的提问来源于stack exchange,提问作者XGB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 08:18:23