• 文档 >
  • 使用 TorchServe 部署 LLM
快捷方式

使用 TorchServe 部署 LLM

本文档介绍如何使用 TorchServe 轻松地服务大型语言模型 (LLM),例如 Meta-Llama3。除了使用我们的 VLLM 集成的快速入门指南外,我们还提供了一系列示例,描述了使用 TorchServe 部署 LLM 的其他方法。

快速入门 LLM 部署

TorchServe 通过其 VLLM 集成提供简单的 LLM 部署。通过集成我们的 LLM 启动器脚本,用户只需一个命令即可部署 VLLM 支持的任何模型。启动器可以单独使用,也可以与我们提供的 TorchServe GPU docker 镜像结合使用。

要启动 docker,我们首先需要构建它

docker build . -f docker/Dockerfile.vllm -t ts/vllm

模型通常从 HuggingFace Hub 加载,并缓存在 docker 卷 中,以便更快地重新加载。如果您想访问 gated 模型(例如 Meta-Llama3 模型),则需要提供 HuggingFace Hub 令牌

export token=<HUGGINGFACE_HUB_TOKEN>

然后,您可以继续启动 TorchServe 实例,以服务您选择的模型

docker run --rm -ti --shm-size 1g --gpus all -e HUGGING_FACE_HUB_TOKEN=$token -p 8080:8080 -v data:/data ts/vllm --model_id meta-llama/Meta-Llama-3-8B-Instruct --disable_token_auth

要更改模型,您只需交换提供给 --model_id 参数的标识符。您可以使用以下命令测试模型:

curl -X POST -d '{"prompt":"Hello, my name is", "max_new_tokens": 50}' --header "Content-Type: application/json" "https://127.0.0.1:8080/predictions/model"

您可以使用 VLLM SamplingParams 关键字 更改请求的任何采样参数。例如,要将采样温度设置为 0,我们可以执行以下操作:

curl -X POST -d '{"prompt":"Hello, my name is", "max_new_tokens": 50, "temperature": 0}' --header "Content-Type: application/json" "https://127.0.0.1:8080/predictions/model"

TorchServe 的 LLM 启动器脚本还提供了一些自定义选项。要将模型端点从 predictions/model 重命名为其他名称,您可以将 --model_name <SOME_NAME> 添加到 docker run 命令。

按照 安装说明 安装 TorchServe 后,也可以通过调用此命令在 docker 容器外部使用启动器脚本。

python -m ts.llm_launcher --disable_token_auth

请注意,启动器脚本以及 docker 命令将在所有可用的 GPU 上自动运行,因此请确保通过设置 CUDA_VISIBLE_DEVICES 来限制可见设备的数量。

为了进一步自定义处理程序并添加第三方依赖项,您可以查看我们的 VLLM 示例

支持的模型

快速入门启动器应允许启动 VLLM 支持 的任何模型。以下是 TorchServe 团队测试的模型标识符列表

  • meta-llama/Meta-Llama-3-8B

  • meta-llama/Meta-Llama-3-8B-Instruct

  • meta-llama/Llama-2-7b-hf

  • meta-llama/Llama-2-7b-chat-hf

  • mistralai/Mistral-7B-v0.1

  • mistralai/Mistral-7B-Instruct-v0.1

使用 TorchServe 部署 LLM 的其他方法

TorchServe 提供了关于如何部署大型模型的各种示例。以下是当前示例的列表


© 版权所有 2020, PyTorch Serve 贡献者。

使用 Sphinx 构建,主题由 theme 提供,托管于 Read the Docs

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得解答

查看资源