Skip to content

Commit

Permalink
📘 docs: Add Agents Config (#178)
Browse files Browse the repository at this point in the history
* feat: Add agents feature toggle to configuration documentation

* docs: v1.1.9 agents config

* docs: Clarify permissions for accessing agent instructions and tools
  • Loading branch information
danny-avila authored Dec 11, 2024
1 parent d1e6596 commit c67e4ac
Show file tree
Hide file tree
Showing 7 changed files with 117 additions and 3 deletions.
3 changes: 3 additions & 0 deletions components/changelog/content/config_v1.1.9.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- Added [Agents](/docs/features/agents) related configurations:
- [Interface-level toggle for Agents](/docs/configuration/librechat_yaml/object_structure/interface#agents), enabling/disabling Agents for all users
- [Agent Endpoint-level configuration](/docs/configuration/librechat_yaml/object_structure/agents) for Agent options and capabilities
13 changes: 13 additions & 0 deletions pages/changelog/config_v1.1.9.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
date: 2024/12/11
title: ⚙️ Config v1.1.9
---

import { ChangelogHeader } from '@/components/changelog/ChangelogHeader'
import Content from '@/components/changelog/content/config_v1.1.9.mdx'

<ChangelogHeader />

---

<Content />
3 changes: 2 additions & 1 deletion pages/docs/configuration/librechat_yaml/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ This file enables the integration of custom AI endpoints, enabling you to connec
- **Endpoint Integration**: Seamlessly integrate with a variety of AI providers compliant with OpenAI API standards, including Mistral AI, reverse proxies, and more.
- **Advanced Customization**: Configure file handling, rate limiting, user registration, and interface elements to align with your preferences and requirements.
- **Model Specifications**: Define detailed model configurations, presets, and behaviors to deliver a tailored AI experience.
- **Assistants Integration**: Leverage the power of OpenAI's Assistants, with options to customize capabilities, polling intervals, and timeouts.
- **Agents**: Use Provider-agnostic, no-code assistants, with options to customize capabilities.
- **Assistants Integration**: Leverage the power of OpenAI's Assistants API, with options to customize capabilities, polling intervals, and timeouts.
- **Azure OpenAI Support**: Integrate with Azure OpenAI Service, enabling access to multiple deployments, region models, and serverless inference endpoints.

<div style={{ display: "flex", justifyContent: "center", alignItems: "center", flexDirection: "column" }}>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,9 @@ export default {
interface: 'Interface (UI)',
model_specs: 'Model Specs',
registration: 'Registration',
agents: 'Agents',
aws_bedrock: 'AWS Bedrock',
assistants_endpoint: 'Assistants Endpoint',
assistants_endpoint: 'Assistants API',
custom_endpoint: 'Custom Endpoint',
azure_openai: 'Azure OpenAI',
model_config: 'Azure Model Config',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# Agents Endpoint Object Structure

This page applies to the [`agents`](/docs/features/agents) endpoint.

## Example

```yaml filename="Agents Endpoint"
endpoints:
agents:
disableBuilder: false
# (optional) Agent Capabilities available to all users. Omit the ones you wish to exclude. Defaults to list below.
# capabilities: ["execute_code", "file_search", "actions", "tools"]
```
> This configuration enables the builder interface for agents.
## disableBuilder

**Key:**
<OptionTable
options={[
['disableBuilder', 'Boolean', 'Controls the visibility and use of the builder interface for agents.', 'When set to `true`, disables the builder interface for the agent, limiting direct manual interaction.'],
]}
/>

**Default:** `false`

**Example:**
```yaml filename="endpoints / agents / disableBuilder"
disableBuilder: false
```
## capabilities
**Key:**
<OptionTable
options={[
['capabilities', 'Array/List of Strings', 'Specifies the agent capabilities available to all users for the agents endpoint.', 'Defines the agent capabilities that are available to all users for the agents endpoint. You can omit the capabilities you wish to exclude from the list.'],
]}
/>
**Default:** `["execute_code", "file_search", "actions", "tools"]`

**Example:**
```yaml filename="endpoints / agents / capabilities"
capabilities:
- "execute_code"
- "file_search"
- "actions"
- "tools"
```
**Note:** This field is optional. If omitted, the default behavior is to include all the capabilities listed in the default.

## Agent Capabilities

The `capabilities` field allows you to enable or disable specific functionalities for agents. The available capabilities are:

- **execute_code**: Allows the agent to execute code.
- **file_search**: Enables the agent to search and interact with files.
- **actions**: Permits the agent to perform predefined actions.
- **tools**: Grants the agent access to various tools.

By specifying the capabilities, you can control the features available to users when interacting with agents.

## Example Configuration

Here is an example of configuring the `agents` endpoint with custom capabilities:

```yaml filename="Agents Endpoint"
endpoints:
agents:
disableBuilder: false
capabilities:
- "execute_code"
- "actions"
```

In this example, the builder interface for agents is disabled, and only the `execute_code` and `actions` capabilities are enabled.

## Notes

- It's not recommended to disable the builder interface unless you are using [modelSpecs](/docs/configuration/librechat_yaml/object_structure/model_specs) to define a list of agents to choose from.
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,7 @@ see also:
['prompts', 'Boolean', 'Enables or disables all prompt-related features for all users', ''],
['bookmarks', 'Boolean', 'Enables or disables all bookmarks-related features for all users', ''],
['multiConvo', 'Boolean', 'Enables or disables all "multi convo", AKA multiple response streaming, related features for all users', ''],
['agents', 'Boolean', 'Enables or disables all agents features for all users', ''],
]}
/>
Expand Down Expand Up @@ -267,6 +268,7 @@ see: [Model Specs Object Structure](/docs/configuration/librechat_yaml/object_st
['azureOpenAI', 'Object', 'Azure OpenAI endpoint-specific configuration', ''],
['assistants', 'Object', 'Assistants endpoint-specific configuration.', ''],
['azureAssistants', 'Object', 'Azure Assistants endpoint-specific configuration.', ''],
['agents', 'Object', 'Agents endpoint-specific configuration.', ''],
]}
/>
Expand All @@ -275,3 +277,4 @@ see: [Model Specs Object Structure](/docs/configuration/librechat_yaml/object_st
- [Custom Endpoint Object Structure](/docs/configuration/librechat_yaml/object_structure/custom_endpoint)
- [Azure OpenAI Endpoint Object Structure](/docs/configuration/librechat_yaml/object_structure/azure_openai)
- [Assistants Endpoint Object Structure](/docs/configuration/librechat_yaml/object_structure/assistants_endpoint)
- [Agents](/docs/configuration/librechat_yaml/object_structure/agents)
14 changes: 13 additions & 1 deletion pages/docs/features/agents.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,19 @@ Individual users can:
- Control editing permissions for shared agents
- Manage access to their created agents

*Note: Only original authors and administrators can delete shared agents*
### Notes

- Instructions, model parameters, attached files, and tools are only exposed to the user if they have editing permissions
- An agent may leak any attached data, whether instructions or files, through conversation--make sure your instructions are robust against this
- Only original authors and administrators can delete shared agents
- Agents are private to authors unless shared

## Optional Configuration

LibreChat allows admins to configure the use of agents via the [`librechat.yaml`](/docs/configuration/librechat_yaml) file:

- Disable Agents for all users (including admins): [more info](/docs/configuration/librechat_yaml/object_structure/interface)
- Customize agent capabilities using: [more info](/docs/configuration/librechat_yaml/object_structure/agents)

## Best Practices

Expand Down

0 comments on commit c67e4ac

Please sign in to comment.