一、背景
近日,Yuan2.0开源大模型又出更新,增加了对话模板,并预置了多轮对话模板,已经在本地聊天工具源chat上进行了集成。可以通过设置-->max-multi-turns
打开功能体验多轮对话。不过本着将简单留给用户,将复杂留给自己的开发原则,我们还是决定进一步适配有大量用户基数的FastChat框架,让开发者能够在不改动原有代码的情况下便捷地使用yuan2.0基础模型。与优秀的项目站在一起,使我们变得更加优秀。
- FastChat简介
先贴一段大家唾手可得的介绍
FastChat[2]是加州大学伯克利分校LM-SYS发布的一个用于训练、服务和评估基于大型语言模型的聊天机器人的开放平台。其核心功能包括:
最先进 LLM 模型的权重、训练代码和评估代码。
带有 WebUI 和与 OpenAI 兼容的 RESTful API 的分布式多模型服务系统。
直白地说,FastChat是一个非常流行的大模型聊天机器人平台,嗯……流行到什么程度呢,目前GitHub官网标星数超过31k,大名鼎鼎的langchain-chatchat底层也是使用的FastChat来实现大模型的部署。另外值得注意的是,Fastchat除了WebUI让大家便捷的使用和测试大模型外,还提供了restful API的服务调用方式,并且它提供的API与OpenAI开放出的API完全兼容,意味着以前大家基于OpenAI的API构建的一系列应用都可以无需任何改动,直接运行在FastChat框架上。一个显而易见的好处就是,通过OpenAI的GPT模型已经获得原型验证甚至商业成功的应用,都可以采用这个框架将应用服务完整迁移到本地,通过选择开源的大模型即可实现私有化大模型服务部署,避免了数据出域、隐私安全等一系列问题。
听起来就很有诱惑力,值得一提的是,浪潮yuan2.0全系列模型都已经完美适配FastChat,并出现在了LM-SYS官方GitHub的模型支持列表当中。这其中包含了Yuan2.0-102B模型,是业界目前唯一开源可商用的千亿参数模型。这也意味着现在用户可以便捷地在FastChat平台上快速部署体验yuan2.0千亿参数模型,而原本采用OpenAI的API接口构建的一系列应用,也可以借助FastChat平台,灵活、便捷地切换为本地部署的千亿参数模型的私有化服务了。
闲言碎语不要讲,下面教程来登场~
二、部署教程
为了部署方便,这里以IEITYuan/Yuan2-2B-Janus-hf模型为例,详细介绍采用fastchat部署yuan2.0的流程。
- step 1. 安装FastChat
跟大多数开源优秀项目类似,FastChat官方也提供了两种安装方式,pip install
和源码安装。
pip安装
官方提供的采用pip安装命令为pip3,建议大家采用python3.x,避免出现依赖包冲突。
pip3 install "fschat[model_worker,webui]"
在实践中,如果是python3.x的环境,直接采用
pip install fschat
也是可以完成安装的。
源码安装
采用源码安装相对更为灵活,可选择的分支版本也更多。根据官方提供的教程,采用源码安装分三步,
- 第1,从GitHub上clone代码到本地
git clone https://github.com/lm-sys/FastChat.git
- 第2,切换到代码所在的目录
cd FastChat
- 第3,升级pip后进行本地安装
pip3 install --upgrade pip
pip3 install -o .
ok,以上就是两种FastChat的安装方式,想省心就直接采用pip安装即可~
如果在新的容器或系统种安装完FastC