作者: 英特尔边缘计算创新大使 杨雪锋
1. OpenVINO Notebooks简介
OpenVINO Notebooks是Jupyter Notebook形式的OpenVINO范例程序大集合,方便开发者快速学习并掌握OpenVINO推理程序,并通过Copy&Paste方式将范例中的关键程序应用到自己的AI软件中去。
GitHub: https://github.com/openvinotoolkit/openvino_notebooks
2. 运行AI大模型的挑战
OpenVINO Notebooks提供了非常丰富的AI大模型范例程序,例如:Dolly2、Stable Diffusion、LLama2、ChatGLM2等等,方便广大开发者学习并应用AI大模型。
但运行AI大模型范例程序时,由于众所周知的原因,通常会遇到因无法从HuggingFace下载模型,导致范例程序无法运行的情况。
以240-dolly-2-instruction-following.ipynb为例,运行“Download and Convert Model”代码时会收到报错信息,如下图所示:
3. 解决AI大模型下载问题
3.1 解决方案一:命令行模式
从https://hf-mirror.com/用命令行手动下载。
第一步,安装下载工具:
pip install -U huggingface_hub hf_transfer
第二步,设置环境变量
在Linux中,执行:
export
HF_HUB_ENABLE_HF_TRANSFER=1
export HF_ENDPOINT=https://hf-mirror.com
在Windows中,执行:
SET HF_HUB_ENABLE_HF_TRANSFER=1
SET HF_ENDPOINT=https://hf-mirror.com
第三步:运行下载命令,下载模型到本地
huggingface-cli download --resume-download databricks/dolly-v2-3b --local-dir dolly-v2-3b
3.2 解决方案二:命令行模式
在模型页面:https://hf-mirror.com/databricks/dolly-v2-3b/tree/main,右键菜单启动:“多选下载模式”,如下图所示。
然后选择所有要下载的文件,最后按“Enter”启动下载。
实际测试,迅雷下载的方式,速度最快,平均在6MB/s左右
4. 从本地加载AI大模型模型
将AI大模型下载到本地后,在,把model_id改为model_local_path, 让程序从本地加载AI大模型,例如:
model_id = "databricks/dolly-v2-3b"
model_local_path = "D:/dolly-v2-3b"
tokenizer = AutoTokenizer.from_pretrained(model_local_path,local_file_only=True)
ov_model = OVModelForCausalLM.from_pretrained(model_local_path, device=current_device, export=True, ov_config=ov_config, load_in_8bit=False,local_file_only=True)
在240-dolly-2-instruction-following.ipynb中“Download and Convert Model”代码块更改如下所示:
from pathlib import Path
from transformers import AutoTokenizer
from optimum.intel.openvino import OVModelForCausalLM
model_id = "databricks/dolly-v2-3b"
model_local_path = "D:/dolly-v2-3b"
model_path = Path("dolly-v2-3b")
tokenizer = AutoTokenizer.from_pretrained(model_local_path,local_file_only=True)
current_device = device.value
ov_config = {'PERFORMANCE_HINT': 'LATENCY', 'NUM_STREAMS': '1', "CACHE_DIR": ""}
if model_path.exists():
ov_model = OVModelForCausalLM.from_pretrained(model_path, device=current_device, ov_config=ov_config)
else:
ov_model = OVModelForCausalLM.from_pretrained(model_local_path, device=current_device, export=True, ov_config=ov_config, load_in_8bit=False,local_file_only=True)
ov_model.half()
ov_model.save_pretrained(model_path)
dolly-2-instruction-following.ipynb从本地加载模型的运行效果,如下图所示:
文章来源:https://www.toymoban.com/news/detail-774712.html
5. 总结
在遇到AI大模型无法下载时,可以选择用命令行的方式,或者下载器的方式,手动从HuggingFace镜像网站下载,然后修改加载模型的参数,从本地加载模型,实现OpenVINO Notebooks的范例代码顺利运行。文章来源地址https://www.toymoban.com/news/detail-774712.html
到了这里,关于快速下载OpenVINO Notebooks中的AI大模型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!