跳转至

命令行参数进阶

推理引擎参数透传

参数传递说明

Tip

  • Router 只接受已声明的 worker 参数,不再透传任意 vllm/lmdeploy 参数;这类参数应配置在独立部署的 upstream 服务上。
  • 命令行参数同时支持 --foo value 与 --foo=value 两种写法
  • 如果您想了解更多有关vllm的参数使用方法,请参考 vllm官方文档
  • 如果您想了解更多有关lmdeploy的参数使用方法,请参考 lmdeploy官方文档

GPU 设备选择与配置

CUDA_VISIBLE_DEVICES 基本用法

Tip

  • 任何情况下,您都可以通过在命令行的开头添加CUDA_VISIBLE_DEVICES 环境变量来指定可见的 GPU 设备:
    CUDA_VISIBLE_DEVICES=1 mineru-kit parse <input_path> -o <output_path>
    
  • 这种指定方式适用于下文明确说明的模型服务与解析命令,不适用于 mineru-router。

常见设备配置示例

Tip

以下是一些常见的 CUDA_VISIBLE_DEVICES 设置示例:

CUDA_VISIBLE_DEVICES=1  # Only device 1 will be seen
CUDA_VISIBLE_DEVICES=0,1  # Devices 0 and 1 will be visible
CUDA_VISIBLE_DEVICES="0,1"  # Same as above, quotation marks are optional
CUDA_VISIBLE_DEVICES=0,2,3  # Devices 0, 2, 3 will be visible; device 1 is masked
CUDA_VISIBLE_DEVICES=""  # No GPU will be visible

实际应用场景

Tip

以下是一些可能的使用场景:

  • 如果您有多张显卡,需要在卡0和卡1上启动两个openai-server服务,并分别监听不同的端口,可以使用以下命令:

    # 在终端1中
    CUDA_VISIBLE_DEVICES=0 mineru-kit vlm-server --engine vllm --port 30000
    # 在终端2中
    CUDA_VISIBLE_DEVICES=1 mineru-kit vlm-server --engine vllm --port 30001
    
  • 如果您有多张显卡,需要在卡0和卡1上启动两个fastapi服务,并分别监听不同的端口,可以使用以下命令:

    # 在终端1中
    CUDA_VISIBLE_DEVICES=0 mineru-kit api-server --host 127.0.0.1 --port 8000
    # 在终端2中
    CUDA_VISIBLE_DEVICES=1 mineru-kit api-server --host 127.0.0.1 --port 8001
    
  • 如果您有多张显卡,需要通过router在其中4张卡上启动fastapi服务并统一管理,可以使用以下命令:

    mineru-kit router --host 127.0.0.1 --port 8002 --local-gpus 0,1,2,3