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

玩转HF/魔搭/魔乐社区(作业)

任务描述时间
模型下载使用Hugging Face平台、魔搭社区平台(可选)和魔乐社区平台(可选)下载文档中提到的模型(至少需要下载config.json文件、model.safetensors.index.json文件),请在必要的步骤以及结果当中截图。20min
模型上传(可选)将我们下载好的config.json文件(也自行添加其他模型相关文件)上传到对应HF平台和魔搭社区平台,并截图。10min
Space上传(可选)在HF平台上使用Spaces并把intern_cobuild部署成功,关键步骤截图。10min

 GitHub CodeSpace的使用:

在终端复制以下内容

# 安装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

下载internlm2_5-7b-chat的配置文件:

 

touch hf_download_josn.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}")
python hf_download_josn.py

检查运行完之后的目录:

虽然在这里我们没有完全下载internlm2_5-7b-chat模型,但是在实战营课程中,我们的InternStudio平台 的 /root/share 目录下已经提供了InterLM2.5系列的模型,可以找到它们作为model_name_or_path进行使用,如

/root/share/new_models/Shanghai_AI_Laboratory/internlm2_5-7b-chat

  下载internlm2_5-chat-1_8b并打印示例输出:

那么如果我们需想要下载一个完整的模型文件怎么办呢?创建一个python文件用于下载internlm2_5-1_8B模型并运行。下载速度跟网速和模型参数量大小相关联,如果网速较慢的小伙伴可以只尝试下载1.8b模型对应的config.json文件以及其他配置文件。

touch hf_download_1_8_demo.py
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = 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)

将后面的代码注释:

 Hugging Face Spaces的使用:
这里按着步骤走就好,

create之后,会有一个默认界面,我们复制那个url后,回到codespace继续操作就好。

如果报错:remote: Password authentication in git is no longer supported. You must use a user access token or an SSH key instead.
请再次设置这个项目的验证,这个地方需要用户的Access Tokens(具体获取方式见下文 "2.1.5 模型上传")
git remote set-url origin https://<user_name>:<token>@huggingface.co/<repo_path>
例如:
git remote set-url origin https://jack:hf_xxxxx@huggingface.co/spaces/jack/intern_cobuild/
然后再次git push即可

这里的token是在这里创建的,记得改为write模式,然后,要保存!!!

然后去刷新刚刚的space界面:

 模型上传:

 


http://www.kler.cn/a/384424.html

相关文章:

  • LabVIEW编程过程中为什么会出现bug?
  • 计算机体系结构知识(一)
  • Gitlab新建用户无法收到邮件的问题解决办法
  • Spring Boot2(Spring Boot 的Web开发 springMVC 请求处理 参数绑定 常用注解 数据传递 文件上传)
  • 【C/C++】strncpy函数的模拟实现
  • Linux之selinux和防火墙
  • AFL++实战入门与afl-fuzz流程解析(源码流程图)
  • ECharts折线图背景渐变设置
  • 短视频矩阵系统源码/抖去推源头技术4年开发
  • 《巧用 EasyQuotation 与 MongoDB 监视股市风云》
  • element plus el-form自定义验证输入框为纯数字函数
  • RESTful 原理和实践
  • 基于SSM(Spring + Spring MVC + MyBatis)框架的药房管理系统
  • git clone github加速方法
  • 【java】实战-力扣题库:有序数组的平方
  • 在Ubuntu22.04上使用Qt Creator开发ROS2项目
  • Unity性能优化 -- 性能分析工具
  • 数据结构---排序(下)
  • 【Python专题】Python处理视频的分辨率
  • 【青牛科技】GC3911替代LV8548在摇头机、舞台灯、打印机和白色家电等产品上的应用分析
  • 高级java每日一道面试题-2024年10月27日-Redis篇-jedis和redisson有哪些区别?
  • CSS中综合练习(基础学校完整静态网页教程)!!
  • 在vscode中如何利用git 查看某一个文件的提交记录
  • 关于几种卷积
  • 场馆场地预定预约源码全开源uniapp+搭建教程
  • 全面解析Flutter中的Stream用法及实际应用