From 55e0bdec18e48885399db4c4cb3bb556092add6f Mon Sep 17 00:00:00 2001 From: lorenzejay Date: Wed, 9 Apr 2025 16:32:33 -0700 Subject: [PATCH] feat: enhance LangGraphToolAdapter and improve conversion instructions - Added type hints for better clarity and type checking in LangGraphToolAdapter. - Updated conversion instructions to ensure compatibility with optional LLM checks. --- .../agent_adapters/langgraph/langgraph_tool_adapter.py | 5 +++++ src/crewai/utilities/converter.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/crewai/agents/agent_adapters/langgraph/langgraph_tool_adapter.py b/src/crewai/agents/agent_adapters/langgraph/langgraph_tool_adapter.py index c544e32e5..f82749283 100644 --- a/src/crewai/agents/agent_adapters/langgraph/langgraph_tool_adapter.py +++ b/src/crewai/agents/agent_adapters/langgraph/langgraph_tool_adapter.py @@ -1,3 +1,8 @@ +from typing import Any, List, Optional + +from crewai.tools.base_tool import BaseTool + + class LangGraphToolAdapter: """Adapts CrewAI tools to LangGraph-compatible format""" diff --git a/src/crewai/utilities/converter.py b/src/crewai/utilities/converter.py index b16677ace..120b6a028 100644 --- a/src/crewai/utilities/converter.py +++ b/src/crewai/utilities/converter.py @@ -216,7 +216,7 @@ def convert_with_instructions( def get_conversion_instructions(model: Type[BaseModel], llm: Any) -> str: instructions = "Please convert the following text into valid JSON." - if llm.supports_function_calling(): + if llm and llm.supports_function_calling(): model_schema = PydanticSchemaParser(model=model).get_schema() instructions += ( f"\n\nOutput ONLY the valid JSON and nothing else.\n\n"