You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从Langchain加载Hugging Face Pipeline时遇PydanticUserError求助

解决Langchain加载Hugging Face Pipeline时的PydanticUserError错误

我在尝试从Langchain加载Hugging Face Pipeline时遇到以下错误:

PydanticUserError: If you use @root_validator with pre=False (the default) you MUST specify skip_on_failure=True. Note that @root_validator is deprecated and should be replaced with @model_validator.

我尝试了以下解决方案,但问题仍未解决:

from pydantic import BaseModel, validator

class HuggingFacePipeline(BaseModel):
    # Existing code...

    @validator("*", pre=True)
    def check_skip_on_failure(cls, value):
        return value

    # Existing code...

正确修复方案

错误根源是Pydantic v2版本废弃了@root_validator,要求改用@model_validator,且原方案用的@validator无法替代根验证器的作用。修改代码如下:

from pydantic import BaseModel, model_validator

class HuggingFacePipeline(BaseModel):
    # 原有代码...

    @model_validator(mode="before")  # 对应旧版的pre=True
    def check_skip_on_failure(cls, values):
        # 保留你的验证逻辑,无特殊需求直接返回values即可
        return values

    # 原有代码...

关键说明

  1. Pydantic v2中@model_validator替代了@root_validator,mode="before"表示在字段验证前处理整个输入数据字典,和旧版pre=True的作用一致。
  2. 若你的Langchain版本过低,可能存在与Pydantic v2的兼容性问题,执行以下命令升级Langchain:
    pip install --upgrade langchain
    

内容的提问来源于stack exchange,提问作者Abdul Basit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 06:01:03