From 1c56d57686bae473668ff63c3f1a185ea7efa087 Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Mon, 6 Oct 2025 15:14:06 +0200 Subject: [PATCH 01/11] [Agent Builder] Add page about models --- solutions/search/agent-builder/get-started.md | 6 + .../agent-builder/limitations-known-issues.md | 4 +- solutions/search/agent-builder/models.md | 154 ++++++++++++++++++ solutions/search/elastic-agent-builder.md | 7 + solutions/toc.yml | 1 + 5 files changed, 170 insertions(+), 2 deletions(-) create mode 100644 solutions/search/agent-builder/models.md diff --git a/solutions/search/agent-builder/get-started.md b/solutions/search/agent-builder/get-started.md index 56272f2636..b26cf80bf5 100644 --- a/solutions/search/agent-builder/get-started.md +++ b/solutions/search/agent-builder/get-started.md @@ -75,6 +75,12 @@ Learn more in [Agent Chat](chat.md). :::: +::::{step} Configure model (optional) + +By default, {{agent-builder}} uses the Elastic Managed LLM. To use a different model, refer to [model selection and configuration](models.md). + +:::: + ::::{step} Begin building agents and tools 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. diff --git a/solutions/search/agent-builder/limitations-known-issues.md b/solutions/search/agent-builder/limitations-known-issues.md index 0d509ea9bf..357b5ef2a7 100644 --- a/solutions/search/agent-builder/limitations-known-issues.md +++ b/solutions/search/agent-builder/limitations-known-issues.md @@ -22,9 +22,9 @@ While in private technical preview, {{agent-builder}} is not enabled by default. ### Model selection -Initially, {{agent-builder}} only supports working with the [Elastic Managed LLM](kibana://reference/connectors-kibana/elastic-managed-llm.md) running on the [Elastic Inference Service](/explore-analyze/elastic-inference/eis.md) {applies_to}`serverless: preview` {applies_to}`ess: preview 9.2`. +Initially, {{agent-builder}} defaults to working with the [Elastic Managed LLM](kibana://reference/connectors-kibana/elastic-managed-llm.md) running on the [Elastic Inference Service](/explore-analyze/elastic-inference/eis.md) {applies_to}`serverless: preview` {applies_to}`ess: preview 9.2`. -Learn about [pricing](https://www.elastic.co/pricing/serverless-search) for the Elastic Managed LLM. +Learn more on the [models page](models.md). ## Known issues diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md new file mode 100644 index 0000000000..b794284c7f --- /dev/null +++ b/solutions/search/agent-builder/models.md @@ -0,0 +1,154 @@ +--- +navigation_title: "Use different models" +applies_to: + stack: preview 9.2 + serverless: + elasticsearch: preview +--- + +:::{warning} +These pages are currently hidden from the docs TOC and have `noindexed` meta headers. + +**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** +::: + +# Using different models in {{agent-builder}} + +{{agent-builder}} uses large language models (LLMs) to power agent reasoning and decision-making. By default, agents use the Elastic Managed LLM, but you can configure other models through Kibana connectors. + +## Default model configuration + +By default, {{agent-builder}} uses the Elastic Managed LLM connector running on the [Elastic Inference Service](/explore-analyze/elastic-inference/eis.md) {applies_to}`serverless: preview` {applies_to}`ess: preview 9.2`. + +This managed service requires zero setup and no additional API key management. + +Learn more about the [Elastic Managed LLM connector](kibana://reference/connectors-kibana/elastic-managed-llm) and [pricing](https://www.elastic.co/pricing). + +## Change the default model + +By default, {{agent-builder}} uses the Elastic Managed LLM. To use a different model, you'll need a configured connector and then set it as the default. + +### Use a pre-configured connector + +1. Search for **GenAI Settings** in the global search field +2. Select your preferred connector from the **Default AI Connector** dropdown +3. Save your changes + +### Create a new connector in the UI + +1. Find connectors under **Alerts and Insights / Connectors** in the [global search bar](/explore-analyze/find-and-organize/find-apps-and-objects.md) +2. Select **Create Connector** and select your model provider +3. Configure the connector with your API credentials and preferred model +4. Search for **GenAI Settings** in the global search field +5. Select your new connector from the **Default AI Connector** dropdown +6. Save your changes + +For detailed instructions on creating connectors, refer to [Connectors](https://www.elastic.co/docs/deploy-manage/manage-connectors). + +Learn more about [preconfigured connectors](https://www.elastic.co/docs/reference/kibana/connectors-kibana/pre-configured-connectors). + +## Connectors API + +For programmatic access to connector management, refer to the [Connectors API documentation]({{kib-serverless-apis}}group/endpoint-connectors). + +## Recommended models + +{{agent-builder}} requires models with strong reasoning and tool-calling capabilities. State-of-the-art models perform significantly better than smaller or older models. + +### Recommended model families + +The following models are known to work well with {{agent-builder}}: + +- **OpenAI**: GPT-4.1, GPT-4o +- **Anthropic**: Claude Sonnet 4.5, Claude Sonnet 4, Claude Sonnet 3.7 +- **Google**: Gemini 2.5 Pro + +### Why model quality matters + +Agent Builder relies on advanced LLM capabilities including: + +- **Function calling**: Models must accurately select appropriate tools and construct valid parameters from natural language requests +- **Multi-step reasoning**: Agents need to plan, execute, and adapt based on tool results across multiple iterations +- **Structured output**: Models must produce properly formatted responses that the agent framework can parse + +Smaller or less capable models may produce errors like: + +```console-response +Error: Invalid function call syntax +``` + +```console-response +Error executing agent: No tool calls found in the response. +``` + +While any chat-completion-compatible connector can technically be configured, we strongly recommend using state-of-the-art models for reliable agent performance. + +:::{note} +GPT-4o-mini and similar smaller models are not recommended for {{agent-builder}} as they lack the necessary capabilities for reliable agent workflows. +::: + +## Connect a local LLM + +You can connect a locally hosted LLM to Elastic using the OpenAI connector. This requires your local LLM to be compatible with the OpenAI API format. + +### Requirements + +**Model selection:** +- Must include "instruct" in the model name to work with Elastic +- Download from trusted sources only +- Consider parameter size, context window, and quantization format for your needs + +**Integration setup:** +- For Elastic Cloud: Requires a reverse proxy (such as Nginx) to authenticate requests using a bearer token and forward them to your local LLM endpoint +- For self-managed deployments on the same host as your LLM: Can connect directly without a reverse proxy +- Your local LLM server must use the OpenAI SDK for API compatibility + +### Configure the connector + +:::::{stepper} +::::{step} Set up your local LLM server + +Ensure your local LLM is running and accessible via an OpenAI-compatible API endpoint. + +:::: + +::::{step} Create the OpenAI connector + +1. Log in to your Elastic deployment +2. Find connectors under **Alerts and Insights / Connectors** in the [global search bar](/explore-analyze/find-and-organize/find-apps-and-objects.md) +3. Select **Create Connector** and select **OpenAI** +4. Name your connector to help track the model version you're using +5. Under **Select an OpenAI provider**, select **Other (OpenAI Compatible Service)** + +:::: + +::::{step} Configure connection details + +1. Under **URL**, enter: + - For Elastic Cloud: Your reverse proxy domain + `/v1/chat/completions` + - For same-host self-managed: `http://localhost:1234/v1/chat/completions` (adjust port as needed) +2. Under **Default model**, enter `local-model` +3. Under **API key**, enter: + - For Elastic Cloud: Your reverse proxy authentication token + - For same-host self-managed: Your LLM server's API key +4. Select **Save** + +:::: + +::::{step} Set as default (optional) + +To use your local model as the default for {{agent-builder}}: + +1. Search for **GenAI Settings** in the global search field +2. Select your local LLM connector from the **Default AI Connector** dropdown +3. Save your changes + +:::: + +::::: + +## Related pages + +- [Limitations and known issues](limitations-known-issues.md): Current limitations around model selection +- [Get started](get-started.md): Initial setup and configuration +- [Connectors](/deploy-manage/manage-connectors): Detailed connector configuration guide \ No newline at end of file diff --git a/solutions/search/elastic-agent-builder.md b/solutions/search/elastic-agent-builder.md index 4a3534cd71..dad2e18e2d 100644 --- a/solutions/search/elastic-agent-builder.md +++ b/solutions/search/elastic-agent-builder.md @@ -54,6 +54,13 @@ To get started you need an Elastic deployment and you must enable the feature. [**Get started with {{agent-builder}}**](agent-builder/get-started.md) +## Model selection + +By default, agents use the Elastic Managed LLM, but you can configure other model providers using connectors, including local LLMs deployed on your infrastructure. + +[**Learn more about model selection**](agent-builder/models.md) + + ## Programmatic interfaces {{agent-builder}} provides APIs and LLM integration options for programmatic access and automation. diff --git a/solutions/toc.yml b/solutions/toc.yml index 7c3c9ad6af..8eeb53cbf3 100644 --- a/solutions/toc.yml +++ b/solutions/toc.yml @@ -46,6 +46,7 @@ toc: - file: search/using-openai-compatible-models.md - hidden: search/elastic-agent-builder.md - hidden: search/agent-builder/get-started.md + - hidden: search/agent-builder/models.md - hidden: search/agent-builder/chat.md - hidden: search/agent-builder/agent-builder-agents.md - hidden: search/agent-builder/tools.md From b3b02c7a21fd56d3ff55dcdc2ac76c929f4cd7cb Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Mon, 6 Oct 2025 15:25:01 +0200 Subject: [PATCH 02/11] fix links --- solutions/search/agent-builder/models.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md index b794284c7f..3468d3092c 100644 --- a/solutions/search/agent-builder/models.md +++ b/solutions/search/agent-builder/models.md @@ -22,7 +22,7 @@ By default, {{agent-builder}} uses the Elastic Managed LLM connector running on This managed service requires zero setup and no additional API key management. -Learn more about the [Elastic Managed LLM connector](kibana://reference/connectors-kibana/elastic-managed-llm) and [pricing](https://www.elastic.co/pricing). +Learn more about the [Elastic Managed LLM connector](kibana://reference/connectors-kibana/elastic-managed-llm.md) and [pricing](https://www.elastic.co/pricing). ## Change the default model @@ -151,4 +151,4 @@ To use your local model as the default for {{agent-builder}}: - [Limitations and known issues](limitations-known-issues.md): Current limitations around model selection - [Get started](get-started.md): Initial setup and configuration -- [Connectors](/deploy-manage/manage-connectors): Detailed connector configuration guide \ No newline at end of file +- [Connectors](/deploy-manage/manage-connectors.md): Detailed connector configuration guide \ No newline at end of file From 7369a3aa5d5b4a5b3fd587f55ccee779503633f9 Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Mon, 6 Oct 2025 16:59:26 +0200 Subject: [PATCH 03/11] clarify instruct variant guidance --- solutions/search/agent-builder/models.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md index 3468d3092c..8154629800 100644 --- a/solutions/search/agent-builder/models.md +++ b/solutions/search/agent-builder/models.md @@ -94,9 +94,9 @@ You can connect a locally hosted LLM to Elastic using the OpenAI connector. This ### Requirements **Model selection:** -- Must include "instruct" in the model name to work with Elastic - Download from trusted sources only - Consider parameter size, context window, and quantization format for your needs +- Prefer "instruct" variants over "base" or "chat" versions when multiple variants are available, as instruct models are typically better tuned for following instructions **Integration setup:** - For Elastic Cloud: Requires a reverse proxy (such as Nginx) to authenticate requests using a bearer token and forward them to your local LLM endpoint From 1353c3eefadca58231f382d760084be8c1ab487e Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Wed, 15 Oct 2025 15:27:35 +0200 Subject: [PATCH 04/11] Factor out local LLM instructions --- solutions/search/agent-builder/models.md | 58 +----------------------- 1 file changed, 2 insertions(+), 56 deletions(-) diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md index 194f27b25b..f2c950dee7 100644 --- a/solutions/search/agent-builder/models.md +++ b/solutions/search/agent-builder/models.md @@ -26,7 +26,7 @@ Learn more about the [Elastic Managed LLM connector](kibana://reference/connecto ## Change the default model -By default, {{agent-builder}} uses the Elastic Managed LLM. To use a different model, you'll need a configured connector and then set it as the default. +By default, {{agent-builder}} uses the Elastic Managed LLM. To use a different model, select a configured connector and set it as the default. ### Use a pre-configured connector @@ -91,61 +91,7 @@ GPT-4o-mini and similar smaller models are not recommended for {{agent-builder}} You can connect a locally hosted LLM to Elastic using the OpenAI connector. This requires your local LLM to be compatible with the OpenAI API format. -### Requirements - -**Model selection:** -- Download from trusted sources only -- Consider parameter size, context window, and quantization format for your needs -- Prefer "instruct" variants over "base" or "chat" versions when multiple variants are available, as instruct models are typically better tuned for following instructions - -**Integration setup:** -- For Elastic Cloud: Requires a reverse proxy (such as Nginx) to authenticate requests using a bearer token and forward them to your local LLM endpoint -- For self-managed deployments on the same host as your LLM: Can connect directly without a reverse proxy -- Your local LLM server must use the OpenAI SDK for API compatibility - -### Configure the connector - -:::::{stepper} -::::{step} Set up your local LLM server - -Ensure your local LLM is running and accessible via an OpenAI-compatible API endpoint. - -:::: - -::::{step} Create the OpenAI connector - -1. Log in to your Elastic deployment -2. Find connectors under **Alerts and Insights / Connectors** in the [global search bar](/explore-analyze/find-and-organize/find-apps-and-objects.md) -3. Select **Create Connector** and select **OpenAI** -4. Name your connector to help track the model version you're using -5. Under **Select an OpenAI provider**, select **Other (OpenAI Compatible Service)** - -:::: - -::::{step} Configure connection details - -1. Under **URL**, enter: - - For Elastic Cloud: Your reverse proxy domain + `/v1/chat/completions` - - For same-host self-managed: `http://localhost:1234/v1/chat/completions` (adjust port as needed) -2. Under **Default model**, enter `local-model` -3. Under **API key**, enter: - - For Elastic Cloud: Your reverse proxy authentication token - - For same-host self-managed: Your LLM server's API key -4. Select **Save** - -:::: - -::::{step} Set as default (optional) - -To use your local model as the default for {{agent-builder}}: - -1. Search for **GenAI Settings** in the global search field -2. Select your local LLM connector from the **Default AI Connector** dropdown -3. Save your changes - -:::: - -::::: +Refer to the [OpenAI connector documentation](kibana://reference/connectors-kibana/openai.md) for detailed setup instructions. ## Related pages From a0d4ed4e5c0a759de10bb57828ec6a2ebe067ec6 Mon Sep 17 00:00:00 2001 From: Liam Thompson Date: Thu, 16 Oct 2025 11:59:36 +0200 Subject: [PATCH 05/11] Fix OpenAI connector link --- solutions/search/agent-builder/models.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md index f2c950dee7..06e45d8baa 100644 --- a/solutions/search/agent-builder/models.md +++ b/solutions/search/agent-builder/models.md @@ -91,7 +91,7 @@ GPT-4o-mini and similar smaller models are not recommended for {{agent-builder}} You can connect a locally hosted LLM to Elastic using the OpenAI connector. This requires your local LLM to be compatible with the OpenAI API format. -Refer to the [OpenAI connector documentation](kibana://reference/connectors-kibana/openai.md) for detailed setup instructions. +Refer to the [OpenAI connector documentation](kibana://reference/connectors-kibana/openai-action-type.md) for detailed setup instructions. ## Related pages From cf6c1e6f824c58a00f04079000c7ad14a6b657f5 Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Mon, 20 Oct 2025 12:05:08 +0200 Subject: [PATCH 06/11] clarify dropdown --- solutions/search/agent-builder/models.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md index 06e45d8baa..736fd808ac 100644 --- a/solutions/search/agent-builder/models.md +++ b/solutions/search/agent-builder/models.md @@ -40,7 +40,7 @@ By default, {{agent-builder}} uses the Elastic Managed LLM. To use a different m 2. Select **Create Connector** and select your model provider 3. Configure the connector with your API credentials and preferred model 4. Search for **GenAI Settings** in the global search field -5. Select your new connector from the **Default AI Connector** dropdown +5. Select your new connector from the **Default AI Connector** dropdown under **Custom connectors** 6. Save your changes For detailed instructions on creating connectors, refer to [Connectors](https://www.elastic.co/docs/deploy-manage/manage-connectors). From e8c26f105adff972ab2203ec6fa619e0a7f60a1f Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Mon, 20 Oct 2025 12:28:56 +0200 Subject: [PATCH 07/11] Publish agent builder docs --- solutions/search/agent-builder/a2a-server.md | 6 ---- .../agent-builder/agent-builder-agents.md | 6 ---- solutions/search/agent-builder/chat.md | 10 ++----- solutions/search/agent-builder/get-started.md | 11 ------- solutions/search/agent-builder/kibana-api.md | 6 ---- .../agent-builder/limitations-known-issues.md | 6 ---- solutions/search/agent-builder/mcp-server.md | 6 ---- solutions/search/agent-builder/models.md | 20 +++++-------- .../agent-builder/programmatic-access.md | 6 ---- solutions/search/agent-builder/tools.md | 6 ---- .../search/agent-builder/tools/esql-tools.md | 4 --- .../agent-builder/tools/index-search-tools.md | 4 --- solutions/search/elastic-agent-builder.md | 4 --- solutions/toc.yml | 29 ++++++++++--------- 14 files changed, 25 insertions(+), 99 deletions(-) diff --git a/solutions/search/agent-builder/a2a-server.md b/solutions/search/agent-builder/a2a-server.md index 7077b6b963..5a315d8970 100644 --- a/solutions/search/agent-builder/a2a-server.md +++ b/solutions/search/agent-builder/a2a-server.md @@ -6,12 +6,6 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently 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 The [**Agent-to-Agent (A2A) server**](https://github.com/a2aproject/A2A) enables external A2A clients to communicate with {{agent-builder}} agents. diff --git a/solutions/search/agent-builder/agent-builder-agents.md b/solutions/search/agent-builder/agent-builder-agents.md index 6ecd467444..2fb719eba0 100644 --- a/solutions/search/agent-builder/agent-builder-agents.md +++ b/solutions/search/agent-builder/agent-builder-agents.md @@ -6,12 +6,6 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently 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 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. diff --git a/solutions/search/agent-builder/chat.md b/solutions/search/agent-builder/chat.md index eec65d6fbb..37419c6684 100644 --- a/solutions/search/agent-builder/chat.md +++ b/solutions/search/agent-builder/chat.md @@ -1,20 +1,14 @@ --- -navigation_title: "Agent Chat UI" +navigation_title: "Agent Chat" applies_to: stack: preview 9.2 serverless: elasticsearch: preview --- -:::{warning} -These pages are currently 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 -**Agent Chat** is the synchronous chat interface for natural language conversations with your [agents](agent-builder-agents.md). +**Agent Chat** is the 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. diff --git a/solutions/search/agent-builder/get-started.md b/solutions/search/agent-builder/get-started.md index df5d349b3b..ff667c9ee0 100644 --- a/solutions/search/agent-builder/get-started.md +++ b/solutions/search/agent-builder/get-started.md @@ -6,19 +6,8 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently 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} -Refer to the [overview page](../elastic-agent-builder.md) for the full list of Agent Builder docs. -::: -% TODO: Remove this tip when unhide pages - Learn how to get started by enabling the {{agent-builder}} features and begin chatting with your data. :::::{stepper} diff --git a/solutions/search/agent-builder/kibana-api.md b/solutions/search/agent-builder/kibana-api.md index 7e58bdedc9..0b81062846 100644 --- a/solutions/search/agent-builder/kibana-api.md +++ b/solutions/search/agent-builder/kibana-api.md @@ -6,12 +6,6 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. - -**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** -::: - # Work with {{agent-builder}} using the APIs This page provides a quick overview of the main Kibana API endpoints for {{agent-builder}}. For complete details including all available parameters, request/response schemas, and error handling, refer to the [Kibana serverless API reference](https://www.elastic.co/docs/api/doc/serverless/group/endpoint-agent-builder). diff --git a/solutions/search/agent-builder/limitations-known-issues.md b/solutions/search/agent-builder/limitations-known-issues.md index 6b29016e1b..c870b7cda3 100644 --- a/solutions/search/agent-builder/limitations-known-issues.md +++ b/solutions/search/agent-builder/limitations-known-issues.md @@ -6,12 +6,6 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. - -**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** -::: - # Limitations and known issues in {{agent-builder}} ## Limitations diff --git a/solutions/search/agent-builder/mcp-server.md b/solutions/search/agent-builder/mcp-server.md index 55138a59ad..9842b7e25b 100644 --- a/solutions/search/agent-builder/mcp-server.md +++ b/solutions/search/agent-builder/mcp-server.md @@ -8,12 +8,6 @@ applies_to: # Model Context Protocol (MCP) server -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. - -**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** -::: - The [**Model Context Protocol (MCP) server**](https://modelcontextprotocol.io/docs/getting-started/intro) provides a standardized interface for external clients to access {{agent-builder}} tools. ## MCP server endpoint diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md index 736fd808ac..3f02b5a4e8 100644 --- a/solutions/search/agent-builder/models.md +++ b/solutions/search/agent-builder/models.md @@ -1,17 +1,11 @@ --- -navigation_title: "Use different models" +navigation_title: "Models" applies_to: stack: preview 9.2 serverless: elasticsearch: preview --- -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. - -**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** -::: - # Using different models in {{agent-builder}} {{agent-builder}} uses large language models (LLMs) to power agent reasoning and decision-making. By default, agents use the Elastic Managed LLM, but you can configure other models through Kibana connectors. @@ -47,6 +41,12 @@ For detailed instructions on creating connectors, refer to [Connectors](https:// Learn more about [preconfigured connectors](https://www.elastic.co/docs/reference/kibana/connectors-kibana/pre-configured-connectors). +#### Connect a local LLM + +You can connect a locally hosted LLM to Elastic using the OpenAI connector. This requires your local LLM to be compatible with the OpenAI API format. + +Refer to the [OpenAI connector documentation](kibana://reference/connectors-kibana/openai-action-type.md) for detailed setup instructions. + ## Connectors API For programmatic access to connector management, refer to the [Connectors API documentation]({{kib-serverless-apis}}group/endpoint-connectors). @@ -87,12 +87,6 @@ While any chat-completion-compatible connector can technically be configured, we GPT-4o-mini and similar smaller models are not recommended for {{agent-builder}} as they lack the necessary capabilities for reliable agent workflows. ::: -## Connect a local LLM - -You can connect a locally hosted LLM to Elastic using the OpenAI connector. This requires your local LLM to be compatible with the OpenAI API format. - -Refer to the [OpenAI connector documentation](kibana://reference/connectors-kibana/openai-action-type.md) for detailed setup instructions. - ## Related pages - [Limitations and known issues](limitations-known-issues.md): Current limitations around model selection diff --git a/solutions/search/agent-builder/programmatic-access.md b/solutions/search/agent-builder/programmatic-access.md index e957e19d96..c75e9a4fe7 100644 --- a/solutions/search/agent-builder/programmatic-access.md +++ b/solutions/search/agent-builder/programmatic-access.md @@ -6,12 +6,6 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. - -**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** -::: - # Work programmatically with {{agent-builder}} {{agent-builder}} provides comprehensive integration options for programmatic access and automation. diff --git a/solutions/search/agent-builder/tools.md b/solutions/search/agent-builder/tools.md index 8e85f94b27..fde39b777e 100644 --- a/solutions/search/agent-builder/tools.md +++ b/solutions/search/agent-builder/tools.md @@ -6,12 +6,6 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. - -**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** -::: - # Tools in {{agent-builder}} [Agents](agent-builder-agents.md) use tools to search, retrieve, and take meaningful steps on your behalf. diff --git a/solutions/search/agent-builder/tools/esql-tools.md b/solutions/search/agent-builder/tools/esql-tools.md index 312ce5ea2f..05444cef2c 100644 --- a/solutions/search/agent-builder/tools/esql-tools.md +++ b/solutions/search/agent-builder/tools/esql-tools.md @@ -6,11 +6,7 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. -**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** -::: # {{esql}} tools diff --git a/solutions/search/agent-builder/tools/index-search-tools.md b/solutions/search/agent-builder/tools/index-search-tools.md index fc6fb8cae5..dae3b51abb 100644 --- a/solutions/search/agent-builder/tools/index-search-tools.md +++ b/solutions/search/agent-builder/tools/index-search-tools.md @@ -6,11 +6,7 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. -**Go to the docs [landing page](/solutions/search/elastic-agent-builder.md).** -::: # Index search tools diff --git a/solutions/search/elastic-agent-builder.md b/solutions/search/elastic-agent-builder.md index dad2e18e2d..df62b97241 100644 --- a/solutions/search/elastic-agent-builder.md +++ b/solutions/search/elastic-agent-builder.md @@ -6,10 +6,6 @@ applies_to: elasticsearch: preview --- -:::{warning} -These pages are currently hidden from the docs TOC and have `noindexed` meta headers. -::: - # {{agent-builder}} {{agent-builder}} is a set of AI-powered capabilities for developing and interacting with agents that work with your {{es}} data. Agent Builder simplifies building data-driven agents with intuitive UI and programmatic interfaces, so you don't have to compose the different pieces separately. diff --git a/solutions/toc.yml b/solutions/toc.yml index 55e56bf5c6..1471d62c0a 100644 --- a/solutions/toc.yml +++ b/solutions/toc.yml @@ -44,19 +44,22 @@ toc: - file: search/semantic-search/semantic-search-elser-ingest-pipelines.md - file: search/semantic-search/cohere-es.md - file: search/using-openai-compatible-models.md - - hidden: search/elastic-agent-builder.md - - hidden: search/agent-builder/get-started.md - - hidden: search/agent-builder/models.md - - hidden: search/agent-builder/chat.md - - hidden: search/agent-builder/agent-builder-agents.md - - hidden: search/agent-builder/tools.md - - hidden: search/agent-builder/tools/esql-tools.md - - hidden: search/agent-builder/tools/index-search-tools.md - - hidden: search/agent-builder/programmatic-access.md - - hidden: search/agent-builder/kibana-api.md - - hidden: search/agent-builder/mcp-server.md - - hidden: search/agent-builder/a2a-server.md - - hidden: search/agent-builder/limitations-known-issues.md + - file: search/elastic-agent-builder.md + children: + - file: search/agent-builder/get-started.md + - file: search/agent-builder/models.md + - file: search/agent-builder/chat.md + - file: search/agent-builder/agent-builder-agents.md + - file: search/agent-builder/tools.md + children: + - file: search/agent-builder/tools/esql-tools.md + - file: search/agent-builder/tools/index-search-tools.md + - file: search/agent-builder/programmatic-access.md + children: + - file: search/agent-builder/kibana-api.md + - file: search/agent-builder/a2a-server.md + - file: search/agent-builder/mcp-server.md + - file: search/agent-builder/limitations-known-issues.md - file: search/rag.md children: - file: search/rag/playground.md From 1bd690b4da469555a6daaeaac77b0ff7ae593cd4 Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Tue, 21 Oct 2025 09:30:05 +0200 Subject: [PATCH 08/11] Update applies_to metadata and limitations page because only available on ES serverless projects --- solutions/search/agent-builder/a2a-server.md | 2 ++ .../search/agent-builder/agent-builder-agents.md | 2 ++ solutions/search/agent-builder/chat.md | 2 ++ solutions/search/agent-builder/get-started.md | 2 ++ solutions/search/agent-builder/kibana-api.md | 2 ++ .../agent-builder/limitations-known-issues.md | 14 ++++++++++++-- solutions/search/agent-builder/mcp-server.md | 2 ++ solutions/search/agent-builder/models.md | 2 ++ .../search/agent-builder/programmatic-access.md | 2 ++ solutions/search/agent-builder/tools.md | 2 ++ solutions/search/agent-builder/tools/esql-tools.md | 2 ++ .../agent-builder/tools/index-search-tools.md | 2 ++ solutions/search/elastic-agent-builder.md | 2 ++ 13 files changed, 36 insertions(+), 2 deletions(-) diff --git a/solutions/search/agent-builder/a2a-server.md b/solutions/search/agent-builder/a2a-server.md index 5a315d8970..899c697c3a 100644 --- a/solutions/search/agent-builder/a2a-server.md +++ b/solutions/search/agent-builder/a2a-server.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # Agent-to-Agent (A2A) server diff --git a/solutions/search/agent-builder/agent-builder-agents.md b/solutions/search/agent-builder/agent-builder-agents.md index 2fb719eba0..fa910322d6 100644 --- a/solutions/search/agent-builder/agent-builder-agents.md +++ b/solutions/search/agent-builder/agent-builder-agents.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # {{agent-builder}}: Agents diff --git a/solutions/search/agent-builder/chat.md b/solutions/search/agent-builder/chat.md index 37419c6684..52a3adada9 100644 --- a/solutions/search/agent-builder/chat.md +++ b/solutions/search/agent-builder/chat.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # {{agent-builder}}: Agent Chat diff --git a/solutions/search/agent-builder/get-started.md b/solutions/search/agent-builder/get-started.md index 57b9d5f1f1..3266967f09 100644 --- a/solutions/search/agent-builder/get-started.md +++ b/solutions/search/agent-builder/get-started.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # Get started with {{agent-builder}} diff --git a/solutions/search/agent-builder/kibana-api.md b/solutions/search/agent-builder/kibana-api.md index 0b81062846..66cbd0bed8 100644 --- a/solutions/search/agent-builder/kibana-api.md +++ b/solutions/search/agent-builder/kibana-api.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # Work with {{agent-builder}} using the APIs diff --git a/solutions/search/agent-builder/limitations-known-issues.md b/solutions/search/agent-builder/limitations-known-issues.md index d94ed74268..52f41bec7e 100644 --- a/solutions/search/agent-builder/limitations-known-issues.md +++ b/solutions/search/agent-builder/limitations-known-issues.md @@ -4,15 +4,25 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # Limitations and known issues in {{agent-builder}} ## Limitations -### Agent Builder not enabled by default +### Feature availability -{{agent-builder}} must be enabled for non-serverless deployments {applies_to}`stack: preview 9.2`. Refer to [Get started](get-started.md#enable-agent-builder) for instructions. +#### Non-serverless deployments + +{{agent-builder}} is enabled by default in {{serverless-full}} for {{es}} projects. + +However, it must be enabled for non-serverless deployments {applies_to}`stack: preview 9.2`. Refer to [Get started](get-started.md#enable-agent-builder) for instructions. + +#### Serverless deployments + +In the first release of {{agent-builder}} on serverless, the feature is **only available on {{es}} projects**. ## Known issues diff --git a/solutions/search/agent-builder/mcp-server.md b/solutions/search/agent-builder/mcp-server.md index 9842b7e25b..d9a1180e34 100644 --- a/solutions/search/agent-builder/mcp-server.md +++ b/solutions/search/agent-builder/mcp-server.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # Model Context Protocol (MCP) server diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md index 341414605a..dd60cc6a21 100644 --- a/solutions/search/agent-builder/models.md +++ b/solutions/search/agent-builder/models.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # Using different models in {{agent-builder}} diff --git a/solutions/search/agent-builder/programmatic-access.md b/solutions/search/agent-builder/programmatic-access.md index c75e9a4fe7..e64c4a7603 100644 --- a/solutions/search/agent-builder/programmatic-access.md +++ b/solutions/search/agent-builder/programmatic-access.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # Work programmatically with {{agent-builder}} diff --git a/solutions/search/agent-builder/tools.md b/solutions/search/agent-builder/tools.md index fde39b777e..b487b94ab5 100644 --- a/solutions/search/agent-builder/tools.md +++ b/solutions/search/agent-builder/tools.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # Tools in {{agent-builder}} diff --git a/solutions/search/agent-builder/tools/esql-tools.md b/solutions/search/agent-builder/tools/esql-tools.md index 05444cef2c..2a82027b4e 100644 --- a/solutions/search/agent-builder/tools/esql-tools.md +++ b/solutions/search/agent-builder/tools/esql-tools.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- diff --git a/solutions/search/agent-builder/tools/index-search-tools.md b/solutions/search/agent-builder/tools/index-search-tools.md index dae3b51abb..64c1fc36e6 100644 --- a/solutions/search/agent-builder/tools/index-search-tools.md +++ b/solutions/search/agent-builder/tools/index-search-tools.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- diff --git a/solutions/search/elastic-agent-builder.md b/solutions/search/elastic-agent-builder.md index df62b97241..b6f74ee423 100644 --- a/solutions/search/elastic-agent-builder.md +++ b/solutions/search/elastic-agent-builder.md @@ -4,6 +4,8 @@ applies_to: stack: preview 9.2 serverless: elasticsearch: preview + observability: unavailable + security: unavailable --- # {{agent-builder}} From b935004af621d9bc5e9face02502f590f1a0ba1b Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Tue, 21 Oct 2025 09:34:05 +0200 Subject: [PATCH 09/11] simplify chat nav title --- solutions/search/agent-builder/chat.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solutions/search/agent-builder/chat.md b/solutions/search/agent-builder/chat.md index 52a3adada9..44977ebe57 100644 --- a/solutions/search/agent-builder/chat.md +++ b/solutions/search/agent-builder/chat.md @@ -1,5 +1,5 @@ --- -navigation_title: "Agent Chat" +navigation_title: "Chat" applies_to: stack: preview 9.2 serverless: From 4e27507d77800439066757c46813bd5b949ded2b Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Tue, 21 Oct 2025 09:44:21 +0200 Subject: [PATCH 10/11] swap tabs in enablement section, update applies_to --- solutions/search/agent-builder/get-started.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/solutions/search/agent-builder/get-started.md b/solutions/search/agent-builder/get-started.md index 3266967f09..db1e712a7d 100644 --- a/solutions/search/agent-builder/get-started.md +++ b/solutions/search/agent-builder/get-started.md @@ -28,6 +28,14 @@ You can set up a new [space](/deploy-manage/manage-spaces.md) to use the solutio ::::{applies-switch} +:::{applies-item} { "serverless": "preview", "elasticsearch" } + +{{agent-builder}} is enabled by default in serverless {{es}} projects. + +Find **Agents** in the navigation menu to begin using the feature, or search for **Agents** in the [global search field](/explore-analyze/find-and-organize/find-apps-and-objects.md). + +::: + :::{applies-item} stack: preview 9.2 You have to enable {{agent-builder}} to get started on non-serverless deployments. @@ -42,14 +50,6 @@ Find **Agents** in the navigation menu to begin using the feature, or search for ::: -:::{applies-item} serverless: - -{{agent-builder}} is enabled by default in serverless deployments. - -Find **Agents** in the navigation menu to begin using the feature, or search for **Agents** in the [global search field](/explore-analyze/find-and-organize/find-apps-and-objects.md). - -::: - :::: ::::: From cc2d57a2c95909cf9adda4f115084a29636141f5 Mon Sep 17 00:00:00 2001 From: Liam Thompson <32779855+leemthompo@users.noreply.github.com> Date: Tue, 21 Oct 2025 09:57:27 +0200 Subject: [PATCH 11/11] fix duplication --- solutions/search/agent-builder/models.md | 81 ------------------------ 1 file changed, 81 deletions(-) diff --git a/solutions/search/agent-builder/models.md b/solutions/search/agent-builder/models.md index dd60cc6a21..b9c72f6e81 100644 --- a/solutions/search/agent-builder/models.md +++ b/solutions/search/agent-builder/models.md @@ -57,87 +57,6 @@ For programmatic access to connector management, refer to the [Connectors API do {{agent-builder}} requires models with strong reasoning and tool-calling capabilities. State-of-the-art models perform significantly better than smaller or older models. -### Recommended model families - -The following models are known to work well with {{agent-builder}}: - -- **OpenAI**: GPT-4.1, GPT-4o -- **Anthropic**: Claude Sonnet 4.5, Claude Sonnet 4, Claude Sonnet 3.7 -- **Google**: Gemini 2.5 Pro - -### Why model quality matters - -Agent Builder relies on advanced LLM capabilities including: - -- **Function calling**: Models must accurately select appropriate tools and construct valid parameters from natural language requests -- **Multi-step reasoning**: Agents need to plan, execute, and adapt based on tool results across multiple iterations -- **Structured output**: Models must produce properly formatted responses that the agent framework can parse - -Smaller or less capable models may produce errors like: - -```console-response -Error: Invalid function call syntax -``` - -```console-response -Error executing agent: No tool calls found in the response. -``` - -While any chat-completion-compatible connector can technically be configured, we strongly recommend using state-of-the-art models for reliable agent performance. - -:::{note} -GPT-4o-mini and similar smaller models are not recommended for {{agent-builder}} as they lack the necessary capabilities for reliable agent workflows. -::: - -# Using different models in {{agent-builder}} - -{{agent-builder}} uses large language models (LLMs) to power agent reasoning and decision-making. By default, agents use the Elastic Managed LLM, but you can configure other models through Kibana connectors. - -## Default model configuration - -By default, {{agent-builder}} uses the Elastic Managed LLM connector running on the [Elastic Inference Service](/explore-analyze/elastic-inference/eis.md) {applies_to}`serverless: preview` {applies_to}`ess: preview 9.2`. - -This managed service requires zero setup and no additional API key management. - -Learn more about the [Elastic Managed LLM connector](kibana://reference/connectors-kibana/elastic-managed-llm.md) and [pricing](https://www.elastic.co/pricing). - -## Change the default model - -By default, {{agent-builder}} uses the Elastic Managed LLM. To use a different model, select a configured connector and set it as the default. - -### Use a pre-configured connector - -1. Search for **GenAI Settings** in the global search field -2. Select your preferred connector from the **Default AI Connector** dropdown -3. Save your changes - -### Create a new connector in the UI - -1. Find connectors under **Alerts and Insights / Connectors** in the [global search bar](/explore-analyze/find-and-organize/find-apps-and-objects.md) -2. Select **Create Connector** and select your model provider -3. Configure the connector with your API credentials and preferred model -4. Search for **GenAI Settings** in the global search field -5. Select your new connector from the **Default AI Connector** dropdown under **Custom connectors** -6. Save your changes - -For detailed instructions on creating connectors, refer to [Connectors](https://www.elastic.co/docs/deploy-manage/manage-connectors). - -Learn more about [preconfigured connectors](https://www.elastic.co/docs/reference/kibana/connectors-kibana/pre-configured-connectors). - -#### Connect a local LLM - -You can connect a locally hosted LLM to Elastic using the OpenAI connector. This requires your local LLM to be compatible with the OpenAI API format. - -Refer to the [OpenAI connector documentation](kibana://reference/connectors-kibana/openai-action-type.md) for detailed setup instructions. - -## Connectors API - -For programmatic access to connector management, refer to the [Connectors API documentation]({{kib-serverless-apis}}group/endpoint-connectors). - -## Recommended models - -{{agent-builder}} requires models with strong reasoning and tool-calling capabilities. State-of-the-art models perform significantly better than smaller or older models. - The following models are known to work well with {{agent-builder}}: - **OpenAI**: GPT-4.1, GPT-4o