sudo apt update && sudo apt upgrade -y # 更新系统包
sudo apt install -y python3-pip git build-essential libssl-dev libffi-dev # 安装基础依赖
sudo pip3 install --upgrade pip # 升级pip至最新版本若使用NVIDIA GPU,需安装对应版本的CUDA Toolkit(如CUDA 11.8)和cuDNN(如cuDNN 8.6),步骤如下:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin;sudo mv cuda-ubuntu2004.pin /etc/apt/sources.list.d/cuda-repo-ubuntu2004.list;sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub;sudo apt update && sudo apt install -y cuda;export PATH=/usr/local/cuda/bin:$PATH、export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH)。pip install torch torchvision torchaudio # 安装PyTorch(选择与CUDA版本匹配的版本,如CUDA 11.8对应torch==2.0.1+cu118)
pip install transformers # 安装Hugging Face Transformers库(用于加载GPT模型)from transformers import GPT2LMHeadModel, GPT2Tokenizer
# 加载GPT-2模型(选择"small"、"medium"等版本,"large"需更大显存)
model_name = "gpt2" # 可替换为"gpt2-medium"(需更多资源)
model = GPT2LMHeadModel.from_pretrained(model_name)
tokenizer = GPT2Tokenizer.from_pretrained(model_name)
# 编码输入文本并生成响应
input_text = "你好,今天的天气怎么样?"
inputs = tokenizer.encode(input_text, return_tensors="pt")
outputs = model.generate(inputs, max_length=50, num_return_sequences=1) # 生成50个token的回复
# 解码并输出结果
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(generated_text)将上述代码保存为run_gpt.py,运行python run_gpt.py即可启动终端交互。
若需更便捷的终端交互,可安装专门的ChatGPT终端工具:
sudo apt update
sudo apt install chatGPT # 安装ChatGPT终端工具(部分发行版可能需要添加PPA)启动工具:
chatGPT使用方法:
-more参数获取更详细回答(如chatGPT -more "今天是星期几?");chatGPT --help。若希望快速部署且避免环境冲突,可使用Docker:
# 拉取GPT Docker镜像(需替换为实际镜像名称,如"gpt:latest")
docker pull gpt:latest
# 运行容器(映射端口5000,挂载模型目录)
docker run -d -p 5000:5000 --name chatgpt -v /path/to/model:/app/model gpt:latest
# 测试服务(通过curl发送请求)
curl http://localhost:5000/api/test注:需确保镜像包含所需模型(如GPT-2),并根据镜像文档调整端口、模型路径等参数。
CUDA out of memory错误,可降低模型批次大小(batch_size)或使用模型量化技术(如INT8量化,通过TensorRT工具链实现);numactl命令绑定进程至特定CPU节点(如numactl --cpunodebind=0 --membind=0 python run_gpt.py);virtualenv venv && source venv/bin/activate)隔离项目依赖。