Tool-Use / Function Calling
Tool-use and function calling is the capability that allows large language models (LLMs) to invoke external functions, APIs, or services during inference by emitting structured JSON describing what to call and with what arguments. The application executes the actual function and returns the result to the model, enabling it to take real-world actions such as querying databases, calling web APIs, running code, or retrieving live data. Modern providers including OpenAI, Anthropic, and Google all expose this capability natively in their APIs, and it is the foundational mechanism behind autonomous AI agents.
Virtually every production AI agent today is built on tool-use: without it, a model is limited to its training data and cannot interact with external systems, retrieve live information, or execute actions. Companies building agentic products—customer-facing assistants, coding agents, data pipelines, and enterprise automations—require engineers who can design robust tool schemas, handle multi-turn tool loops, and debug failure modes in tool-calling workflows. Mastery of this skill is increasingly a hard prerequisite for roles in AI engineering, agent infrastructure, and LLM application development.
🎓 Courses
Function-Calling and Data Extraction with LLMs
by DeepLearning.AI
The most focused short course on this exact skill: covers single and parallel function calls, OpenAPI-spec-based tool definitions, nested calls, and builds a real data-extraction pipeline. Free, completable in under 2 hours.
Functions, Tools and Agents with LangChain
by DeepLearning.AI
Covers ChatGPT function calling through LangChain Expression Language, including tagging, data extraction, tool selection, and routing. Teaches how agents chain tool calls in LangChain's agentic loop.
Fundamentals of Building AI Agents
by IBM
Accessible introduction to tool calling and chaining with LangChain, showing how LLMs trigger tool use via LCEL and how to implement manual tool calling for precise control.
Function Calling in the OpenAI API
by OpenAI
The canonical reference for OpenAI tool-calling: covers strict mode, parallel calls, JSON Schema constraints, the Responses API, and the deprecation path from functions to tools. Free and always up-to-date.
AI Function Calling Guide: OpenAI, Anthropic, Google
by Digital Applied
A practical cross-provider guide comparing how OpenAI, Anthropic, and Google implement function calling, including structural differences (tool role vs tool_result blocks) and multi-provider abstraction patterns.
📖 Books
AI Agents in Action
Micheal Lanham · 2025
Practical Manning title (February 2025) covering autonomous agent design, multi-agent orchestration, and tool-use patterns including ReAct and planning loops. Directly addresses how tool calling fits into production agent architectures.
Building Applications with AI Agents
Michael Albada · 2024
O'Reilly book covering agentic frameworks (LangGraph, AutoGen, CrewAI, OpenAI Agents SDK) with a framework-level treatment of when and how to use tool calling across different orchestration systems.
AI Agents: The Definitive Guide
Various (O'Reilly) · 2024
Covers structured reasoning and action, advanced agent paradigms (supervisor, hierarchical, swarm), and how tool-use integrates into state-machine and hierarchical agent designs.
🛠️ Tutorials & Guides
Function Calling in the OpenAI API — Official Help Center
Authoritative walkthrough of function calling mechanics in the OpenAI API, including the five-step conversation flow, strict mode, parallel calls, and the migration from the deprecated functions parameter to tools.
AI Agent Tutorial 3: Tool Calling
Concise step-by-step tutorial showing the full tool-calling loop in Python: defining tools, parsing LLM responses, executing functions, and feeding results back. Good for hands-on beginners.
Function Calling and Tool Use: Turning LLMs into Action-Taking Agents
Explains the conceptual distinction between function calling and tool use, with practical code comparing OpenAI and Anthropic implementations. Useful for engineers working across multiple provider SDKs.
Learning resources last updated: June 18, 2026