Explora las mejores librerías open-source para llamadas a funciones (function calling) con LLMs. Compara los mejores frameworks por actividad y funcionalidades para encontrar la opción ideal para tu proyecto.
Outlines is a guided generation framework designed to enforce structural constraints on large language model output in real time. It serves as a structured output generator that ensures model responses adhere to predefined JSON schemas, regular expressions, or fixed sets of choices to produce predictable and parsable results. The project provides an interface for tool calling by extracting structured function parameters from natural language prompts for programmatic execution. It also includes a prompt templating engine that decouples prompt logic from application code through reusable templa
Outlines is a Python guided-generation framework that enforces structured output and supports tool calling via function parameter extraction from natural language, directly matching the need to learn and integrate function calling with real LLMs.
Swarm is a framework for building conversational systems that coordinate multi-agent workflows. It functions as an orchestration engine that manages persistent, multi-turn dialogues by routing tasks between specialized agents and executing local functions. The system is designed to handle complex, multi-step processes by maintaining shared state and context across agent interactions. The framework distinguishes itself through its approach to dynamic task delegation and execution control. It enables agents to hand off tasks to one another by returning agent objects, allowing for modular, domai
Swarm is a Python framework from OpenAI that orchestrates multi-agent workflows through function calling, providing tool definitions, structured output handling, and real LLM integration—directly fitting the goal of learning or implementing LLM tool use.
This repository is a reference implementation and guided tutorial for building an AI coding agent that combines conversational interaction with file system manipulation and sandboxed shell execution. The agent uses a large language model as its core decision-making component, operating within a turn-based conversational loop where it can generate responses or invoke tools, and tool results are fed back into the dialogue. It provides primitives for reading, writing, and listing files on the local filesystem, as well as searching code using regular expressions. The agent’s capabilities are exte
This repository is a guided tutorial and reference implementation for building an AI coding agent that uses LLM-driven tool calls (file operations, shell execution) in a conversational loop, making it a practical example of function calling. However, it is written in Go rather than Python, so it does not directly satisfy the Python implementation preference you listed.
Gorilla is a foundational infrastructure framework for large language model function calling. It provides a system for training, evaluating, and executing the translation of natural language instructions into accurate API calls and executable code. The project integrates a structured API documentation index, a fine-tuning pipeline for model adaptation, and a secure sandboxed action runtime for executing model-generated commands. The framework distinguishes itself through a specialized evaluation benchmark suite that measures the accuracy, cost, and latency of function calls. It includes tools
Gorilla is a full framework for LLM function calling that includes training, evaluation, and a sandboxed execution environment, making it a strong resource for learning or integrating function calling, though it focuses more on the infrastructure than a simple demo with OpenAI's API.
Outlines is a guided text generation framework and structured output engine for large language models. It enforces precise structural constraints on model output during the sampling process to ensure the generation of valid data. The framework ensures that model outputs strictly adhere to predefined data models, including JSON schemas, regular expressions, and formal grammars. This enables the conversion of natural language inputs into structured arguments for function calling and the generation of valid JSON for downstream processing. The system manages model orchestration through prompt te
Outlines is a Python framework that enforces structural constraints on LLM outputs, enabling function calling by converting natural language into structured arguments for tool use—making it a solid fit for learning and integrating this pattern.
CopilotKit is an agentic framework designed to integrate large language models into application frontends, enabling natural language control over software features and data. It provides the infrastructure to build intelligent assistants that manage conversation history, track application state, and execute complex workflows through conversational prompts. The framework distinguishes itself by its ability to render dynamic, interactive user interface components in real time based on model outputs. By utilizing a standardized communication protocol, it maps natural language intents to executabl
CopilotKit is a TypeScript framework for building agentic LLM interfaces with tool calling, but it is not Python-based, so while it fits the category of function calling toolkit, it may not serve the visitor's need for Python-specific learning or integration.
OpenHands is an autonomous agent framework designed for software engineering workflows. It provides a modular platform for orchestrating AI agents that reason, plan, and execute tasks within isolated, containerized development environments. By integrating with standard version control and development tools, the system enables agents to autonomously navigate codebases, implement features, and resolve issues through iterative reasoning and tool execution. The platform distinguishes itself through a model-agnostic orchestrator that connects diverse language models to a unified tool registry. It
OpenHands is a full-fledged autonomous agent framework with a model-agnostic orchestrator and unified tool registry, directly implementing LLM function calling (tool use) in Python, covering multiple tool definitions, structured output parsing, async support, and real-world LLM integration—exactly the kind of toolkit this search targets for learning or integration.
Langroid is a multi-agent orchestration framework and tool integration suite designed for building complex AI applications. It serves as a multi-modal integration layer that connects diverse local and remote language models with an agentic retrieval-augmented generation system. The project distinguishes itself through a collaborative message-exchange paradigm, allowing specialized agents to delegate tasks hierarchically and coordinate via structured communication. It features an advanced state management system for conversational AI, including the ability to rewind and prune conversation hist
Langroid is a multi-agent orchestration framework in Python that natively implements function calling with LLMs, offering multiple tool definitions, structured output parsing, and demonstration with real models like GPT-4, making it a comprehensive toolkit for learning or integrating function calling.
Genkit is an LLM application framework and generative AI developer toolkit designed for building production AI applications. It serves as an AI workflow orchestrator that coordinates model calls and agentic tool usage through type-safe execution flows. The project provides a unified model interface and plugin architecture to standardize access to diverse large language models, vector stores, and telemetry backends. It distinguishes itself with a dedicated observability suite for tracing execution steps and a developer toolkit for prompting, debugging, and evaluating AI logic via a local inter
Genkit is a full LLM application framework with built-in tool-use and function-calling orchestration, but its TypeScript implementation means it won't serve the Python-focused examples and integration the visitor is after.
This project is an LLM autonomous agent framework and orchestration tool designed to build goal-driven agents that automate complex workflows. It functions as a system for converting high-level objectives into a series of autonomous actions and managing the coordination of multiple specialized agents to solve multi-step problems. The framework features a tool integration layer that parses structured model outputs into executable functions and external API calls. It utilizes a non-blocking execution pipeline to manage task orchestration through recursive loops and asynchronous event handling.
This is an LLM autonomous agent framework that includes a tool integration layer for parsing structured model outputs into executable functions, with async support and multi-tool orchestration, fitting the function-calling focus even though it is a broader orchestration system rather than a simple demonstration.
LangChain is an orchestration framework designed for building, managing, and deploying applications powered by large language models. It provides a unified integration layer that normalizes disparate model provider APIs into a consistent set of primitives, enabling developers to build complex, multi-step AI workflows that manage state, memory, and tool execution. The project distinguishes itself through a durable execution runtime that maintains persistent state across long-running processes by checkpointing progress to external storage. It models agent workflows as directed graphs, allowing
LangChain is a comprehensive Python framework for building LLM-powered applications with native tool execution and agent workflows, directly implementing OpenAI function calling, structured output via Pydantic, and async support—making it an ideal resource to integrate or learn from for function-calling use cases.
This project is a technical learning resource and developer knowledge base focused on the integration of large language models into software applications. It provides a structured collection of guides and code examples designed to teach developers how to implement intelligent features using proven patterns and best practices. The repository distinguishes itself through a library of functional demonstrations that cover complex topics such as retrieval-augmented generation, function calling, and prompt engineering workflows. These materials are organized into a modular structure, allowing for t
This is the official OpenAI cookbook containing extensive Jupyter Notebook examples that demonstrate function calling with the OpenAI API, including multiple tool definitions, structured output parsing, and real model usage, making it an ideal learning resource for integrating LLM function calling.
openai-go is an LLM SDK for Go and a client for interacting with OpenAI services. It provides type-safe bindings to generate text, images, and audio via REST endpoints, enabling the integration of large language models and AI assistant orchestration into Go applications. The library serves as an agent orchestration tool for managing stateful conversation threads and autonomous agents with integrated tool calling and file search. It also functions as an asynchronous batch processing client for monitoring large-scale request groups and fine-tuning jobs, alongside a management SDK for controllin
openai-go is the official Go client SDK for OpenAI, providing tool calling and agent orchestration directly through its API, which matches the function-calling toolkit category — however, it is in Go rather than Python, so it narrowly fits the listed preference for a Python implementation.
Koog is an LLM agent framework used to build autonomous entities that execute tool-based workflows. It utilizes a graph-based workflow engine to define agent behaviors and decision paths as a directed graph of nodes and edges. The framework distinguishes itself through a model provider orchestrator that enables dynamic switching, load balancing, and automatic fallbacks between different AI backends. It implements the Model Context Protocol to connect agents to remote tool servers and features a RAG memory system using vector embeddings to maintain long-term conversation context. The project
Koog is a full agent framework for building tool-based LLM workflows, supporting multiple providers and the Model Context Protocol, making it a genuine toolkit for function calling — but it is implemented in Kotlin/JVM rather than Python, so it may not fit if you need a Python-specific solution.
This framework provides a development toolkit for building autonomous agents that utilize language models to solve complex, non-deterministic tasks. Its core design centers on a code-executing architecture where agents generate and run Python code snippets to perform logic, data manipulation, and tool interactions. By moving beyond structured data formats, the system enables agents to manage program flow and object state through iterative reasoning cycles. The project distinguishes itself through its focus on code-based agent implementation and secure execution environments. Developers can ch
huggingface/smolagents is a Python framework for building autonomous agents that use LLMs to interact with tools via code execution, fitting the search for a function-calling toolkit with multiple tool definitions and real model integrations.
Composio is an integration platform designed to connect autonomous agents with external software services and APIs. It functions as a tool orchestration framework and a middleware hub, providing a unified interface for managing the lifecycle, authentication, and execution of external tool definitions within agentic workflows. The platform distinguishes itself by utilizing the Model Context Protocol to standardize communication between artificial intelligence models and external data sources. It employs a provider-agnostic adapter pattern to decouple core logic from specific model providers an
Composio is a function-calling orchestration platform for connecting agents to external tools, fitting the toolkit category, but its primary language is TypeScript—not Python—so it only partially meets the Python implementation feature and may be more infrastructure than a simple learning example.
LlamaIndex is a comprehensive development framework designed to connect private or external data sources to large language models. It functions as a data-centric toolkit that enables the construction of retrieval-augmented generation systems, allowing developers to build applications that provide context-aware answers based on specific organizational information. The project distinguishes itself through a robust agentic orchestration engine that supports the creation of autonomous agents capable of multi-step reasoning, memory management, and complex tool execution. Beyond simple retrieval, i
LlamaIndex is a Python framework that enables building autonomous agents capable of using and orchestrating multiple tools with LLMs, supporting OpenAI function calling, structured output parsing, and async execution, so it fits the search for a function-calling toolkit to learn from or integrate.
Qwen-Agent is a development framework for building autonomous software applications that leverage large language models to plan, reason, and execute complex tasks. It functions as an orchestration engine that enables models to interact with external APIs, manage persistent memory, and maintain context across multi-step workflows. The framework distinguishes itself through a multi-agent collaboration platform that allows independent agent instances to exchange structured messages and delegate sub-tasks to one another. By utilizing iterative reasoning loops and dynamic prompt injection, the sys
Qwen-Agent is a Python framework for building autonomous LLM applications with tool orchestration, making it a relevant toolkit for implementing function calling, though its focus is more on multi-agent collaboration than the OpenAI API specifically.