Reorganize docs

This commit is contained in:
akhisud3195 2025-02-05 16:14:41 +05:30
parent 435ed965da
commit 3c05dc4fc8
12 changed files with 119 additions and 92 deletions

View file

@ -0,0 +1,19 @@
## Add tools to agents
Copilot can help you add tools to agents.
### Instruct copilot to add tools
![Add Tool](img/add-tool.png)
![Example Tool](img/example-tool.png)
### Inspect tools and agents
Note how copilot not only creates the tool definitions for you, but also updates the relevant agent instructions to use the tool and connects the tool to the agent.
![Inspect Agent Tools](img/inspect-agent-tools.png)
![Inspect Agent Tool Connections](img/inspect-agent-tool-connections.png)
### Debug tool calls in the playground
When agents call tools during a chat in the playground, the tool call parameters and response are available for debugging real-time. For testing purposes, the platform can produce mock tool responses in the playground, without integrating actual tools.
![Mock Tool Responses](img/mock-tool-responses.png)
![Debug Tool Calls](img/debug-tool-calls.png)

View file

@ -14,10 +14,26 @@ The description conveys the agent's role in the multi-agent system. Writing a go
Agent instructions are the backbone of an agent, defining its behavior. RowBoat Studio's copilot produces a good framework for agent instructions, involving Role, Steps to Follow, Scope and Guidelines. Since agents are powered by LLMs, general best practices while writing prompts apply.
### Examples
Coming soon.
The agent uses examples as a reference for behavior in different scenarios. While there are no prescribed formats to provide examples in, examples should include what the user might say, what the agent should respond with as well as indications of any tool calls to be made.
### Prompts
Prompts attached to an agent will be used by the agent in addition to instructions.
### RAG
Data sources added to an agent will be used as knowledge, retrieved using embedding match in a typical RAG fashion. Advanced configurations allow for setting number of matches, etc. RAG is currently implemented as a predefined tool call which the agent will use when it determines that it needs to retrieve knowledge. This behavior can be further fine-tuned by specifying corresponding instructions or prompts.
### Tools
Tools attached to an agent will be put out as tool calls. The behavior of when to invoke tools can be fine-tuned by specifying corresponding instructions or prompts. Adding examples to agents can also be useful in controlling tool call behavior.
### Connected Agents
In the agent graph, connected agents refer to children of an agent. An agent can choose to transfer control of the conversation to one of its children, by using internal tool calls (need not be configured separately). Similar to tools, the behavior of when to transfer the chat to a child agent can be fine-tuned by specifying corresponding instructions, examples and prompts.
### Model
Coming soon.
RowBoat currently supports OpenAI LLMs. Agents can be configured to use any of the OpenAI LLMs.
### Control
Coming soon.
### Conversation control after turn
This setting specifies different options for control of conversation after the current agent has put out a user-facing response (i.e., completed the turn). Currently available options are:
1. Retain control for the next turn of conversation (most common and default setting)
2. Give up control to the parent agent (used when the agent has narrow scope such as answering a FAQ)
3. Give up control to the agent designated as Start agent

View file

@ -1,83 +0,0 @@
# Building Assistants in Studio
This is a guide to building your first assistant on RowBoat Studio, with examples.<br>
Prerequisite:
1. **Open Source Users:** Complete the [open-source installation steps](/oss_installation/) to set up RowBoat Studio.
2. **Hosted App Users:** Sign in to [https://app.rowboatlabs.com/](https://app.rowboatlabs.com/)
## Create the set of initial agents
Copilot can set up agents for you from scratch.
### Instruct copilot
First, tell it about the initial set of agents that make up your assistant.
![Create Initial Agents](img/copilot-create.png)
Using copilot to create your initial set of agents helps you leverage best practices in formatting agent instructions and connecting agents to each other as a graph, all of which have been baked into copilot.
### Inspect the agents
Once you apply changes, inspect the agents to see how copilot has built them. Specifically, note the Instructions, Examples and Connected Agents in each agent.
![Agent Config](img/agent-config.png)
Also notice that copilot would likely have created a "Hub" agent that is "connected" to other agents.
![Hub Agent Config](img/hub-config.png)
### Make changes if needed
Tweak the instructions and examples manually if needed.
![Edit Agent Manually](img/edit-agent-manually.png)
## Try an example chat in the playground
### Chat with the assistant
The playground is intended to test out the assistant as you build it. The User and Assistant messages represent the conversation that your end-user will have if your assistant is deployed in production. The playground also has debug elements which show the flow of control between different agents in your system, as well as which agent finally responded to the user.
![Try Chat](img/try-chat.png)
In the playground, you can also set initial context at start of chat, that will be passed to all agents. This is typically used for providing user identity information such as user ID, login email, etc.
![Use System Message](img/sys-msg.png)
### Ask copilot questions
You can ask copilot clarifications about the chat, such as why the agents responded a certain way or why an agent was invoked.
![Copilot Clarifications](img/copilot-clarifications.png)
## Add tools to agents
Copilot can help you add tools to agents.
#### Instruct copilot to add tools
![Add Tool](img/add-tool.png)
![Example Tool](img/example-tool.png)
### Inspect tools and agents
Note how copilot not only creates the tool definitions for you, but also updates the relevant agent instructions to use the tool and connects the tool to the agent.
![Inspect Agent Tools](img/inspect-agent-tools.png)
![Inspect Agent Tool Connections](img/inspect-agent-tool-connections.png)
### Debug tool calls in the playground
When agents call tools during a chat in the playground, the tool call parameters and response are available for debugging real-time. For testing purposes, the platform can produce mock tool responses in the playground, without integrating actual tools.
![Mock Tool Responses](img/mock-tool-responses.png)
![Debug Tool Calls](img/debug-tool-calls.png)
## Update agent behavior
Copilot can help you update agent behavior. It is also aware of the current chat in the playground so you can make references to the current chat while instructing copilot to update agents.
![Update Agent Behavior](img/update-agent-with-copilot.png)
Playground:
![Test Updated Agent](img/test-updated-agent.png)
## Simulate real-world user scenarios
Create a test-bench of real-world scenarios in the simulator.
![Scenarios](img/scenarios.png)
Run the scenarios as simulated chats betweeen a user (role-played) and the assistant, in the playground.
![Simulation](img/simulate.png)

View file

@ -0,0 +1,23 @@
## Create the set of initial agents
Copilot can set up agents for you from scratch.
### Instruct copilot
First, tell it about the initial set of agents that make up your assistant.
![Create Initial Agents](img/copilot-create.png)
Using copilot to create your initial set of agents helps you leverage best practices in formatting agent instructions and connecting agents to each other as a graph, all of which have been baked into copilot.
### Inspect the agents
Once you apply changes, inspect the agents to see how copilot has built them. Specifically, note the Instructions, Examples and Connected Agents in each agent.
![Agent Config](img/agent-config.png)
Also notice that copilot would likely have created a "Hub" agent that is "connected" to other agents.
![Hub Agent Config](img/hub-config.png)
### Make changes if needed
Tweak the instructions and examples manually if needed.
![Edit Agent Manually](img/edit-agent-manually.png)

View file

@ -19,5 +19,5 @@
## Pipelines
- RowBoat also has the concept of pipelines, which are agents invoked sequentially after an agent in the graph has produced a user-facing response.
- RowBoat also has the concept of pipelines - specialized agents invoked sequentially after an agent in the graph has produced a user-facing response.
- E.g. a pipeline with a post processing agent and a guardrail agent will ensure that every response is post processed and guardrailed for appropriateness before presenting it to the user.

View file

@ -0,0 +1,15 @@
## Try an example chat in the playground
### Chat with the assistant
The playground is intended to test out the assistant as you build it. The User and Assistant messages represent the conversation that your end-user will have if your assistant is deployed in production. The playground also has debug elements which show the flow of control between different agents in your system, as well as which agent finally responded to the user.
![Try Chat](img/try-chat.png)
In the playground, you can also set initial context at start of chat, that will be passed to all agents. This is typically used for providing user identity information such as user ID, login email, etc.
![Use System Message](img/sys-msg.png)
### Ask copilot questions
You can ask copilot clarifications about the chat, such as why the agents responded a certain way or why an agent was invoked.
![Copilot Clarifications](img/copilot-clarifications.png)

View file

@ -1 +1,5 @@
Coming soon.
# Prompts
- Prompts are reusable pieces of agent instructions in Studio.
- Prompts can be defined once and reused across multiple agents.
- Common examples of prompts are style prompts which indicate brand voice and structured output prompts which specify a format for the agent to provide its output in (e.g. ReAct)

View file

@ -0,0 +1,6 @@
## Simulate real-world user scenarios
Create a test-bench of real-world scenarios in the simulator.
![Scenarios](img/scenarios.png)
Run the scenarios as simulated chats betweeen a user (role-played) and the assistant, in the playground.
![Simulation](img/simulate.png)

View file

@ -0,0 +1,7 @@
# Building Assistants in Studio
This is a guide to building your first assistant on RowBoat Studio, with examples.<br>
Prerequisite:
1. **Open Source Users:** Complete the [open-source installation steps](/oss_installation/) to set up RowBoat Studio.
2. **Hosted App Users:** Sign in to [https://app.rowboatlabs.com/](https://app.rowboatlabs.com/)

View file

@ -1 +1,6 @@
Coming soon.
# Tools
- Tools are used to carry out specific tasks such as fetching or updating information.
- Tools can be defined once in RowBoat Studio and reused across different agents.
- RowBoat uses OpenAI style tools with name, description and parameters.
- For the purposes of quick testing in the Playground, RowBoat Studio can mock tool responses based on tool descriptions.
- Developers can easily connect tools to APIs by configuring a Webhook URL in Studio, to which all tool calls will be routed.

View file

@ -0,0 +1,8 @@
## Update agent behavior
Copilot can help you update agent behavior. It is also aware of the current chat in the playground so you can make references to the current chat while instructing copilot to update agents.
![Update Agent Behavior](img/update-agent-with-copilot.png)
Playground:
![Test Updated Agent](img/test-updated-agent.png)