当前位置: 首页 > news >正文

书生大模型实战营-玩转HF/魔搭社区闯关任务

通过Github Codespace下载InternLM模型并运行

本篇博客是记录《书生大模型实战营第四期-玩转HF/魔搭/魔乐》章节的闯关任务从HF上下载模型文件,对实战营感兴趣的小伙伴也可以扫码报名哦。

一、通过模版创建Codespace环境

访问codespace 点击Jupyter Notebook 模版的"Use this template"使用该模版创建Jupyter环境

环境创建好后就可以看到vscode的界面

点击TERMINAL并且安装如下依赖:

# 安装transformers
pip install transformers==4.38
pip install sentencepiece==0.1.99
pip install einops==0.8.0
pip install protobuf==5.27.2
pip install accelerate==0.33.0

二、创建hf_download_json.py文件

你可以通过在终端(TERMINAL)中输入如下命令来创建文件,也可以点击vscode的新增文件按钮来创建。

touch hf_download_json.py

粘贴如下代码:

import os
from huggingface_hub import hf_hub_download# 指定模型标识符
repo_id = "internlm/internlm2_5-7b"# 指定要下载的文件列表
files_to_download = [{"filename": "config.json"},{"filename": "model.safetensors.index.json"}
]# 创建一个目录来存放下载的文件
local_dir = f"{repo_id.split('/')[1]}"
os.makedirs(local_dir, exist_ok=True)# 遍历文件列表并下载每个文件
for file_info in files_to_download:file_path = hf_hub_download(repo_id=repo_id,filename=file_info["filename"],local_dir=local_dir)print(f"{file_info['filename']} file downloaded to: {file_path}")

三、运行hf_download_json.py并查看结果

在终端中执行:

python hf_download_json.py

可以看到这个脚本帮我们下载了config.json和model.safetensors.index.json两个文件到当前目录的internlm2_5-7b的文件夹中了。至此闯关任务已经通过啦。

四、下载完整模型并运行

跟创建hf_download_json.py一样创建一个hf_download_demo.py

touch hf_download_demo.py

粘贴如下代码:

import torch
from transformers import AutoTokenizer, AutoModelForCausalLMtokenizer = AutoTokenizer.from_pretrained("internlm/internlm2_5-1_8b", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("internlm/internlm2_5-1_8b", torch_dtype=torch.float16, trust_remote_code=True)
model = model.eval()inputs = tokenizer(["A beautiful flower"], return_tensors="pt")
gen_kwargs = {"max_length": 128,"top_p": 0.8,"temperature": 0.8,"do_sample": True,"repetition_penalty": 1.0
}output = model.generate(**inputs, **gen_kwargs)
output = tokenizer.decode(output[0].tolist(), skip_special_tokens=True)
print(output)

运行hf_download_demo.py下载模型并且运行:

python hf_download_demo.py

等待模型下载完成与运行就可以看到运行结果:

PS:由于github codespaces没有gpu,运行大模型可能需要比较长的时间才能出结果。

http://www.lryc.cn/news/480553.html

相关文章:

  • 混响(Reverb):原理、应用与发展趋势的深度解析
  • Java学习教程,从入门到精通,Java修饰符语法知识点及案例代码(23)
  • 钉钉小程序使用getApp实现类型provide inject的功能 应用场景:解决页面同步子组件弹窗的滚动问题
  • 标准化 Git 提交信息的约定
  • React教程(详细版)
  • Perfect Forwarding(完美转发)
  • PHP露营地管理平台小程序系统源码
  • 速盾:vue的cdn是干嘛的?
  • 线性代数:Matrix2x2和Matrix3x3
  • Windows 中 Electron 项目实现运行时权限提升以杀掉特定进程
  • 赠你一只金色的眼 - 富集分析和表达数据可视化
  • 鸿蒙的进击之路
  • c语言中的线程管理pthread详解
  • 关于qiskit版本>1.0.0,execute函数被替换
  • 给 Docker 配置网络代理
  • 软件测试基础十七(python Unittest)
  • 技术领导者的道与术:从领导者到领导力
  • Starrocks Compaction的分析
  • 淘淘商城实战高并发分布式项目(有源码)
  • 内网部署web项目,外网访问不了?只有局域网能访问!怎样解决?
  • Jenkins系列
  • 技术总结(二十四)
  • 原生鸿蒙应用市场:赋能开发者全生命周期服务体验
  • 深入解析TOML、XML、YAML和JSON:优劣对比与场景应用
  • 前端UniApp面试题及参考答案(100道题)
  • MoonBit 双周报 Vol.59:新增编译器常量支持,改进未使用警告,支持跨包函数导入...多个关键技术持续优化中!
  • Linux相关概念和易错知识点(20)(dentry、分区、挂载)
  • 论 ONLYOFFICE:开源办公套件的深度探索
  • 兵马未动,粮草先行-InnoDB统计数据是如何收集的
  • oracle服务器意外宕机数据库启动失败故障处理记录