Pydantic 2 is stricter in terms of which field names are allowed in
pydantic models.
This PR results in the following breaking changes:
These will raise ValueErrors:
```python
ChatPromptTemplate([("system", "{_private}")]).get_input_schema()
ChatPromptTemplate([("system","{model_json_schema}")]).get_input_schema()
```
This PR should properly suppress warnings for the following cases:
```python
ChatPromptTemplate([("system", "{schema}")]).get_input_schema()
ChatPromptTemplate([("system","{model_id}")]).get_input_schema()
```