community[patch]: Use get_fields adapter for pydantic (#25191)

Change all usages of __fields__ with get_fields adapter merged into
langchain_core.

Code mod generated using the following grit pattern:

```
engine marzano(0.1)
language python


`$X.__fields__` => `get_fields($X)` where {
    add_import(source="langchain_core.utils.pydantic", name="get_fields")
}
```
This commit is contained in:
Eugene Yurtsev
2024-08-08 14:43:09 -04:00
committed by GitHub
parent 663638d6a8
commit 98779797fe
24 changed files with 51 additions and 28 deletions

View File

@@ -8,6 +8,7 @@ from langchain_core.language_models.llms import LLM
from langchain_core.outputs import GenerationChunk
from langchain_core.pydantic_v1 import Field, root_validator
from langchain_core.utils import get_from_dict_or_env, pre_init
from langchain_core.utils.pydantic import get_fields
if TYPE_CHECKING:
from replicate.prediction import Prediction
@@ -75,7 +76,7 @@ class Replicate(LLM):
@root_validator(pre=True)
def build_extra(cls, values: Dict[str, Any]) -> Dict[str, Any]:
"""Build extra kwargs from additional params that were passed in."""
all_required_field_names = {field.alias for field in cls.__fields__.values()}
all_required_field_names = {field.alias for field in get_fields(cls).values()}
input = values.pop("input", {})
if input: