V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Redish101
V2EX  ›  问与答

求助:使用 Hugingface Transformers 框架时的 SSL Error

  •  
  •   Redish101 · 2023-12-25 19:58:54 +08:00 · 780 次点击
    这是一个创建于 369 天前的主题,其中的信息可能已经有所发展或是发生改变。
    对于如下代码
    ``` python
    import ssl
    ssl._create_default_https_context = ssl._create_unverified_context

    from datasets import load_dataset

    dataset = load_dataset("yelp_review_full")
    dataset["train"][100]

    from transformers import AutoTokenizer

    tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")

    def tokenize_function(examples):
    return tokenizer(examples["text"], padding="max_length", truncation=True)

    tokenized_datasets = dataset.map(tokenize_function, batched=True)

    from transformers import AutoModelForSequenceClassification

    model = AutoModelForSequenceClassification.from_pretrained("bert-base-cased", num_labels=5)

    from transformers import TrainingArguments

    training_args = TrainingArguments(output_dir="test_trainer")
    ```
    我在使用 transformers 框架时出现了 ssl 问题,如下:
    ```
    Traceback (most recent call last):
    File "/Users/luojiayun/Desktop/transformers/rerate_chn.py", line 6, in <module>
    dataset = load_dataset("yelp_review_full")
    File "/Users/luojiayun/anaconda3/lib/python3.10/site-packages/datasets/load.py", line 2519, in load_dataset
    builder_instance = load_dataset_builder(
    File "/Users/luojiayun/anaconda3/lib/python3.10/site-packages/datasets/load.py", line 2192, in load_dataset_builder
    dataset_module = dataset_module_factory(
    File "/Users/luojiayun/anaconda3/lib/python3.10/site-packages/datasets/load.py", line 1843, in dataset_module_factory
    raise e1 from None
    File "/Users/luojiayun/anaconda3/lib/python3.10/site-packages/datasets/load.py", line 1779, in dataset_module_factory
    raise ConnectionError(f"Couldn't reach '{path}' on the Hub ({type(e).__name__})")
    ConnectionError: Couldn't reach 'yelp_review_full' on the Hub (SSLError)
    ```
    根据 StackOverflow 上的方法,我在代码头部新增了:
    ```
    import ssl
    ssl._create_default_https_context = ssl._create_unverified_context
    ```
    但无法解决问题。
    我使用了 dev-sidecar ,已经按照提示添加了根证书,是否与此有关?
    若不是,请问有没有朋友能够指明解决方法,感激不尽。
    gzxwhut
        1
    gzxwhut  
       2023-12-26 09:48:17 +08:00
    1.大概率是网络问题,挂下梯子试一下 2.dataloader 支持本地文件,你可以手动把 dataset 拉下来放本地,load 的时候改成本地磁盘物理地址
    ssguozz
        2
    ssguozz  
       2023-12-26 10:28:53 +08:00
    初步猜测是 Hugingface 的网络问题,建议手动下载数据集和模型到本地,再指定加载本地目录
    Redish101
        3
    Redish101  
    OP
       2023-12-26 19:09:04 +08:00
    请问有无不用下载到本地的解决办法
    Redish101
        4
    Redish101  
    OP
       2023-12-26 19:10:11 +08:00
    @gzxwhut huggingface 在浏览器和终端环境下均能联通,应该是单纯的 ssl 问题,我尝试禁用 ssl 验证,但是似乎没有效果
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   907 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 22:18 · PVG 06:18 · LAX 14:18 · JFK 17:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.