python config_error ai_generated true

pydantic.errors.ConfigError: Recursion error in model definition

ID: python/pydantic-recursive-model-loop

Also available as: JSON · Markdown · 中文
80%Fix Rate
84%Confidence
0Evidence
2024-05-01First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
2.x active

Root Cause

A model references itself directly or indirectly without using ForwardRef or proper typing, causing infinite recursion during schema generation.

generic

中文

模型直接或间接引用自身,但未使用 ForwardRef 或正确类型提示,导致模式生成时无限递归。

Workarounds

  1. 90% success
    Use forward reference: child: Optional['Model'] = None
  2. 85% success
    Use model_rebuild() after definition

Dead Ends

Common approaches that don't work:

  1. 70% fail

    Type is not resolved at definition time.

  2. 80% fail

    Causes circular import and recursion.