自定义模型继承 Hugging 的 PreTrainedModel

问题背景

使用 HuggingFace 的 Trainer 进行训练,自定义模型继承 PreTrainedModel,希望能够通过 from_pretrained 容易地实现:从上次保存的 checkpoint 处继续训练。

问题描述

复制代码
Traceback (most recent call last):
  File "D:\PycharmProjects\gaze\SPIGA\train\train.py", line 60, in <module>
    .from_pretrained('checkpoint-1175')
  File "D:\Anaconda3\envs\transformers\lib\site-packages\transformers\modeling_utils.py", line 2535, in from_pretrained
    config, model_kwargs = cls.config_class.from_pretrained(
AttributeError: 'NoneType' object has no attribute 'from_pretrained'

问题分析

问题定位为:cls.config_class 为 None,结果导致 'NoneType' object has no attribute 'from_pretrained'

问题解决

自定义模型时,声明 config_class

python 复制代码
from transformers.configuration_utils import PretrainedConfig
from transformers.modeling)utils import PreTrainedModel

class CustomModel(PreTrainedModel):
	# 注意 1:在这里声明 config_class
    config_class = PretrainedConfig
    # 注意 2:重写的 __init__ 方法需要有 config 参数,不然会报错
    def __init__(self, config=PretrainedConfig(), num_landmarks=98, num_edges=15, steps=3, **kwargs):
        super().__init__(config=config)
        # .......
相关推荐
阿文的代码库4 分钟前
机器学习任务二分类的应用案例
人工智能·机器学习·分类
hixiong1235 分钟前
C# LLamaSharp部署大语言模型实例
人工智能·语言模型·自然语言处理
morning_judger11 分钟前
Agent开发系列(八)-组织知识库建设
人工智能
HERR_QQ11 分钟前
端到端课程自用 8 规划 端到端与VLA 世界模型 RL的关系
人工智能·深度学习·自动驾驶·transformer
小江的记录本12 分钟前
【Spring全家桶】Spring AI核心原理、大模型集成、Prompt工程、RAG实现、AI Agent开发(附《思维导图》+《面试高频考点清单》)
java·人工智能·spring boot·后端·spring·面试·prompt
jiayong2317 分钟前
AI工作流实现原理深度解析
人工智能·comfyui·工作流·coze
用户51914958484517 分钟前
Nortek Linear eMerge E3 预认证远程代码执行漏洞利用工具
人工智能·aigc
魔鬼_18 分钟前
Accelerating Oil & Gas Digital Tools with AI Code Generation
人工智能
tyler_download19 分钟前
揉扁搓圆transformer架构:交叉熵损失函数
人工智能·深度学习·transformer
余俊晖20 分钟前
多模态文档解析后处理开源模型:MinerU-Popo方案思路提升RAG性能
人工智能·ocr·多模态