huggingface.transformers安装教程

简介: 本部分介绍transformers包如何安装,安装后如何检验是否安装成功,以及cache的设置和离线模式如何操作。

1. 通过pip下载


pip install transformers


如果仅使用CPU,可以直接通过如下命令行同时安装PyTorch:

pip install transformers[torch]


2. 通过source下载


pip install git+https://github.com/huggingface/transformers


这个命令行下载的是最新的master版本,而不是稳定版。master版保持最新更新。


3. Editable install


如果您需要:1. 使用源码的master版本。2. 贡献给 🤗 Transformers,测试代码变化。

您就需要进行editable install,即clone GitHub项目并安装transformers包:


git clone https://github.com/huggingface/transformers.git
cd transformers
pip install -e .


这一命令会链接你下载的文件夹到Python包路径,Python会在常规包路径的基础上增加查看你所下载的这个路径。举例来说,如果你的Python包一般下到~/anaconda3/envs/main/lib/python3.7/site-packages/,Python在此基础上还会搜索你下载的这个文件夹:~/transformers/。

注意如果你想保留这个包,这个下载的文件夹就不能删。

对pip install命令的-e参数的更多解释可参考我之前撰写的博文:pip详解(持续更新ing…)_诸神缄默不语的博客-CSDN博客


如果你想更新到最新版本,运行如下代码即可:

cd ~/transformers/
git pull


4. 通过conda下载


conda install -c huggingface transformers


5. 验证transformers是否安装成功


python -c "from transformers import pipeline; print(pipeline('sentiment-analysis')('we love you'))"


python -c属于命令行参数,直接运行其后的Python语句1。也可以用command参数。通过man python命令可以查看其介绍:

Specify the command to execute (see next section).  This terminates the option list (following  options are passed as arguments to the command).


这个Python代码就是自动下载预训练模型,使用transformers的pipeline函数对“we love you”这句话运行情感分析操作,对pipeline的解释可参考我之前撰写的博文:huggingface.transformers速成笔记_诸神缄默不语的博客-CSDN博客

如代码成功运行并输出类似如下的内容,证明transformers安装成功:


[{'label': 'POSITIVE', 'score': 0.9998704791069031}]


6. cache设置


预训练模型会被自动下载并缓存到:~/.cache/huggingface/transformers/(shell environment variable TRANSFORMERS_CACHE)

(在Windows上则是:C:\Users\username\.cache\huggingface\transformers)


你可以改变以下shell environment variables(按优先级排序)以指定不同的缓存文件夹:


  1. Shell environment variable (default): TRANSFORMERS_CACHE
  2. Shell environment variable: HF_HOME + transformers/
  3. Shell environment variable: XDG_CACHE_HOME + /huggingface/transformers


(如果使用过transformers老版,并修改了 shell environment variables PYTORCH_TRANSFORMERS_CACHE 或 PYTORCH_PRETRAINED_BERT_CACHE),就会使用这些shell environment variables,除非修改了 shell environment variable TRANSFORMERS_CACHE


我没有试验过修改缓存路径,参考2,有3种方式修改缓存路径:


  1. 在Python代码中,在import transformers之前修改环境变量:
import os
os.environ['TRANSFORMERS_CACHE'] = '文件夹名'


  1. 在命令行中:export TRANSFORMERS_CACHE=文件夹名
  2. 在调用from_pretrained函数时使用cache_dir入参,指定缓存文件夹名


7. 离线模式


在不方便使用网络的情况下,🤗 Transformers也可以只使用本地文件。设置环境变量TRANSFORMERS_OFFLINE=1以开启该模式。


举例,原本运行代码的脚本为:

python examples/pytorch/translation/run_translation.py --model_name_or_path t5-small --dataset_name wmt16 --dataset_config ro-en ...


离线模式则为:

HF_DATASETS_OFFLINE=1 TRANSFORMERS_OFFLINE=1 \
python examples/pytorch/translation/run_translation.py --model_name_or_path t5-small --dataset_name wmt16 --dataset_config ro-en ...


另一种离线使用 🤗 Transformers 的方法是提前下载模型,然后用from_pretrained()指定文件夹加载tokenizer和预训练模型。

from_pretrained()函数的使用方法同样可参考我之前撰写的博文:huggingface.transformers速成笔记_诸神缄默不语的博客-CSDN博客


另,使用代码从huggingface_hub/src/huggingface_hub at main · huggingface/huggingface_hub下载模型:


python -m pip install huggingface_hub
#以T0模型的config.json为例
from huggingface_hub import hf_hub_download
hf_hub_download(repo_id="bigscience/T0_3B", filename="config.json", cache_dir="指定下载路径")


相关文章
|
9月前
|
PyTorch 算法框架/工具 Python
pytorch安装教程
pytorch安装教程
171 0
|
机器学习/深度学习 并行计算 PyTorch
PyTorch安装教程
PyTorch是学习深度学习时常用的Python神经网络框架,本文将介绍其部分版本的安装方式。Windows和Linux通用。 作者使用anaconda作为管理虚拟环境的工具。以下工作都在虚拟环境中进行,对Python和Aanaconda的安装及对虚拟环境的管理本文不作赘述,后期可能会撰写相关的博文。
PyTorch安装教程
|
1月前
|
机器学习/深度学习 数据采集 自然语言处理
HuggingFace Transformers 库深度应用指南
本文首先介绍HuggingFace Tra环境配置与依赖安装,确保读者具备Python编程、机器学习和深度学习基础知识。接着深入探讨Transformers的核心组件,并通过实战案例展示其应用。随后讲解模型加载优化、批处理优化等实用技巧。在核心API部分,详细解析Tokenizers、Models、Configuration和Dataset的使用方法。文本生成章节则涵盖基础概念、GPT2生成示例及高级生成技术。最后,针对模型训练与优化,介绍预训练模型微调、超参数优化和推理加速等内容。通过这些内容,帮助读者掌握HuggingFace Transformers的深度使用,开发高效智能的NLP应用。
128 22
|
5月前
|
人工智能 自然语言处理 API
ModelScope是什么
【9月更文挑战第1天】ModelScope是什么
897 2
|
8月前
|
人工智能 开发框架 监控
LangChain和Hub的前世今生
作为LLM(大模型)开发框架的宠儿,LangChain在短短几年内迅速崛起,成为开发者们不可或缺的工具。本文将带你探讨LangChain和LangChainHub的发展历程。
LangChain和Hub的前世今生
|
9月前
|
机器学习/深度学习 人工智能 监控
ModelScope
ModelScope
287 9
|
9月前
|
机器学习/深度学习 人工智能 Swift
PAI x ModelScope: 在PAI使用ModelScope模型
在当前的人工智能领域,特别是大语言模型、文生图等领域,基于预训练模型完成机器学习模型的开发部署已成为重要的应用范式,开发者们依赖于这些先进的开源预训练模型,以简化机器学习应用的开发并加速创新。
|
9月前
|
自然语言处理 PyTorch API
Transformers从入门到精通:Transformers介绍
transformer是当前大模型中最流行的架构,而Transformers是实现transformer的最流行的实现的库,由著名的huggingface推出。Transformers提供了丰富的API和工具,可以轻松下载和训练最先进的预训练模型。使用预训练的模型可以降低计算成本,并为从头开始训练模型节省所需的时间和资源。5月更文挑战第2天
185 0
|
9月前
|
Web App开发 开发工具 git
下载HuggingFace大模型上传到Modelscope模型库
下载大模型,都是通过huggingface。以前Llama 2的下载,必须通过Meta才能下载,直接使用Meta的代码去Meta官方下载,国内是很容易中断,导致无法下载。现在你通过了Meta申请通过后,可以直接在huggingface进行下载。
|
人工智能 自然语言处理 API
浅谈ModelScope
ModelScope是阿里推出的下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,其开发目标为让模型应用更简单。ModelScope希望在汇集行业领先的预训练模型,减少开发者的重复研发成本,提供更加绿色环保、开源开放的AI开发环境和模型服务,助力绿色“数字经济”事业的建设。ModelScope平台以开源的方式提供了多类优质模型,开发者可在平台上免费体验与下载使用。

热门文章

最新文章