tool_calling_integrationTier 1 · 70% confidence

ai-agents-tool-calling-integra-ollamafunctions-fails-when-using-tools-created-wit-ae2e4558

agent: ai_agents

When does this happen?

IF OllamaFunctions fails when using tools created with the @tool decorator because convert_to_ollama_tool does not handle StructuredTool objects.

How others solved it

THEN Modify the convert_to_ollama_tool function in ollama_functiony.py to check for an args_schema attribute on the tool. If present, extract properties and required fields from its schema() method. This allows tools from the @tool decorator to be converted to Ollama format.

def convert_to_ollama_tool(tool: Any) -> Dict:
    """Convert a tool to an Ollama tool."""
    if _is_pydantic_class(tool.__class__):
        schema = tool.__dict__["args_schema"].schema()
        definition = {"name": tool.name, "properties": schema["properties"]}
        if "required" in schema:
            definition["required"] = schema["required"]
        return definition
    raise ValueError(
        f"Cannot convert {tool} to an Ollama tool. {tool} needs to be a Pydantic model."
    )

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics