https://github.com/nlpodyssey/funcallarchitect
https://github.com/nlpodyssey/funcallarchitect
Last synced: 7 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/nlpodyssey/funcallarchitect
- Owner: nlpodyssey
- Created: 2024-08-27T17:27:28.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-09-17T10:14:27.000Z (about 1 year ago)
- Last Synced: 2025-01-15T22:20:59.578Z (9 months ago)
- Language: Go
- Size: 70.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# FunCallArchitect
FunCallArchitect is an LLM-powered function calling framework designed to interpret user queries and execute appropriate function calls to retrieve information. It provides a structured approach to handling complex requests by breaking them down into a series of nested function calls.
## Core Functionality
- **Query Interpretation**: Analyzes user requests and determines the necessary function calls to fulfill them.
- **Function Call Planning**: Generates a structure of nested function calls to address user queries.
- **Execution Orchestration**: Manages the execution of planned function calls, including handling dependencies between functions.
- **Tool Integration**: Allows integration of custom tools and functions to extend the system's capabilities.
- **Progress Tracking**: Provides real-time updates on the execution process.## Key Components
1. **Agent**: The high-level abstraction for processing user requests.
2. **RequestHandler**: Manages the process of interpreting user messages and executing appropriate actions.
3. **Orchestrator**: Handles the execution context for function calls, including memoization for efficiency.
4. **LLM Integration**: Utilizes language models for query interpretation and function call planning.
5. **Tools**: A flexible system for defining and managing available functions and their specifications.## Features
- JSON Schema generation for constrained output
- Server implementation for handling user requests via REST API and Server-Sent Events (SSE)
- Support for concurrent function execution
- Memoization of function results for improved performance
- Customizable progress tracking and logging## Use Cases
FunCallArchitect can be applied to various scenarios where user queries need to be broken down into a series of function calls, such as:
- Information retrieval systems
- Task automation
- Query processing for databases or APIs
- Building conversational AI systemsThis project aims to provide a playground for developers to build LLM-powered applications that can understand and act on user requests through a structured function calling approach.