一、基本配置
1.环境配置
conda create -n langgpt python=3.10 -y
安装完成后,激活环境,并安装依赖包
conda activate langgpt
#安装依赖包
# 安装一些必要的库
conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=12.1 -c pytorch -c nvidia -y
# 安装其他依赖
pip install transformers==4.43.3
pip install streamlit==1.37.0
pip install huggingface_hub==0.24.3
pip install openai==1.37.1
pip install lmdeploy==0.5.2
2.创建项目路径
## 创建路径
mkdir langgpt
## 进入项目路径
cd langgpt
3.安装必要的软件tmux
apt-get install tmux
二、 模型部署
这部分基于LMDeploy将开源的InternLM2-chat-1_8b模型部署为OpenAI格式的通用接口。
2.1 获取模型
-
如果使用intern-studio开发机,可以直接在路径
/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b
下找到模型 -
如果不使用开发机,可以从huggingface上获取模型,地址为:https://huggingface.co/internlm/internlm2-chat-1_8b
可以使用如下脚本下载模型:
-
from huggingface_hub import login, snapshot_download import os os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com' login(token=“your_access_token") models = ["internlm/internlm2-chat-1_8b"] for model in models: try: snapshot_download(repo_id=model,local_dir="langgpt/internlm2-chat-1_8b") except Exception as e: print(e) pass
2.2 部署模型为OpenAI server
- 由于服务需要持续运行,需要将进程维持在后台,所以这里使用
tmux
软件创建新的命令窗口。运行如下命令创建窗口: -
tmux new -t langgpt
-
进入命令窗口后,需要在新窗口中再次激活环境,命令参考0.1节。
- 创建完成后,运行下面的命令进入新的命令窗口(首次创建自动进入,之后需要连接):
-
tmux a -t langgpt
使用LMDeploy进行部署(更多设置,可以参考:https://lmdeploy.readthedocs.io/en/latest/index.html)
-
#安装lmdeploy pip install lmdeploy
2.3 图形化界面调用
InternLM部署完成后,可利用提供的chat_ui.py
创建图形化界面,在实战营项目的tools项目中。
首先,从Github获取项目,运行如下命令:
git clone https://github.com/InternLM/Tutorial.git
下载完成后,运行如下命令进入项目所在的路径:
cd Tutorial/tools
进入正确路径后,运行如下脚本运行项目:
python -m streamlit run chat_ui.py
进行端口映射,在本地终端中输入映射命令,可以参考如下命令:
ssh -p {ssh端口,从InternStudio获取} root@ssh.intern-ai.org.cn -CNg -L 7860:127.0.0.1:8501 -o StrictHostKeyChecking=no
左侧边栏为对话的部分设置,其中最大token长度设置为0时表示不限制生成的最大token长度。API Key和Base URL是部署InternLM时的设置,必须填写。在保存设置之后,可以启动对话界面