赞
踩
`AutoConfig.from_pretrained()` 是 Hugging Face Transformers 库中的一个函数,用于根据预训练模型的名称或路径创建配置对象。预训练模型的配置包含了关于模型架构、超参数和其他重要信息的设置。以下是 `AutoConfig.from_pretrained()` 方法的主要参数的详细说明:
1. **pretrained_model_name_or_path** (str, optional):
- 指定要加载的预训练模型的名称或路径。这可以是模型的名称(例如,'bert-base-uncased'),也可以是模型的本地路径。
2. **cache_dir** (str, optional):
- 指定用于缓存预训练模型配置文件的目录路径。如果设置为 `None`,将使用默认缓存目录。
3. **force_download** (bool, optional):
- 如果设置为 `True`,将强制重新下载模型配置,覆盖任何现有的缓存。
4. **resume_download** (bool, optional):
- 这是可选参数,如果设置为 True
,则在下载过程中重新开始下载,即使部分文件已经存在。
5. **proxies** (`Dict[str, str]`, *optional*)
- proxies(可选参数):这是一个字典,用于指定代理服务器的设置。代理服务器允许您在访问互联网资源时通过中继服务器进行请求,这对于在受限网络环境中使用 Transformers 库来加载模型配置信息非常有用。
proxies = { "http": "http://your_http_proxy_url", "https": "https://your_https_proxy_url" }
6. **revision** (str, optional):
- 指定要加载的模型的 Git 版本(通过提交哈希)。
7. **return_unused_kwargs** (bool, optional, 默认值为 False):
- 如果将此参数设置为 True,函数将返回未使用的配置参数。这对于识别和检查传递给函数的不受支持或未识别的参数很有用。
8. trust_remote_code (`bool`, *optional*, defaults to `False`)
trust_remote_code=True
:
trust_remote_code
设置为 True
。这意味着当您使用 from_pretrained()
方法加载模型配置文件时,它将下载来自 Hugging Face 模型中心或其他在线资源的配置文件。这是一个方便的默认行为,因为通常这些配置文件是由官方提供的,且是可信的。trust_remote_code=False
:
如果您将 trust_remote_code
设置为 False
,则表示您不信任从远程下载的配置文件,希望加载本地的配置文件。这对于安全性或定制性要求较高的场景可能是有用的。
在这种情况下,您需要提供一个本地文件路径,以明确指定要加载的配置文件
总之,trust_remote_code
参数允许您在使用 Hugging Face Transformers 库时控制是否信任从远程下载的配置文件。默认情况下,它被设置为 True
,以方便加载官方提供的配置文件,但您可以将其设置为 False
并提供本地配置文件的路径,以进行更精细的控制。
- Examples:
-
- ```python
- >>> from transformers import AutoConfig
-
- >>> # Download configuration from huggingface.co and cache.
- >>> config = AutoConfig.from_pretrained("bert-base-uncased")
-
- >>> # Download configuration from huggingface.co (user-uploaded) and cache.
- >>> config = AutoConfig.from_pretrained("dbmdz/bert-base-german-cased")
-
- >>> # If configuration file is in a directory (e.g., was saved using *save_pretrained('./test/saved_model/')*).
- >>> config = AutoConfig.from_pretrained("./test/bert_saved_model/")
-
- >>> # Load a specific configuration file.
- >>> config = AutoConfig.from_pretrained("./test/bert_saved_model/my_configuration.json")
-
- >>> # Change some config attributes when loading a pretrained config.
- >>> config = AutoConfig.from_pretrained("bert-base-uncased", output_attentions=True, foo=False)
- >>> config.output_attentions
- True
-
- >>> config, unused_kwargs = AutoConfig.from_pretrained(
- ... "bert-base-uncased", output_attentions=True, foo=False, return_unused_kwargs=True
- ... )
- >>> config.output_attentions
- True
-
- >>> unused_kwargs
- {'foo': False}
9. kwargs:
以下是一个使用示例:
```python
from transformers import AutoConfig
# 加载一个预训练模型的配置
config = AutoConfig.from_pretrained('bert-base-uncased')
```
此示例中,`AutoConfig.from_pretrained()` 方法加载了 'bert-base-uncased' 模型的配置。您可以根据您要加载的特定模型来调整 `pretrained_model_name_or_path` 参数。配置对象包含了有关模型的详细信息,您可以使用它来构建模型或进行其他相关任务。
AutoTokenizer.from_pretrained()
是 Hugging Face Transformers 库中的一个方法,用于加载预训练的文本处理模型(Tokenizer),以便将文本数据转换为模型可以接受的输入格式。这个方法接受多个参数,以下是这些参数的详细说明:
1. pretrained_model_name_or_path
(str):
- 这是最重要的参数,指定要加载的预训练模型的名称或路径。可以是模型名称(例如 "bert-base-uncased")或模型文件夹的路径。
2. inputs (additional positional arguments, *optional*)
-它表示额外的位置参数,这些参数会传递给标记器(Tokenizer)的__init__()
方法。这允许你进一步自定义标记器的初始化。
3. config ([`PretrainedConfig`], *optional*)
-这个配置对象用于确定要实例化的分词器类。
4.cache_dir
(str, optional):
- 用于缓存模型文件的目录路径
5. **force_download** (bool, optional):
- 如果设置为 `True`,将强制重新下载模型配置,覆盖任何现有的缓存。
6. **resume_download** (bool, optional):
- 这是可选参数,如果设置为 True
,则在下载过程中重新开始下载,即使部分文件已经存在。
7. **proxies** (`Dict[str, str]`, *optional*)
- proxies(可选参数):这是一个字典,用于指定代理服务器的设置。代理服务器允许您在访问互联网资源时通过中继服务器进行请求,这对于在受限网络环境中使用 Transformers 库来加载模型配置信息非常有用。
proxies = { "http": "http://your_http_proxy_url", "https": "https://your_https_proxy_url" }
8. **revision** (str, optional):
- 指定要加载的模型的 Git 版本(通过提交哈希)。
9. **subfolder** (`str`, *optional*)
-如果相关文件位于 huggingface.co 模型仓库的子文件夹内(例如 facebook/rag-token-base),请在这里指定。
10. **use_fast** (`bool`, *optional*, defaults to `True`)
-这是一个布尔值,指示是否强制使用 fast tokenizer,即使其不支持特定模型的功能。默认为 True
。
11. **tokenizer_type** (`str`, *optional*)
- 参数用于指定要实例化的分词器的类型
12. **trust_remote_code** (`bool`, *optional*, defaults to `False`)
trust_remote_code=True
:
trust_remote_code
设置为 True
。这意味着当您使用 from_pretrained()
方法加载模型配置文件时,它将下载来自 Hugging Face 模型中心或其他在线资源的配置文件。这是一个方便的默认行为,因为通常这些配置文件是由官方提供的,且是可信的。trust_remote_code=False
:
如果您将 trust_remote_code
设置为 False
,则表示您不信任从远程下载的配置文件,希望加载本地的配置文件。这对于安全性或定制性要求较高的场景可能是有用的。
在这种情况下,您需要提供一个本地文件路径,以明确指定要加载的配置文件
总之,trust_remote_code
参数允许您在使用 Hugging Face Transformers 库时控制是否信任从远程下载的配置文件。默认情况下,它被设置为 True
,以方便加载官方提供的配置文件,但您可以将其设置为 False
并提供本地配置文件的路径,以进行更精细的控制。
- Examples:
-
- ```python
- >>> from transformers import AutoTokenizer
-
- >>> # Download vocabulary from huggingface.co and cache.
- >>> tokenizer = AutoTokenizer.from_pretrained("bert-base-uncased")
-
- >>> # Download vocabulary from huggingface.co (user-uploaded) and cache.
- >>> tokenizer = AutoTokenizer.from_pretrained("dbmdz/bert-base-german-cased")
-
- >>> # If vocabulary files are in a directory (e.g. tokenizer was saved using *save_pretrained('./test/saved_model/')*)
- >>> tokenizer = AutoTokenizer.from_pretrained("./test/bert_saved_model/")
-
- >>> # Download vocabulary from huggingface.co and define model-specific arguments
- >>> tokenizer = AutoTokenizer.from_pretrained("roberta-base", add_prefix_space=True)
AutoModel.from_pretrained()
是 Hugging Face Transformers 库中的一个函数,用于加载预训练的深度学习模型。它允许你加载各种不同的模型,如BERT、GPT-2、RoBERTa 等,而无需为每个模型类型编写单独的加载代码。以下是 AutoModel.from_pretrained()
函数的主要参数:
1. pretrained_model_name_or_path (str):
- 这是一个字符串参数,用于指定要加载的预训练模型的名称或路径。可以是模型的名称(如 "bert-base-uncased")或模型文件夹的路径。
2. *model_args
- 直接传参的方式,传入配置项,例如,我们将编码器层数改为3层
model = AutoModel.from_pretrained("./models/bert-base-chinese", num_hidden_layers=3)
加载模型时,指定配置类实例
model = AutoModel.from_pretrained("./models/bert-base-chinese", config=config)
3.
**trust_remote_code** (`bool`, *optional*, defaults to `False`)
trust_remote_code=True
:
trust_remote_code
设置为 True
。这意味着当您使用 from_pretrained()
方法加载模型配置文件时,它将下载来自 Hugging Face 模型中心或其他在线资源的配置文件。这是一个方便的默认行为,因为通常这些配置文件是由官方提供的,且是可信的。trust_remote_code=False
:
如果您将 trust_remote_code
设置为 False
,则表示您不信任从远程下载的配置文件,希望加载本地的配置文件。这对于安全性或定制性要求较高的场景可能是有用的。
在这种情况下,您需要提供一个本地文件路径,以明确指定要加载的配置文件
总之,trust_remote_code
参数允许您在使用 Hugging Face Transformers 库时控制是否信任从远程下载的配置文件。默认情况下,它被设置为 True
,以方便加载官方提供的配置文件,但您可以将其设置为 False
并提供本地配置文件的路径,以进行更精细的控制。
hub_kwargs_names = [ "cache_dir", #同上面 "force_download",#同上面 "local_files_only", "proxies", #同上面 "resume_download", #同上面 "revision", #同上面 "subfolder", #同上面 "use_auth_token", ]
local_files_only:
如果设置为True,将只尝试从本地文件系统加载模型。如果本地文件不存在,它将不会尝试从Hugging Face模型存储库下载模型文件。如果本地存在模型文件,它将从本地加载。如果设置为False(默认值),它将首先尝试从本地加载,如果本地不存在模型文件,它将尝试从Hugging Face模型存储库下载模型文件并缓存到本地,然后加载。
- from transformers import AutoModel
-
- model = AutoModel.from_pretrained("bert-base-uncased", local_files_only=True)
详解 use_auth_token
参数:
默认值:use_auth_token
参数的默认值通常为 None
,这意味着在默认情况下不使用身份验证令牌。
作用:Hugging Face Model Hub 上的一些模型可能需要身份验证令牌才能访问。这通常是因为模型的创建者希望对其进行访问控制,或者出于其他原因需要进行身份验证。如果模型需要身份验证令牌,你可以在 use_auth_token
参数中提供有效的令牌,以便在下载模型时使用。
获取身份验证令牌:要获得有效的身份验证令牌,你需要注册并登录到 Hugging Face Model Hub,然后访问你的个人配置文件(profile),那里会提供一个 API 令牌(API token),你可以将其用作 use_auth_token
的值。
- from transformers import AutoModel
-
- # 使用身份验证令牌来加载模型
- model = AutoModel.from_pretrained('model_name', use_auth_token='your_auth_token')
-
大多数模型不需要身份验证令牌,并且可以在不提供 use_auth_token
参数的情况下加载。只有在你确实需要进行身份验证才需要使用此参数。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。