Skip to content

Latest commit

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Comprehensive Reviews into Function Calling in Large Language Models

An index of concepts, frameworks, and methodologies in:

  • Function Calling Pipeline: Understanding the entire process from pre-call to post-call stages
  • Sample Construction & Fine-tuning: Building effective training datasets and optimizing models
  • Deployment & Inference: Practical implementation strategies for real-world applications
  • Evaluation Frameworks: Benchmarks and metrics for assessing function calling capabilities

Reproducibility is important! We prioritize methods with open-source implementations.

Please cite our survey paper if this index is helpful:

@article{wang2025comprehensive,
title={Function Calling in Large Language Models: Industrial Practices, Challenges, and Future Direction},
author={Wang, Maolin and Zhang, Yingyi and Peng, Cunyin and Chen, Yicheng and Zhou, Wei and Gu, Jinjie and Zhuang, Chenyi and Guo, Ruocheng and Yu, Bowen and Wang, Wanyu and Zhao, Xiangyu},
journal={ACM Computing Surveys},
year={2026},
publisher={ACM New York, NY, USA},
url={https://dl.acm.org/doi/pdf/10.1145/3788284},
doi={10.1145/3788284}
}

Table of Contents

A comprehensive overview of the function calling system pipeline, showing the progression from natural language input through preprocessing, inference, and post-processing phases to executable function outputs.

Function calling capabilities in LLMs follow a three-stage workflow consisting of pre-call processing, on-call execution, and post-call validation.

Challenges

Pre-call Stage

ChallengeDescription
Challenge 1.1: Intent RecognitionUnderstanding user intentions accurately from natural language queries
Challenge 1.2: Function RedundancyManaging redundant functions that serve similar purposes, increasing selection complexity

On-call Stage

ChallengeDescription
Challenge 2.1: Missing CallsFailure to initiate function calls when required for task completion
Challenge 2.2: Unnecessary CallsTriggering function calls when not required by the user's task
Challenge 3.1: Missing/Illegal ParametersInadequate or inappropriate parameter extraction from user inputs
Challenge 3.2: Function HallucinationMistakenly calling non-candidate or non-existent functions
Challenge 3.3: Pronouns ResolvingCorrectly interpreting contextual references and pronouns in queries
Challenge 3.4: LLM Inherent LimitationsPerformance constraints in latency and accuracy due to model architecture
Challenge 3.5: Multi-Call ProcedureManaging complex workflows requiring multiple related function calls
Challenge 3.6: Effective Context ManagementMaintaining relevant information across multi-turn conversations

Post-call Stage

ChallengeDescription
Challenge 4.1: Execution Result MismatchFunction outputs not aligning with user expectations
Challenge 4.2: Irrelevant Information OverloadExcessive irrelevant information in function outputs
Challenge 4.3: Mismatch Between Real-World Functions and ResultsGap between LLM-generated outputs and executable code
Challenge 4.4: Execution FailureFunctions failing despite correct triggering and parameterization

Illustration of the fine-tuning process for function calling capabilities in large language models, showing the progression from training data preparation through model training to evaluation.

The training process involves specialized data preparation and fine-tuning strategies to equip models with function calling capabilities while maintaining general language understanding.

Sample Construction and Fine-Tuning

Function Collection

MethodDescription
Manual ConstructionHuman-crafted functions with precise specifications and documentation
LLM GenerationLeveraging large language models like GPT-4, LlaMA 70B, and Qwen to automatically generate function specifications
Web MiningExtracting diverse function objects from web resources, with descriptions supplemented by LLMs when necessary

Sample Construction

ApproachPaperCodeDescription
Text RepresentationToolformer: Language models can teach themselves to use tools (Schick et al., 2024)CodeRepresents functions as natural language text, providing flexibility but requiring more token space
Text RepresentationToolGen: Unified Tool Retrieval and Calling via Generation (Wang et al., 2024)CodeIntegrates tool information through generation with natural language descriptions
Token RepresentationToolformer: Language models can teach themselves to use tools (Schick et al., 2024)CodeEncodes functions as special tokens during training for computational efficiency
Token RepresentationToolGen: Unified Tool Retrieval and Calling via Generation (Wang et al., 2024)CodeUses token representation during training while maintaining semantic richness
Multi-turn InteractionSequential API Function Calling Using GraphQL Schema (Saha et al., 2024)-Introduces structured API schemas and response mapping for sequential function calling
Multi-turn InteractionHammer: Robust Function-Calling for On-Device Language Models via Function Masking (Lin et al., 2024)-Specialized techniques to address naming convention sensitivity issues for on-device deployment

Fine-tuning Strategies

MethodPaperDescription
Supervised Fine-Tuning (SFT)ToolGen: Unified Tool Retrieval and Calling via Generation (Wang et al., 2024)Standard fine-tuning approach with unified retrieval and calling generation
Supervised Fine-Tuning (SFT)RAIT: Retrieval Augmented Instruction Tuning (Asai et al., 2023)Retrieval-augmented approach for instruction tuning
Supervised Fine-Tuning (SFT)Show your work: Scratchpads for intermediate computation with language models (Nye et al., 2021)Scratchpad-based training for step-by-step computation
Supervised Fine-Tuning (SFT)Giving BERT a calculator: Finding operations and arguments with reading comprehension (Andor et al., 2019)Integrates mathematical operations with language understanding
Supervised Fine-Tuning (SFT)Rainier: Reinforced knowledge introspector for commonsense question answering (Liu et al., 2022)Knowledge introspection for improved reasoning
Supervised Fine-Tuning (SFT)Learning to represent programs with graphs (Allamanis et al., 2018)Program representation through graph structures
Supervised Fine-Tuning (SFT)A deep generative model of code syntactic structures (Barone et al., 2017)Syntax-aware code generation models
Supervised Fine-Tuning (SFT)Pre-training for Abstractive Document Summarization (Liu et al., 2019)Domain-specific pre-training for document summarization
Supervised Fine-Tuning (SFT)Character-level neural network for biomedical named entity recognition (Liu et al., 2017)Character-level models for biomedical entity recognition
Parameter-Efficient Fine-Tuning (PEFT)Gpt4tools: Teaching large language model to use tools via self-instruction (Yang et al., 2024)Self-instruction approach for tool utilization
Parameter-Efficient Fine-Tuning (PEFT)CITI: Enhancing Tool Utilizing Ability in Large Language Models without Sacrificing General Performance (Hao et al., 2024)Balanced approach for tool utilization without performance tradeoffs
Parameter-Efficient Fine-Tuning (PEFT)Toolformer: Language models can teach themselves to use tools (Schick et al., 2024)Self-supervised learning for tool usage
Parameter-Efficient Fine-Tuning (PEFT)PLUG: Parameter-efficient LLMs Using Plugin Adapters (Li et al., 2023)Plugin adapter approach for parameter efficiency
Parameter-Efficient Fine-Tuning (PEFT)Prompt tuning for generative multimodal pretrained models (Wei et al., 2022)Prompt-based tuning for multimodal generation
Reinforcement Learning & RLHFWebGPT: Browser-assisted question-answering with human feedback (Nakano et al., 2021)Web browsing capabilities enhanced through human feedback
Reinforcement Learning & RLHFTaskmatrix.ai: Completing tasks by connecting foundation models with millions of apis (Liang et al., 2024)Large-scale API connectivity through reinforcement learning
Reinforcement Learning & RLHFMADAC: Multi-Agent Decision-Aware Conversation via Reinforcement Learning (Li et al., 2023)Decision-aware conversation through multi-agent reinforcement learning
Reinforcement Learning & RLHFGopherCite: Teaching language models to support answers with verified quotes (Menick et al., 2022)Citation verification through reinforcement learning
Reinforcement Learning & RLHFEmergent Abilities of Large Language Models (Kojima et al., 2022)Studies emergent abilities through reinforcement learning approaches
Reinforcement Learning & RLHFDirect Preference Optimization: Your Language Model is Secretly a Reward Model (Rafailov et al., 2023)Preference optimization without explicit reward modeling
Reinforcement Learning & RLHFDeep reinforcement learning from human preferences (Christiano et al., 2017)Foundational work on learning from human preferences
Reinforcement Learning & RLHFThe Bias-Variance Trade-off in RLHF: Overfitting to Human Feedback in Large Language Models (Manduzio et al., 2023)Analysis of overfitting risks in human feedback

Critical Emphasis

Experimental results showing performance trends across models of different sizes, demonstrating that larger models achieve significantly better function calling capabilities after fine-tuning.

Based on practical implementations, we emphasize that data quality (and variety) plays a more crucial role than data quantity in both data construction and fine-tuning phases, given the intricate nature of function calling tasks.

Performance comparison across different model sizes, showing that larger models demonstrate substantially better function calling capabilities after fine-tuning, while base models show minimal function calling abilities regardless of scale.

Based on practical implementations, we emphasize that data quality (and variety) plays a more crucial role than data quantity in both data construction and fine-tuning phases, given the intricate nature of function calling tasks.

EmphasisDescription
Data QualityPrioritizing dataset diversity and verification over quantity for more robust function calling capabilities
Model ScalingLarger models demonstrate significantly better function calling capabilities, with notable improvements above 7B parameters
Capability BalanceMaintaining a balance between specialized function calling abilities and general language capabilities to avoid performance tradeoffs

Deployment and Inference

Figure 6: A Typical Deployment of LLM for Function Calling Stages: The Flow through Input Construction, Memory Integration, and Output Format Validation (Function Execution). Note that actual implementations may vary in practice.

This section explores practical deployment strategies for function-calling LLMs. Figure illustrates a typical workflow where queries pass through input construction, LLM processing, and format validation or execution, with memory components maintaining context throughout the process.

Task Planning

Foundational Planning Mechanisms

NamePaperVenueCodeComment
ReActReact: Synergizing reasoning and acting in language models (Yao et al., 2022)NeurIPSCodeCombines reasoning and acting through chain-of-thought prompts
ToolFormerToolformer: Language models can teach themselves to use tools (Schick et al., 2023)NeurIPSCodeEnables LLMs to use external tools through self-supervised learning
Reverse ChainReverse chain: A generic-rule for llms to master multi-api planning (Zhang et al., 2023)arXiv-Introduces target-driven backward reasoning for controlled multi-API planning
AVATARAvaTaR: Optimizing LLM Agents for Tool-Assisted Knowledge Retrieval (Wu et al., 2024)arXivCodeActor-comparator architecture for tool-assisted knowledge retrieval
DEPSDescribe, explain, plan and select: interactive planning with LLMs enables open-world multi-task agents (Wang et al., 2024)NeurIPSCodeInteractive planning through description-based decomposition
LLM-MCTSLLM-MCTS: Monte Carlo Tree Search with LLMs for reasoning tasks (Zhao et al., 2023)arXivCodeMonte Carlo Tree Search approach for multi-step reasoning
MACTMeasuring and narrowing the compositional gap in language models (Zheng et al., 2023)arXivCodeAddresses compositional generalization through structured decomposition
TACOTaco: Towards api conversation workflows for tool augmentation (Mao et al., 2024)arXivCodeStructured workflows for tool-augmented conversational agents
PAEProposer-Agent-Evaluator (PAE): Autonomous Skill Discovery For Foundation Model Internet Agents (Zhou et al., 2024)arXivCodeMulti-agent system for autonomous skill discovery and planning
SCIAGENTSciAgent: Tool-augmented language models for scientific reasoning (Wang et al., 2023)arXivCodeTool-augmented planning for scientific problem-solving
Agent LaboratoryAgent laboratory: Using llm agents as research assistants (Schmidgall et al., 2025)arXiv-Multi-agent architecture with specialized roles for research planning

GUI-based Approaches

NamePaperVenueCodeComment
AppAgentAppAgent: Multimodal Agents as Smartphone Users (Yang et al., 2023)arXivCodeAgents learn to operate smartphone applications via visual interfaces
OS-ATLASOS-ATLAS: Foundation AI Agent for Desktop Operating Systems (Wang et al., 2024)arXivCodeEnd-to-end desktop OS navigation with multimodal perception
AndroidLabAndroidLab: Large Language Models for Android UI Navigation (Yan et al., 2023)arXivCodeBenchmarking and improving LLM-based Android UI navigation
PonderPonder: Toolkit-Aware Agent for Automating Desktop Tasks (Wu et al., 2024)arXivCodeSelf-reflective navigation through desktop interfaces
OS-GenesisOS-Genesis: Evaluating the multimodal capabilities of large language models in navigating operating systems (Li et al., 2024)arXivCodeComprehensive benchmark for evaluating OS navigation capabilities

System Optimizations

NamePaperVenueCodeComment
OrcaOrca: Progressive learning from complex explanation traces of gpt-4 (Mukherjee et al., 2023)arXiv-Learns from complex explanation traces for progressive improvement
Orca 2Orca 2: Teaching small language models how to reason (Mitra et al., 2023)arXivCodeEnhanced reasoning capabilities through step-by-step explanation
MemgptMemgpt: Towards llms as operating systems (Chen et al., 2023)arXivCodeMemory management system with hierarchical storage
AIOS-AgentAios-agent: In-context fine-grained os control with large language models (Chu et al., 2024)arXivCodeSystem-level control through fine-grained OS operations
SpecInferSpecinfer: Accelerating generative llm inference via speculative execution (Yan et al., 2023)arXivCodePerformance optimization through speculative execution
PEOAPEOA: Progressive Exemplar-Oriented API-Aware Prompting (Wang et al., 2024)arXivCodeExemplar-based prompting for API-aware interactions
LLM-Tool CompilerCompiler-aided Generation for Tool-LLM Inference (Song et al., 2024)arXiv-Compilation techniques to optimize tool operations

Error Handling Approaches

NamePaperVenueCodeComment
LLM-PlannerLlm-planner: Few-shot grounded planning for embodied agents with large language models (Song et al., 2023)ICCVCodeEnvironmental feedback for plan regeneration during failures
ToolChain*Toolchain*: Efficient action space navigation in large language models with a* search (Zhuang et al., 2023)arXivCodeEmploys decision trees for systematic API call management
TPTUTest-Time Prompt Updating for Text-to-Image Generative Models (Liang et al., 2023)arXivCodeAdaptive prompt refinement based on execution feedback
BucketsBuckets: Efficient multi-environment learning for llm agents (Burkart et al., 2023)arXivCodeError-aware multi-environment learning framework
AMORAMOR: A Recipe for Building Adaptable Modular Knowledge Agents Through Process Feedback (Guan et al., 2024)arXivCodeFSM-based framework enabling process-level human feedback

Tree-based Approaches

NamePaperVenueCodeComment
ControlLLMControlllm: Augment language models with tools by searching on graphs (Liu et al., 2023)arXivCodeTree of Thoughts with depth-first search on tool graphs
PLUTOPluto: A recipe for building adaptable autonomous llm agents (Guan et al., 2024)arXivCodeAdaptable autonomous agents with tree-based planning
ToolinkToolink: Linking toolkit creation and using through chain-of-solving on open-source model (Qian et al., 2023)arXivCodeHierarchical task decomposition with toolkit creation
TPTU-v2TPTU-v2: Boosting Test-Time Prompt Tuning for Text-to-Image Generation (Kawar et al., 2023)arXivCodeEnhanced tree-based prompt optimization strategies
α-UMiSmall llms are weak tool learners: A multi-llm agent (Shen et al., 2024)arXivCodePlanning-oriented fine-tuning for small LLMs

Adaptive Planning Strategies

NamePaperVenueCodeComment
COAChain of agents: A framework for collaborative tool utilization with language models (Chang et al., 2024)arXivCodeAgent collaboration framework for specialized tool utilization
DEERDEER: Diverse Evolution Ensembles are Required for Large Language Model Agents (Chen et al., 2024)arXivCodeDiverse evolution ensembles for LLM agent improvement
SOAYSOAY: Responsive and Safe Structured Editing with Dynamic Text Features (Wang et al., 2024)arXivCodeDynamic text feature adaptation for structured editing
ProgPromptProgPrompt: Generating Situated Robot Task Plans using Large Language Models (Singh et al., 2022)arXivCodeAdaptive programming for situated robot task planning
AutoTODTowards fully autonomous dialogue systems via interactive few-shot learning (Zhang et al., 2023)arXiv-Interactive few-shot learning for dialogue system adaptation
MATMCDMATMCD: An Open Benchmark for Mobile Agent Testing in Minecraft with Concept Drift (Xiong et al., 2024)arXivCodeAdaptive strategies for concept drift in Minecraft environments
CC-PPCC-PP: Chain-of-components pipeline prompting for planning with large language models (Gui et al., 2024)arXiv-Component-based pipeline approach for adaptive planning
AVTAVT: Bridging Vision and Language with Adaptive Vision Transformers (Yang et al., 2024)arXivCodeAdaptive vision transformers for multimodal planning
K-agentsAutonomous Agents for Real-Time Decision Making: Applications in Banking (Balaji et al., 2023)arXiv-Autonomous agent adaptation for financial decision making
Agent-ProAgent-pro: Learning to evolve via policy-level reflection and optimization (Zhang et al., 2024)arXivCodeDynamic belief management and policy-level reflection
Inner ThoughtsProactive Conversational Agents with Inner Thoughts (Liu et al., 2024)arXivCodeContinuous thought generation for proactive participation

Prompt Construction

Few-shot Integration

ApproachPaperCodeComment
Example demonstrationsInstance-wise prompting for few-shot transferability of large language models (Pan et al., 2024)CodeTailored examples for improved function understanding
Four-shot prompting--Demonstrated optimal number of examples for tool usage

Context Management

ApproachPaperCodeComment
Function definitions--Including comprehensive function specifications in context
Docstrings--Utilizing standardized documentation formats for clarity
Chain-of-thoughtChain-of-thought prompting elicits reasoning in large language models (Wei et al., 2022)-Step-by-step reasoning process for complex function selection

Query-based Retrieval

ApproachPaperCodeComment
Ask-when-NeededLearning to Ask: When LLMs Meet Unclear Instruction (Wang et al., 2024)CodeOn-demand clarification for tool selection
Interactive refinement--Iterative query refinement through user interaction

Function Generation

ApproachPaperVenueCodeComment
Grammar ControlGrammar-Aligned Decoding (Park et al., 2024)arXivCodeConstrains output using context-free grammar
TOOL-EDTOOL-ED: Enhancing Empathetic Response Generation with the Tool Calling Capability of LLM (Cao et al., 2024)arXiv-Treats knowledge bases as callable tools for empathetic dialogue
IBSENIBSEN: Director-Actor Agent Collaboration for Controllable and Interactive Drama Script Generation (Han et al., 2024)ACLCodeMulti-agent coordination for controlled script generation
Multi-agent coordinationImproving factuality and reasoning in language models through multiagent debate (Chan et al., 2023)arXivCodeCollaborative refinement through structured agent debate
Task proposalProposer-Agent-Evaluator (PAE): Autonomous Skill Discovery For Foundation Model Internet Agents (Zhou et al., 2024)arXivCodeAutomated task proposal and execution validation
Experience transferX-TOOLS: Tool Generation and Adaptation from Existing APIs for Dialogue Agents (Patil et al., 2023)arXivCodeTransfers API experience across different domains

Function Mapping

Figure 7: Function mapping strategies in LLM function calling, illustrating the transformation process from natural language input to system-executable function calls through pronoun mapping, format alignment, and error checking.

Function mapping plays a crucial role in deploying function calling, primarily responsible for transforming model outputs at the semantic level into executable commands in the physical space. Moreover, as shown in figure, function mapping involves Pronoun Mapping, Format Alignment, and Error Checking.

Resolution

ApproachPaperCodeComment
Rule-basedDeterministic coreference resolution based on entity-centric, precision-ranked rules (Lee et al., 2013)CodePredefined mapping rules for contextual references
Rule-basedEnd-to-end neural entity linking (Kolitsas et al., 2018)CodeNeural approach to entity linking with rule-based components
Knowledge reasoningKnowledge-aware Pronoun Coreference Resolution (Zhang et al., 2019)-Leverages knowledge graphs for reference resolution
LLM mappingEnd-to-end Neural Coreference Resolution (Lee et al., 2017)CodeUses neural models for contextual mapping

Alignment

ApproachPaperCodeComment
Dictionary mappingSyllabus: Portable Curricula for Reinforcement Learning Agents (Sullivan et al., 2024)CodeUnified APIs and format alignment mechanisms
Semantic matchingImproving Semantic Similarity for Low-Resource Named Entity Linking (Niu et al., 2022)CodeVector-based semantic similarity for linking entities
Normalization--Format standardization for consistent representation

Validation

ApproachPaperCodeComment
Parameter checking--Verification of parameter completeness and formatting
Value enumeration--Validating input values against acceptable ranges
Permission management--Ensuring appropriate access levels for function execution

Response Generation

Initial Generation

ApproachPaperCodeComment
Placeholder resultsToolkengpt: Augmenting frozen language models with massive tools via tool embeddings (Hao et al., 2024)CodeGenerated placeholders replaced with API call results
Placeholder resultsLarge language models encode clinical knowledge (Singhal et al., 2023)-Domain-specific placeholder generation for clinical applications
Placeholder resultsToolformer: Language models can teach themselves to use tools (Schick et al., 2023)CodeSelf-supervised approach to result placeholder generation
Function unpredictabilityReact: Synergizing reasoning and acting in language models (Yao et al., 2023)CodeReasoning-action interleaving to handle unpredictable outputs

Templates

ApproachPaperCodeComment
Structure formatGorilla: Large language model connected with massive apis (Patil et al., 2023)CodeStructured templates for consistent output formatting
Structure formatPrompt2model: Generating deployable models from natural language instructions (Pryzant et al., 2023)-Transforms natural language into structured model specifications
FormattingThe api bank: A comprehensive benchmark for tool-augmented llms (Li et al., 2023)CodeStandardized formatting for API responses
SignaturesInstance-wise prompting for few-shot transferability of large language models (Pan et al., 2024)CodeInstance-specific signature generation

Review

ApproachPaperCodeComment
ValidationPrompt2model: Generating deployable models from natural language instructions (Pryzant et al., 2023)-Validation mechanisms for generated model specifications
ValidationT-eval: Evaluating the tool utilization capability of large language models step by step (Chen et al., 2024)CodeStep-by-step validation of tool utilization
Agent correctionLearning to use tools via cooperative and interactive agents (Shi et al., 2024)CodeSpecialized agents review and correct each other's actions
Agent correctionSelf-correction of large language models via cognitive psychology (Sun et al., 2024)-Psychological principles for improved self-correction
FeedbackGreat principles for learning to use tools with llms (Guo et al., 2024)-Principles for effective feedback incorporation
FeedbackWebGPT: Browser-assisted question-answering with human feedback (Nakano et al., 2021)-Human feedback integration for improved web interactions
FeedbackWhiteboardAgent: Autonomous Multi-Step Visual Language Reasoning via Whiteboard Interaction (Wang et al., 2024)CodeVisual reasoning through whiteboard interaction feedback

RAG

ApproachPaperCodeComment
Example retrievalClusterLLM: Large Language Models as a Guide for Text Clustering (Chen et al., 2023)CodeClustered example retrieval for enhanced responses
System mappingA neural probabilistic model for entity disambiguation using multiple resources (Agarwal et al., 2019)-Multi-resource entity disambiguation for system mapping
System mappingLLM+P: Empowering Large Language Models with Optimal Planning Proficiency (Liu et al., 2023)-Planning-oriented mapping for systematic responses
System mappingLlm+p: Empowering large language models with planning capabilities in multi-scenario human-ai collaboration (Ma et al., 2024)-Enhanced collaborative mapping between human inputs and AI responses
System mappingInstructExcel: A Benchmark for Natural Language Instructions in Excel (Mao et al., 2023)CodeDomain-specific mapping for spreadsheet operations
System mappingINSTRUCTION FOLLOWING EVALUATION BY PREDICTING HUMAN FEEDBACK (Muennighoff et al., 2023)CodeHuman feedback-based mapping evaluation
System mappingInstance-wise prompting for few-shot transferability of large language models (Pan et al., 2024)CodeInstance-specific mapping mechanisms
System mappingVipergpt: Visual inference via python execution for reasoning (Suris et al., 2023)CodePython execution-based visual reasoning and mapping

Memory Scheme

Memory Structure

ApproachPaperCodeComment
Hierarchical structure and storageMemorybank: Enhancing large language models with long-term memory (Zhong et al., 2024)CodeHierarchical storage with Ebbinghaus-inspired updating
Task-related symbolic memoryZero-shot task-oriented dialogue in the wild (Xie et al., 2023)-Specialized memory structures for dialogue-based tasks
Three-layered memory architectureLongllms: Enabling language models to process long contexts by leveraging memory mechanisms (Li et al., 2024)CodeWorking, episodic, and semantic memory layers
Persistent memory streamUnleashing infinite-length input capacity for large-scale language models with self-controlled memory system (Liang et al., 2023)-Continuous memory stream for unlimited context

Memory Management

ApproachPaperCodeComment
Self-controlled memory mechanismUnleashing infinite-length input capacity for large-scale language models with self-controlled memory system (Liang et al., 2023)-Memory management through control systems
Memory control systemUnleashing infinite-length input capacity for large-scale language models with self-controlled memory system (Liang et al., 2023)-Automated memory control for extended contexts
Memory control systemMemgpt: Towards llms as operating systems (Chen et al., 2023)CodeOperating system-inspired memory management
Multi-agent experience storageLmrl: Learning multiagent reinforcement learning framework in a collaborative agent society (Lee et al., 2024)CodeCollaborative storage of multi-agent experiences

Memory Retrieval

ApproachPaperCodeComment
Cross-conversation memory retrievalMemorybank: Enhancing large language models with long-term memory (Zhong et al., 2024)CodeRetrieval mechanisms spanning multiple conversations
LSH-based indexing mechanismMemgpt: Towards llms as operating systems (Chen et al., 2023)CodeLocality-sensitive hashing for efficient indexing
Similarity-based retrievalSynapse: Trajectory-as-exemplar prompting with memory for computer control (Zheng et al., 2023)CodeVector similarity for contextual memory access
Efficient memory accessThink-in-memory: Recalling and post-thinking enable llms with long-term memory (Liu et al., 2023)CodeOptimized access patterns for memory retrieval

Memory Processing

ApproachPaperCodeComment
Thought-based memory storageThink-in-memory: Recalling and post-thinking enable llms with long-term memory (Liu et al., 2023)CodeStores and recalls thoughts rather than raw conversations
Trajectory-as-exemplar frameworkSynapse: Trajectory-as-exemplar prompting with memory for computer control (Zheng et al., 2023)CodeComplete trajectories as exemplars for planning
State abstraction mechanismSynapse: Trajectory-as-exemplar prompting with memory for computer control (Zheng et al., 2023)CodeCompact state representations for efficient storage
Knowledge tripletMemgpt: Towards llms as operating systems (Chen et al., 2023)CodeSubject-predicate-object triplets for structured knowledge

Evaluation

Overall Performance

Performance comparison across various models showing the relative effectiveness of different approaches on function calling tasks, highlighting the relationship between model architecture and function calling capabilities.

The experimental results demonstrate clear performance differences between models trained specifically for function calling versus general-purpose models adapted to the task.

Function Selection Metrics

MetricDescriptionExample Works
Recall@KProportion of relevant tools ranked within top K positionsCOLT: Towards Completeness-Oriented Tool Retrieval for Large Language Models (Qu et al., 2024)
NDCG@KNormalized Discounted Cumulative Gain at KLarge language models are versatile decomposers: Decompose evidence and questions for table-based reasoning (Cheng et al., 2023)
COMP@KCompleteness-oriented retrieval evaluation at KCOLT: Towards Completeness-Oriented Tool Retrieval for Large Language Models (Qu et al., 2024)

Core Evaluation Metrics

MetricDescriptionExample Works
Pass RateProportion of successfully completed instructionsToolllm: Facilitating large language models to master 16000+ real-world apis (Qin et al., 2023)
Win/Success RateQuality evaluation including information richness, factual accuracyNESTFUL: A Benchmark for Evaluating LLMs on Nested Sequences of API Calls (Basu et al., 2024)

Comprehensive Assessment

MetricDescriptionExample Works
T-EvalComprehensive assessment of planning, reasoning, retrieval, understandingT-eval: Evaluating the tool utilization capability of large language models step by step (Chen et al., 2024)

Quality-based Metrics

MetricDescriptionExample Works
BLEUBilingual Evaluation Understudy for translation qualityBleu: a method for automatic evaluation of machine translation (Papineni et al., 2002)
ROUGE-LLongest Common Subsequence based metric for text summarizationRouge: A package for automatic evaluation of summaries (Lin, 2004)
Exact MatchBinary assessment of complete answer correctnessBootstrapping a neural natural language interface for databases (Bogin et al., 2019)
F1 scoreHarmonic mean of precision and recallAttention is all you need (Vaswani et al., 2017)

Benchmarks

Early Foundational

NamePaperCodeDescription
ToolLLMToolllm: Facilitating large language models to master 16000+ real-world apis (Qin et al., 2023)CodeComprehensive benchmark for API utility
ToolAlpacaToolalpaca: Generalized tool learning for language models with 3000 simulated cases (Tang et al., 2023)CodeGeneralized tool learning with simulated cases
GorillaGorilla: Large language model connected with massive apis (Patil et al., 2023)CodeBerkeley Function Calling Leaderboard

Standardized Platforms

NamePaperCodeDescription
APIBenchGorilla: Large language model connected with massive apis (Patil et al., 2023)CodePlatform for standardized API evaluation
API-BankApi-bank: A benchmark for tool-augmented llms (Li et al., 2023)CodeComprehensive API interaction testing

Domain-Specific

NamePaperCodeDescription
ShortcutsBenchShortcutsbench: A large-scale real-world benchmark for api-based agents (Shen et al., 2024)CodeReal APIs from Apple's operating systems
BigCodeBenchYou are not alone: Large language models effectively leverage duplications in code corpus (Zhou et al., 2023)CodeSpecialized benchmark for code-related function calls
SEALSeal: A benchmark for software api learning with generative ai agents (Ji et al., 2023)CodeSoftware API learning benchmark
RadABenchRadial agent benchmark: evaluating task generalization capabilities of multi-platform ai agents (Yuan et al., 2024)CodeCross-platform agent evaluation framework
NoisyToolBenchLearning to Ask: When LLMs Meet Unclear Instruction (Wang et al., 2024)CodeEvaluates performance with unclear or noisy instructions
Mobile-BenchBenchmarking large language models on mobile applications (Cao et al., 2024)CodeSpecialized benchmark for mobile application interactions

Task-Oriented

NamePaperCodeDescription
IN3In3: Instruction-following language models for interactive tasks (Qi et al., 2023)CodeInteractive task evaluation with instruction following
NESTFULNESTFUL: A Benchmark for Evaluating LLMs on Nested Sequences of API Calls (Basu et al., 2024)-Focuses on nested sequences of API calls
UltraToolPluto: A recipe for building adaptable autonomous llm agents (Guan et al., 2024)CodeEvaluates adaptable autonomous agent capabilities
AppWorldAppWorld: A Benchmark for Physical Mobile App Embodied Agent (Tian et al., 2023)CodePhysical mobile app interaction benchmark
TheAgentCompanyThe agent company: A generative agent simulation of a software company (Yuan et al., 2024)-Simulated software company environment for evaluation
AgentBoardAgentBoard: An Analytical Evaluation Board of Multi-turn LLM Agents (Liu et al., 2023)CodeMulti-turn agent evaluation platform
TravelPlannerTravel planner: A benchmark for real-world planning with language agents (Wang et al., 2024)CodeTravel planning task-specific benchmark
ChinaTravelTravel assistant: A benchmark for chinese llm agents in the tourism domain (Xia et al., 2024)-Chinese language travel planning benchmark

Comprehensive Systems

NamePaperCodeDescription
API-BLENDAPI-BLEND: A Comprehensive Corpora for Training and Benchmarking API LLMs (Basu et al., 2024)CodeMulti-domain API coverage with evaluation methods
NESTOOLSNestools: Crafting efficient tools across diverse scenarios (Choi et al., 2024)CodeComprehensive evaluation across diverse scenarios
MTU-BenchMTU-Bench: A Multi-granularity Tool-Use Benchmark for Large Language Models (Wang et al., 2024)CodeMulti-granularity tool-use evaluation
WTU-EVALWeb tool use evaluation: Measuring large language models' capabilities on realistic web tasks (Mishra et al., 2023)CodeWeb-based tool usage evaluation framework

Industry Products

Commercial Platforms

NameOrganizationRelease/PaperDescription
ChatGPT pluginsOpenAIIntroducing ChatGPT pluginsEcosystem of third-party extensions for specific functionalities
Claude's tool use APIAnthropicClaude 3 Opus technical reportNative function calling capabilities in Claude AI models
Cohere CommandCohereIntroducing Cohere Command LightAPI for function calling and structured JSON responses
QwenAlibabaQwen Technical Report (Yang et al., 2023)Multi-function Chinese language models with tool usage
DeepSeekDeepSeekDeepSeek: Generalized Autoregressive Pretraining for Language and Vision (Dai et al., 2024)Generalized foundation model with capabilities across tasks

Frameworks & SDKs

NameOrganizationRepositoryDescription
HuggingFace Transformer AgentsHugging FaceCodeFramework for building agents with Hugging Face models
Semantic KernelMicrosoftCodeSDK for building AI applications with native tool integration
LangChainLangChainCodeFramework for building applications with LLMs and tools
WebCPMTsinghua UniversityCodeChinese web agent framework with browsing capabilities

Autonomous Agent Systems

NameDeveloperRepositoryDescription
Auto-GPTSignificant GravitasCodeSelf-prompting autonomous agent system
BabyAGIYoheiCodeTask-driven autonomous agent framework
BMToolsOpenBMBCodeToolset for enhancing language models with functions
RestGPTMicrosoftCodeModel that can interact with RESTful APIs
xLAMSilenCodeCross-language agent development framework
Octopus-v4BaichuanOctopus technical report (Hao et al., 2023)Multi-agent system for complex task completion

Open Source Models

NameDeveloperRepositoryDescription
GRANITE-20BIBM ResearchCodeLarge language model optimized for coding and tool use
Mistral 7BMistral AICodeOpen-weight model with tool use capabilities
NexusRaven V2-13BNexusflowCodeFunction calling and multi-modality specialized model
GorillaUC BerkeleyCodeModel specialized in API usage and integration
FireFunction V1Fireworks AIModelPurpose-built for function calling capabilities
Nous Hermes 2Nous ResearchModelInstruction-tuned model with enhanced tool use

Training Resources & Datasets

NameOrganizationLinkDescription
AgentInstructMicrosoftPaper (Zeng et al., 2023)Instruction dataset for agent training and evaluation
AgentOhanaDuke UniversityPaper (Yang et al., 2024)High-quality dataset for training multi-task agents
LumosCornell UniversityPaper (Guo et al., 2023)Multi-step reasoning dataset for tool-based tasks

Open Issues

Service Issues of Function Calling

  • Standards Challenge: Lack of universally accepted standard for assessing quality and performance
  • Latency Problems: High latency and low throughput affecting user experience
  • Security Vulnerabilities: Potential for "jailbreak function" attacks and other security concerns

Usability and Modification of Functions

  • Technical Costs: Integration and maintenance costs for API modifications
  • System Architecture Limitations: Constraints imposed by existing system architectures
  • Standardization Needs: Requirement for standardized API modification processes

Feedback Quality and Optimization

  • Complex Processing: Multiple steps in feedback processing introducing errors
  • Learning Assessment: Difficulty in quantifying effectiveness of human feedback
  • Strategy Requirements: Need for advanced algorithms to interpret unstructured feedback

Function Isolation and Post-Processing

  • Isolation Strategy: Challenges in appropriately isolating functions for business needs
  • Regulatory Compliance: Meeting specific regulatory requirements across functions
  • Post-processing Solutions: Implementing effective middleware for compliance and data transformation

About

No description, website, or topics provided.

Resources

Stars

71 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors