MeetKai/functionary
Chat language model that can use tools and interpret the results
What it solves
Functionary provides a language model specifically designed to interpret and execute functions and plugins. It addresses the challenge of enabling LLMs to interact with external tools reliably, supporting complex behaviors like parallel function calls, multi-turn conversations, and grounding responses in the actual results of tool execution.
How it works
The model accepts function definitions provided as JSON Schema Objects (similar to OpenAI's function calling format). It determines when a function needs to be triggered, whether to execute them serially or in parallel, and can process the resulting outputs to formulate a final response. Some versions of the model also include a built-in code interpreter.
Who it’s for
It is intended for developers building AI agents or applications that require precise tool use, such as weather services, database queries, or any system where the LLM must act as a controller for external software functions.
Highlights
- Advanced Tooling: Supports parallel function calls and the ability to follow up on missing function arguments.
- Integrated Code Interpreter: Specific model versions include native code interpretation capabilities.
- Flexible Deployment: Can be deployed via vLLM, SGLang, or Text-Generation-Inference (TGI) servers.
- Broad Compatibility: Offers OpenAI-compatible API usage and integration with llama-cpp-python for GGUF model inference.