Fix NoneType error in convert_with_instructions when agent is None

- Add None check for agent parameter before accessing attributes
- Return original result with error message when agent is None
- Add comprehensive tests covering None agent scenarios
- Fixes GitHub issue #3017

Co-Authored-By: João <joao@crewai.com>
This commit is contained in:
Devin AI
2025-06-16 21:08:19 +00:00
parent db1e9e9b9a
commit dc4eb901e8
2 changed files with 67 additions and 0 deletions

View File

@@ -190,6 +190,13 @@ def convert_with_instructions(
agent: Any,
converter_cls: Optional[Type[Converter]] = None,
) -> Union[dict, BaseModel, str]:
if agent is None:
Printer().print(
content="Failed to convert text into a Pydantic model: No agent available for conversion. Using raw output instead.",
color="red",
)
return result
llm = agent.function_calling_llm or agent.llm
instructions = get_conversion_instructions(model, llm)
converter = create_converter(