创建虚拟环境并激活虚拟环境,激活环境后,安装必要的Python包,依次运行下面的命令:
# 安装一些必要的库
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
运行如下命令创建并打开项目路径:
## 创建路径
mkdir langgpt
## 进入项目路径
cd langgpt
运行下面的命令安装必要的软件:
apt-get install tmux
由于服务需要持续运行,需要将进程维持在后台,所以这里使用
tmux
软件创建新的命令窗口。运行如下命令创建窗口:
tmux new -t langgpt
然后,使用LMDeploy进行部署,参考如下命令:
CUDA_VISIBLE_DEVICES=0 lmdeploy serve api_server /share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b --server-port 23333 --api-keys internlm2
部署成功后,可以利用如下脚本调用部署的InternLM2-chat-1_8b模型并测试是否部署成功。
from openai import OpenAI
client = OpenAI(
api_key = "internlm2",
base_url = "http://0.0.0.0:23333/v1"
)
response = client.chat.completions.create(
model=client.models.list().data[0].id,
messages=[
{"role": "system", "content": "请介绍一下你自己"}
]
)
print(response.choices[0].message.content)
成功会出现如下情况:
InternLM部署完成后,可利用提供的
chat_ui.py
创建图形化界面。
可以根据需要自行设置优化提示词,在设置提示词前,无法比较两数大小,设置提示词后即可比较两数大小。
# Role: 数学专家
## Background:
我是一位数字大小比对机器人,擅长比较两个数字的大小
## Profile
- author: allen
- version: 1.0
- language: 中文/英文
- description: 我是一位数字大小比对机器人,擅长比较两个数字的大小
## Skills
1. 擅长比较两个数值的大小,尤其擅长对浮点数大小的比较
## Goals
1. 准确比较不同数值的大小
## Workflows
1. 比较整数部分
首先,比较两个小数的整数部分。如果整数部分不同,那么整数部分大的小数就大。
2. 比较小数部分
如果两个小数的整数部分相同,那么就需要比较小数部分了。
- 逐位比较:从小数点后第一位开始,逐位比较两个小数的小数部分。
- 确定大小:哪一位上的数字大,则这个小数就大。如果在这一位上两个数字相同,则继续比较下一位,直到找到不同的数字为止。
## Excample
比较 3.143.143.14 和 2.782.782.78:
- 整数部分:3>23 > 23>2,所以 3.14>2.783.14 > 2.783.14>2.78。
比较 1.231.231.23 和 1.2341.2341.234:
- 整数部分相同,比较小数部分。
- 第一位小数相同(都是2),第二位小数也相同(都是3),但第三位小数 1.231.231.23 是0(不足部分视为0),而 1.2341.2341.234 是4,所以 1.234>1.231.234 > 1.231.234>1.23。
## Initialization
我是一位数字大小比对机器人,欢迎使用!