
使用FastChat快速部署开源大模型
llm
FastChat简介
FastChat是一个用于训练、服务和评估基于大型语言模型的聊天机器人的开放平台,提供了丰富的UI界面选项。可以使用FastChat来部署HuggingFace的模型。 它提供了一套核心功能,包括:
- 训练、服务和评估用于聊天机器人的大型语言模型
- 与OpenAI兼容API
- 基于GPT-4的AI增强评估流程
- 多种可用于测试和评估的模型
FastChat框架主要分为三个部分:Controller、Server、Worker。这三者的关系如下图所示:
- Server部分负责接收用户的请求,并将请求转发给对应的Worker,在计算完成后,将Worker返回的结果返回给用户。
- Worker是整个模型计算的核心部分,运行实际的语言模型,执行具体的任务,包括生成聊天回复、评估模型等。
- Controller用于保存和更新模型的信息,负责协调和分配任务给不同的Worker以及Worker之间平衡负载和监控。
除此之外,FastChat还提供了命令行接口和网页界面,以及OpenAI兼容API接口。
FastChat安装
建议首先使用Conda来创建虚拟环境:
conda create -n fastchat python=3.11
conda activate fastchat
安装相关常用的库:
pip install fschat torch transformers accelerate sentencepiece gradio==4.9.1
此时,就可以分别启动前面提到的Fastchat的组件:
- Controller
python -m fastchat.serve.controller --host 0.0.0.0
- Worker
python -m fastchat.serve.model_worker --host 0.0.0.0 --model-path /your_model_path
- OpenAI API
python -m fastchat.serve.openai_api_server --host 0.0.0.0
- gradio web
python -m fastchat.serve.gradio_web_server --host 0.0.0.0 --share
通过上面的步骤,就可以在短时间内部署一个开源大模型相关的服务了。