【vLLM 学习】Torchrun Example
💡
原文中文,约1200字,阅读约需3分钟。
📝
内容提要
本文介绍了使用torchrun进行张量并行推理的实验性支持,包括运行命令和示例代码,展示了如何创建提示和采样参数以生成输出,并提到跨进程传递控制消息的技巧。
🎯
关键要点
- 本文介绍了使用torchrun进行张量并行推理的实验性支持。
- 运行命令为:`torchrun --nproc-per-node=2 torchrun_example.py`,参数2需与`tensor_parallel_size`一致。
- 示例代码展示了如何创建提示和采样参数以生成输出。
- 使用`distributed_executor_backend="external_launcher"`配置,确保LLM引擎仅创建一个工作进程。
- 所有rank将具有相同的输出。
- 跨进程传递控制消息时,建议使用基于GLOO后端的CPU组。
❓
延伸问答
如何使用torchrun进行张量并行推理?
使用命令`torchrun --nproc-per-node=2 torchrun_example.py`,参数2需与`tensor_parallel_size`一致。
示例代码中如何创建提示和采样参数?
示例代码中使用`prompts`列表创建提示,并使用`SamplingParams`类设置采样参数,如温度和top_p。
在使用torchrun时,如何确保LLM引擎只创建一个工作进程?
通过配置`distributed_executor_backend="external_launcher"`来确保LLM引擎仅创建一个工作进程。
跨进程传递控制消息时,推荐使用什么?
建议使用基于GLOO后端的CPU组来跨进程传递控制消息。
所有rank的输出是否相同?
是的,所有rank将具有相同的输出。
如何在rank 0执行特定操作?
可以通过检查`torch_rank`是否为0来执行特定操作,例如将结果保存到磁盘。
➡️