Tool Integration
Julep provides a flexible system for integrating various types of tools that agents can use during interactions. These tools enable agents to perform actions, retrieve information, or interact with external systems.
Types of Tools
illustrates how to define a user-defined function and integrate it with Julep. Below is an example in YAML format:
You can use this function to call the relevant system tool for interacting with external databases or APIs.
User-defined Functions
Function signatures that you provide to the model
Similar to OpenAI's function-calling feature
Example:
System Tools
Built-in tools for calling Julep APIs.
Can trigger task executions, append to metadata fields, etc.
Executed automatically when needed, no client-side action required.
Example:
Built-in Integrations
Integrated third-party tools from providers like wikipedia, brave and cloudinary.
Upcoming: Support planned for other langchain toolkits (Github, Gitlab, Gmail, Jira, MultiOn, Slack).
Executed directly on the Julep backend.
Additional runtime parameters can be set in agent/session/user metadata.
Example:
API Calls & Webhooks
Julep can build natural-language tools from OpenAPI specs.
Additional runtime parameters loaded from metadata fields.
Example:
Partial Application of Arguments
Julep allows for partial application of arguments to tools using the x-tool-parameters
field in metadata. This is useful for fixing certain parameters for a tool. Example:
Resolving Parameters with the Same Name
When multiple scopes (user, agent, session) define the same parameter, Julep follows a precedence order:
Session
User
Agent
This allows for flexible configuration of tools across different scopes while maintaining clear rules for parameter resolution.
By providing these various tool integration options and configuration capabilities, Julep enables the creation of powerful and flexible agent-based applications that can interact with a wide range of external systems and data sources.
Last updated