Fixes#4419. When an invalid type (e.g. a string) was passed for a field
that expects a Pydantic model like BaseAgent, the process_config function
would crash with AttributeError: 'str' object has no attribute 'get'.
Now process_config raises ValueError for non-dict inputs, which Pydantic
wraps into a proper ValidationError with a clear message like:
'BaseAgent expected a mapping/dictionary, got str'
Co-Authored-By: João <joao@crewai.com>