为了让脚本在GPU上运行,您需要确保满足以下几个条件:

- 拥有NVIDIA GPU并安装驱动程序:
- 确保您拥有一张性能强大的NVIDIA GPU,并已正确安装相应的驱动程序。
- 安装CUDA工具包:
- 从NVIDIA官网下载并安装适用于您操作系统的最新版本的CUDA工具包。
- 安装cuDNN库:
- 从NVIDIA官网下载并安装适用于您操作系统的最新版本的cuDNN库。
- 安装Python:
- 访问Python官方网站,下载适用于您计算机操作系统的最新版本,并按照安装向导进行操作。
- 安装必要的库:
- 安装Python后,在命令行中运行以下命令,安装运行AI聊天机器人所必需的库:
bash复制代码
pip install torch transformers
这将安装torch和transformers库。
- 安装Python后,在命令行中运行以下命令,安装运行AI聊天机器人所必需的库:
- 创建Python脚本:
- 使用文本编辑器创建一个新的文本文件,例如使用Notepad++、Visual Studio Code或Sublime Text。将文件保存为.py扩展名,例如
my_chatbot.py
。
- 使用文本编辑器创建一个新的文本文件,例如使用Notepad++、Visual Studio Code或Sublime Text。将文件保存为.py扩展名,例如
- 复制脚本:
- 复制提供的AI聊天机器人示例代码到刚刚创建的.py文件中,并保存文件。
python复制代码import torch from transformers import AutoModelForCausalLM, AutoTokenizer # 加载模型和分词器 tokenizer = AutoTokenizer.from_pretrained("stabilityai/stablelm-tuned-alpha-7b") model = AutoModelForCausalLM.from_pretrained("stabilityai/stablelm-tuned-alpha-7b") model.half().cuda() def generate_response(prompt): inputs = tokenizer(prompt, return_tensors="pt").to("cuda") tokens = model.generate( **inputs, max_new_tokens=64, temperature=0.7, do_sample=True ) response = tokenizer.decode(tokens[0], skip_special_tokens=True) return response print("AI已就绪,输入'退出'以结束对话。") user_input = "" while user_input.lower() != "退出": user_input = input("您:") if user_input.lower() != "退出": prompt = f"{system_prompt}{user_input}" ai_response = generate_response(prompt) print("AI:", ai_response)
- 运行脚本:
- 在命令行中,导航到保存Python脚本的文件夹。例如,如果您的脚本位于
C:\Users\(你的本地账户)\StableLM
,在命令行中输入:bash复制代码cd C:\Users\(你的本地账户)\StableLM
然后按Enter键。
- 启动聊天机器人,使用以下命令(确保使用实际保存的文件名替换
my_chatbot.py
):bash复制代码C:/Users/(你的本地账户)/AppData/Local/Programs/Python/Python310/python.exe my_chatbot.py
按Enter键运行命令。
- 在命令行中,导航到保存Python脚本的文件夹。例如,如果您的脚本位于
- 与AI聊天:
- 在命令行中,您应该看到提示,表明AI已准备好与您聊天。输入您的问题或请求,然后按Enter键。AI将生成回复并在屏幕上显示。
- 结束会话:
- 要结束与AI的对话,在命令行中输入“退出”,然后按Enter键。
请注意,这些步骤允许即使没有编程经验的人也能成功设置和运行本地化的AI聊天机器人。教程仅供教育和娱乐使用,请确保遵守适用的法律和道德规范。
最后,一些可能出现的问题是,比如本人所遇到的内存不足错误:
复制代码
torch.cuda.OutOfMemoryError: CUDA out of memory.
Tried to allocate 288.00 MiB (GPU 0; 8.00 GiB total capacity;
7.17 GiB already allocated; 0 bytes free;
7.17 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.
See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
这可能是由于模型过大导致内存不足。您可以尝试通过设置max_split_size_mb
参数来解决这个问题。详细信息可以参考PyTorch的内存管理文档和PYTORCH_CUDA_ALLOC_CONF。
暂无评论...
最新文章
10,664
9,827
3,317
3,534
热门文章
暂无文章