Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions solutions/search/agent-builder/a2a-server.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ applies_to:
---

:::{warning}
WIP
These pages are currently hidden from the docs TOC and have `noindexed` meta headers.

These pages are hidden from the docs TOC and have `noindexed` meta headers.
**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).**
:::

# Agent-to-Agent (A2A) server
Expand All @@ -33,5 +33,5 @@ POST /api/agent_builder/a2a/{agentId}
```

:::{important}
Both A2A endpoints require API key authentication. For more information about the A2A protocol, see the [A2A protocol specification](https://a2aprotocol.ai/docs/guide/a2a-protocol-specification-python#protocol-flow-diagram).
Both A2A endpoints require API key authentication. For more information about the A2A protocol, refer to the [A2A protocol specification](https://a2aprotocol.ai/docs/guide/a2a-protocol-specification-python#protocol-flow-diagram).
:::
49 changes: 32 additions & 17 deletions solutions/search/agent-builder/agent-builder-agents.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,24 +7,27 @@ applies_to:
---

:::{warning}
WIP
These pages are currently hidden from the docs TOC and have `noindexed` meta headers.

These pages are hidden from the docs TOC and have `noindexed` meta headers.
**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).**
:::

# {{agent-builder}}: Agents

Agents engage in natural language conversations with users and interact with your {{es}} data through tools.
Fundamentally, an agent is defined by its custom instructions and the set of tools it's assigned.
Agents are AI models (LLMs) defined with custom instructions and a set of assigned [tools](tools.md). Users [chat](chat.md) with agents using natural language, in the Agent Builder UI or programmatically.

Each agent manages the conversation flow, interprets user requests, and provides responses based on its configured tools, instructions, and behavior settings.
An agent parses user requests to define a goal and then runs tools in a loop to achieve that goal. The agent provides responses based on its configured tools, instructions, and behavior settings.

## How agents work

When you ask a question to an agent, it analyzes your request, selects the most appropriate tool, and determines the right arguments to use. After receiving results, the agent evaluates the information and decides whether to use additional tools or formulate a response. This iterative process of tool selection, execution, and analysis continues until the agent can provide a complete answer.
When you ask a question to an agent, it analyzes your request to define a specific goal. It selects the most appropriate tools and determines the right arguments to use. The agent evaluates the information returned after each action and decides whether to use additional tools or formulate a response. This iterative process of tool selection, execution, and analysis continues until the agent can provide a complete answer.

{{agent-builder}} includes a default agent (named `Elastic AI Agent`) with access to all built-in tools. You can create specialized agents with custom instructions and selected tools to address specific use cases or workflows.

:::{note}
The default `Elastic AI Agent` is immutable and cannot be edited. To customize agent behavior, you need to create a custom agent by cloning the default agent or creating a new one from scratch.
:::

## Manage your agents

The **Agents** page provides a centralized view of all your agents. From this page you can:
Expand All @@ -34,7 +37,7 @@ The **Agents** page provides a centralized view of all your agents. From this pa
- Filter agents by labels using the **Labels** dropdown
- Create new agents using the **+ New agent** button
- Start chatting with an agent or perform other actions
- **Elastic AI Agent**: you can **chat** or **clone** the default agent using the chat or clone buttons.
- **Elastic AI Agent**: you can **chat** or **clone** the default agent using the chat or clone buttons. The default agent cannot be edited directly.
:::{image} images/chat-and-clone-buttons.png
:alt: Chat with agent and clone agent buttons
:width: 120px
Expand All @@ -45,7 +48,7 @@ The **Agents** page provides a centralized view of all your agents. From this pa
:width: 130px
:::

## How to create a new agent
## Create a new agent in the GUI

Follow these steps to create a new agent:

Expand All @@ -58,10 +61,10 @@ Navigate to the **Agents** page to access the agent management interface.

::::{step} Create a new agent

Click the **New agent** button to start creating a new agent.
Select the **New agent** button to being creating a new agent.

:::{image} images/new-agent-button.png
:alt: Click the New agent button to create a new agent
:alt: Select the New agent button to create a new agent
:width: 150px
:::

Expand All @@ -73,13 +76,13 @@ Click the **New agent** button to start creating a new agent.
Configure the essential agent settings in the **settings** tab:

1. Enter an **Agent ID**, a unique identifier for reference in code.
1. Add **Custom instructions**.<br><br>Custom instructions define the agent's personality and determine how it will interact with users and perform tasks.
1. Add **Custom instructions**.<br><br>Custom instructions define the agent's personality and determine how it interacts with users and perform tasks.

:::{note}
Your custom instructions are added to the system prompt to define the agent's behavior. The system prompt enables core features like visualization and citations.
Agent Builder adds your custom instructions to the system prompt to define the agent's behavior. The system prompt enables core features like visualization and citations.
:::
1. Set the **Display name** that users will see.
1. Add a **Display description** to explain the agent's purpose
1. Set the **Display name** for users.
1. Add a **Display description** to explain the agent's purpose.

::::

Expand All @@ -96,18 +99,30 @@ Select the combination of built-in and custom tools available to the agent, base
Optionally customize the agent's appearance and organization:

- Add **Labels** to organize your agents
- Choose an **Avatar color** and **Avatar symbol** to help visually distinguish the agent
- Select an **Avatar color** and **Avatar symbol** to help visually distinguish the agent

::::

::::{step} Save your changes

Click **Save** to create your agent, or **Save and chat** to create the agent and immediately start a conversation with it.
Select **Save** to create your agent, or **Save and chat** to create the agent and immediately begin a conversation with it.

:::{image} images/save-and-chat-buttons.png
:alt: Save and Save and chat buttons
:width: 270px
:::

::::
:::::
:::::

## Agents API

The Agents API enables programmatic access to agent creation and management actions.

### Quick overview

For an overview, refer to [Agents API](kibana-api.md#agents).

### Serverless API reference

For the complete API reference, refer to the [Kibana serverless API reference](https://www.elastic.co/docs/api/doc/serverless/).
72 changes: 68 additions & 4 deletions solutions/search/agent-builder/chat.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,77 @@ applies_to:
---

:::{warning}
WIP
These pages are currently hidden from the docs TOC and have `noindexed` meta headers.

These pages are hidden from the docs TOC and have `noindexed` meta headers.
**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).**
:::

# {{agent-builder}}: Agent Chat UI
# {{agent-builder}}: Agent Chat

**Agent Chat** is the synchronous chat interface for natural language conversations with your [agents](agent-builder-agents.md).

The chat GUI and programmatic interfaces enable real-time communication where you can ask questions, request data analysis, and receive immediate responses from your configured agents.

## Get started

:::{tip}
Refer to the [getting started](get-started.md) guide to enable the feature and ingest some data.
:::

Once the feature is enabled, find **Agents** in the navigation menu to begin chatting.
You can also search for **Agent Builder** in the [global search bar](/explore-analyze/find-and-organize/find-apps-and-objects.md).

This takes you to the chat GUI:

:::{image} images/agent-builder-chat-UI-get-started.png
:::
:alt: The main Agent Chat GUI showing the chat window, message input box, and agent selection panel

## Agent Chat GUI

### Chat and select agent

Use the text input area to chat with an agent in real time. By default, you chat with the built-in Elastic AI Agent.

:::{image} images/agent-builder-chat-input.png
:alt: Text input area for chatting with agents
:width: 850px
:::

#### Agent selector

Use the agent selector to switch agents, to navigate to the agent management section, or to create a new agent.

:::{image} images/agent-builder-agent-selector.png
:alt: Agent selector dropdown and message input field
:width: 850px
:::

### Find conversation history

Use the left sidebar to access previous conversations.

:::{image} images/agent-builder-chat-history.png
:alt: Chat history panel showing conversation list
:width: 250px
:::

## Agent Chat API

The Agent Chat API provides programmatic access to chat functionality through REST endpoints.

### Quick overview

For a quick overview of the REST API for conversations, refer to [Chat and conversations API](kibana-api.md#chat-and-conversations).

### Serverless API reference

For the complete API reference, refer to the [Kibana serverless API reference](https://www.elastic.co/docs/api/doc/serverless/).







The **Agent Chat** UI is the synchronous chat interface for interacting with agents through natural language. The chat UI enables real-time communication where you can ask questions, request data analysis, and receive immediate responses from your configured agents.

32 changes: 17 additions & 15 deletions solutions/search/agent-builder/get-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,24 +7,24 @@ applies_to:
---

:::{warning}
WIP
These pages are currently hidden from the docs TOC and have `noindexed` meta headers.

These pages are hidden from the docs TOC and have `noindexed` meta headers.
**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).**
:::

# Get started with {{agent-builder}}

:::{tip}
See the [overview page](../elastic-agent-builder.md) for full list of docs pages.
Refer to the [overview page](../elastic-agent-builder.md) for the full list of Agent Builder docs.
:::
% TODO: Delete this tip when unhide pages
% TODO: Remove this tip when unhide pages

Learn how get started by enabling the {{agent-builder}} features and begin chatting with your data.

:::::{stepper}
::::{step} Set up an Elastic deployment

If you don't already have an Elastic deployment, refer to [Choose your deployment type](/solutions/search/get-started.md#choose-your-deployment-type).
If you don't already have an Elastic deployment, refer to [Select your deployment type](/solutions/search/get-started.md#choose-your-deployment-type).

:::{note}
For {{ech}} deployments, make sure you are using the solution navigation instead of classic navigation.
Expand All @@ -35,47 +35,49 @@ You can set up a new [space](/deploy-manage/manage-spaces.md) to use the solutio

::::{step} Enable {{agent-builder}}

{{agent-builder}} is disabled by default in the initial release, so you'll need to enable the feature to get started.
{{agent-builder}} is turned off by default in the initial release, so you need to enable the feature to get started.

You can enable the features using the UI:

1. Navigate to **Stack Management > Settings**
2. Find **AI > Agent Builder** in the left-hand navigation
3. Toggle **{{agent-builder}}** to on
4. Click **Save changes**
4. Select **Save changes**

Refresh the browser page and find **Agents** in the navigation menu to start using the feature.
Refresh the browser page and find **Agents** in the navigation menu to begin using the feature.
You can also search for **Agent Builder** in the [global search bar](/explore-analyze/find-and-organize/find-apps-and-objects.md).


::::

::::{step} Ingest some data

Before you get started with agents, you need some data in your {{es}} cluster. Otherwise, you'll just be chatting to the underlying LLM without any retrieval-augmented context.
Before you begin with agents, you need some data in your {{es}} cluster. Otherwise, you will be chatting to the underlying LLM without any retrieval-augmented context.

To learn about adding data for search use cases, go to [](/solutions/search/ingest-for-search.md).
For a broader overview of ingestion options, go to [](/manage-data/ingest.md).

:::{tip}
If you're not ready to add your own data, you can use the Elastic [sample data](/manage-data/ingest/sample-data.md) or create small data sets when you follow the instructions in the [quickstarts](/solutions/search/get-started/quickstarts.md).
If you're not ready to add your own data, you can:
- Use the Elastic [sample data](/manage-data/ingest/sample-data.md).
- Generate synthetic financial data using [this Python tool](https://github.com/jeffvestal/synthetic-financial-data?tab=readme-ov-file#synthetic-financial-data-generator-). (This requires your [{{es}} URL and an API key](/solutions/search/search-connection-details.md)).

% TODO: we can link to a an agent builder tutorial if we add one in the docs
:::

::::

::::{step} Start chatting
::::{step} Begin chatting

The **Agent Chat** UI provides a conversational interface where you can interact with agents and explore your data using natural language. {{agent-builder}} includes a default agent named `Elastic AI Agent` with access to all built-in tools, so you can start chatting immediately.
The **Agent Chat** UI provides a conversational interface where you can interact with agents and explore your data using natural language. {{agent-builder}} includes a default agent named `Elastic AI Agent` with access to all built-in tools, so you can begin chatting immediately.

Learn more in [Agent Chat](chat.md).


::::

::::{step} Start building agents and tools
::::{step} Begin building agents and tools

Once you've tested the default **Elastic AI Agent** with the [built-in Elastic tools](tools.md), you'll want to start [building your own agents](agent-builder-agents.md#create-a-new-agent) with custom instructions and [creating your own tools](tools.md#create-custom-tools) to assign them.
Once you've tested the default **Elastic AI Agent** with the [built-in Elastic tools](tools.md), you can begin [building your own agents](agent-builder-agents.md#create-a-new-agent) with custom instructions and [creating your own tools](tools.md#create-custom-tools) to assign them.

::::

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading