Skip to content

Commit

Permalink
Introduce AI Assistant documentation (#333)
Browse files Browse the repository at this point in the history
* Introduce AI Assistant documentation

* Add redirect to the AI assistant plugin docs
  • Loading branch information
pkosiec authored May 24, 2024
1 parent e692f36 commit ca6037e
Show file tree
Hide file tree
Showing 11 changed files with 190 additions and 7 deletions.
2 changes: 1 addition & 1 deletion docs/examples-and-tutorials/integrations/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ sidebar_position: 4
## Executor Plugins

- [Kubectl](../../plugins/kubectl.md): Easily execute Kubernetes commands in your channels with Botkube's Kubectl integration.
- [AI](../../plugins/ai-assistant.mdx): Harness the power of AI with Botkube's AI plugin for intelligent interactions and enhanced automation in your Kubernetes environment.
- [Helm](https://botkube.io/integration/helm): Manage Helm deployments and releases seamlessly with Botkube's Helm plugin.
- [Flux](https://botkube.io/integration/botkube-flux-kubernetes-integration): Use Botkube for GitOps operations with the Flux plugin.
- [Exec](https://botkube.io/integration/custom-executor-plugin): Connecting your own plugin for a tailored Kubernetes workflow with Botkube's exec plugin.
- [AI](https://botkube.io/blog/level-up-your-sre-workflow-automating-manual-tasks-with-botkube-ai-assistant): Harness the power of AI with Botkube's AI plugin for intelligent interactions and enhanced automation in your Kubernetes environment.
1 change: 1 addition & 0 deletions docs/examples-and-tutorials/tutorials/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ sidebar_position: 2
### Executor Plugins

- [Kubectl Plugin Usage](https://botkube.io/learn/kubectl-cheat-sheet): Utilize Botkube's integration with Kubectl for executing Kubernetes commands conveniently.
- [AI Assistant Plugin Usage](https://botkube.io/blog/real-time-platform-engineer-advice-ai-assistant): Use Botkube AI Assistant plugin to provide real-time platform engineer advice and troubleshooting in Kubernetes.
- [Helm Plugin Setup](https://botkube.io/learn/helm-charts): Seamlessly manage Helm deployments and releases with Botkube's Helm integration.
- [Flux Plugin Configuration](https://botkube.io/blog/streamlining-gitops-with-the-botkube-flux-plugin): Set up and configure Botkube's Flux plugin for automated deployment and synchronization of Kubernetes resources.
- [Custom Executor Plugin Development](https://botkube.io/integration/custom-executor-plugin): Develop and integrate custom executor plugins with Botkube for tailored Kubernetes operations.
Expand Down
14 changes: 14 additions & 0 deletions docs/features/ai-assistant.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
id: ai-assistant
title: AI Assistant
sidebar_position: 4
---

import { Redirect } from "@docusaurus/router";

<Redirect to="/plugins/ai-assistant" />

Botkube AI Assistant capabilities are delivered in a form of a Botkube plugin.

Redirecting to the Botkube AI Assistant plugin documentation.
If you are not redirected automatically, click [here](../plugins/ai-assistant.mdx).
2 changes: 1 addition & 1 deletion docs/features/rbac.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
id: rbac
title: RBAC
sidebar_position: 4
sidebar_position: 5
---

Botkube allows plugins to access Kubernetes API by defining [RBAC](https://kubernetes.io/docs/reference/access-authn-authz/rbac) rules.
Expand Down
78 changes: 78 additions & 0 deletions docs/plugins/ai-assistant.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
---
id: ai-assistant
title: "AI Assistant"
sidebar_position: 3
---

:::info
**This plugin is hosted by the [Botkube Cloud](https://app.botkube.io) plugin repository and requires active Botkube Cloud account.**
:::

The AI Assistant plugin makes it easier than ever for teams to identify, diagnose, and troubleshoot issues in any Kubernetes cluster. It is powered by the OpenAI's `GPT-4o` large language model with additional Kubernetes-related capabilities.

## Features

The plugin provides the following features:

- "AI Help" button for Kubernetes event analysis.
- Answering arbitrary questions or instructions.
- Kubernetes cluster troubleshooting based on:
- `kubectl` commands,
- container logs,
- Kubernetes events,
- resource usage (CPU/memory).
- Answering Botkube questions or instructions based on:
- Agent status and configuration,
- the latest Botkube documentation and other Botkube content.
- Keeping conversation context in the message threads.

## Get started

## Enable the plugin

You can enable the plugin as a part of Botkube instance configuration.

1. If you don't have an existing Botkube instance, create a new one, according to the [Installation](../installation/index.mdx) docs.
2. From the [Botkube Cloud homepage](https://app.botkube.io), click on a card of a given Botkube instance.
3. Navigate to the platform tab which you want to configure.
4. Click **Add plugin** button.
5. Select the AI plugin.
6. Click **Save** button.

## Usage

### Highlights

To see the AI assistant in action, watch the video:

import ReactPlayer from "react-player";

<ReactPlayer controls url="https://www.youtube.com/watch?v=VzXUL7rch-4" />

### AI Help for Kubernetes events

Click on the **AI Help** button to get an analysis of the event.

![AI Help](assets/ai-help-usage.png "AI Help")

### AI questions and instructions

To ask the Botkube AI Assistant any question, use the `@Botkube ai` command prefix.

Here are a few examples to get you started:

- `@Botkube ai are my pods in default namespace up and running?`
- `@Botkube ai how many nodes are there?`
- `@Botkube ai output a yaml for Kubernetes pod with nginx image`
- `@Botkube what's the current Botkube status?`
- `@Botkube ai what's the difference between Botkube sources and executors?`
- `@Botkube ai what Botkube plugins are available to install? List all of them with one sentence description and link to the docs.`
- `@Botkube ai who's the Botkube maintainer?`

## Configuration

Currently, the AI plugin doesn't have any configuration options.

## Limitations

- The conversation context is stored in-memory and will be cleared on Botkube Agent restart.
Binary file added docs/plugins/assets/ai-help-usage.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 2 additions & 4 deletions redirects.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,7 @@ function customRedirections() {
{ from: "/configuration/communication/", to: "/self-hosted-configuration/communication" },
{ from: "/configuration/communication/vault-csi", to: "/self-hosted-configuration/communication/vault-csi" },
{ from: "/configuration/executor/", to: "/plugins" },
// TODO: add redirection on the second PR
// { from: "/configuration/executor/doctor", to: "/plugins/ai" },
{ from: "/configuration/executor/doctor", to: "/plugins/ai-assistant" },
{ from: "/configuration/executor/exec", to: "/plugins/exec" },
{ from: "/configuration/executor/flux", to: "/plugins/flux" },
{ from: "/configuration/executor/helm", to: "/plugins/helm" },
Expand All @@ -85,8 +84,7 @@ function customRedirections() {
{ from: "/usage/automated-actions", to: "/features/actions" },
{ from: "/usage/event-notifications", to: "/features/event-notifications" },
{ from: "/usage/executor/", to: "/plugins" },
// TODO: add redirection on the second PR
// { from: "/usage/executor/doctor", to: "/plugins/doctor" },
{ from: "/usage/executor/doctor", to: "/plugins/ai-assistant" },
{ from: "/usage/executor/exec", to: "/plugins/exec" },
{ from: "/usage/executor/flux", to: "/plugins/flux" },
{ from: "/usage/executor/helm", to: "/plugins/helm" },
Expand Down
14 changes: 14 additions & 0 deletions versioned_docs/version-1.11/features/ai-assistant.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
id: ai-assistant
title: AI Assistant
sidebar_position: 4
---

import { Redirect } from "@docusaurus/router";

<Redirect to="/plugins/ai-assistant" />

Botkube AI Assistant capabilities are delivered in a form of a Botkube plugin.

Redirecting to the Botkube AI Assistant plugin documentation.
If you are not redirected automatically, click [here](../plugins/ai-assistant.mdx).
2 changes: 1 addition & 1 deletion versioned_docs/version-1.11/features/rbac.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
id: rbac
title: RBAC
sidebar_position: 4
sidebar_position: 5
---

Botkube allows plugins to access Kubernetes API by defining [RBAC](https://kubernetes.io/docs/reference/access-authn-authz/rbac) rules.
Expand Down
78 changes: 78 additions & 0 deletions versioned_docs/version-1.11/plugins/ai-assistant.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
---
id: ai-assistant
title: "AI Assistant"
sidebar_position: 3
---

:::info
**This plugin is hosted by the [Botkube Cloud](https://app.botkube.io) plugin repository and requires active Botkube Cloud account.**
:::

The AI Assistant plugin makes it easier than ever for teams to identify, diagnose, and troubleshoot issues in any Kubernetes cluster. It is powered by the OpenAI's `GPT-4o` large language model with additional Kubernetes-related capabilities.

## Features

The plugin provides the following features:

- "AI Help" button for Kubernetes event analysis.
- Answering arbitrary questions or instructions.
- Kubernetes cluster troubleshooting based on:
- `kubectl` commands,
- container logs,
- Kubernetes events,
- resource usage (CPU/memory).
- Answering Botkube questions or instructions based on:
- Agent status and configuration,
- the latest Botkube documentation and other Botkube content.
- Keeping conversation context in the message threads.

## Get started

## Enable the plugin

You can enable the plugin as a part of Botkube instance configuration.

1. If you don't have an existing Botkube instance, create a new one, according to the [Installation](../installation/index.mdx) docs.
2. From the [Botkube Cloud homepage](https://app.botkube.io), click on a card of a given Botkube instance.
3. Navigate to the platform tab which you want to configure.
4. Click **Add plugin** button.
5. Select the AI plugin.
6. Click **Save** button.

## Usage

### Highlights

To see the AI assistant in action, watch the video:

import ReactPlayer from "react-player";

<ReactPlayer controls url="https://www.youtube.com/watch?v=VzXUL7rch-4" />

### AI Help for Kubernetes events

Click on the **AI Help** button to get an analysis of the event.

![AI Help](assets/ai-help-usage.png "AI Help")

### AI questions and instructions

To ask the Botkube AI Assistant any question, use the `@Botkube ai` command prefix.

Here are a few examples to get you started:

- `@Botkube ai are my pods in default namespace up and running?`
- `@Botkube ai how many nodes are there?`
- `@Botkube ai output a yaml for Kubernetes pod with nginx image`
- `@Botkube what's the current Botkube status?`
- `@Botkube ai what's the difference between Botkube sources and executors?`
- `@Botkube ai what Botkube plugins are available to install? List all of them with one sentence description and link to the docs.`
- `@Botkube ai who's the Botkube maintainer?`

## Configuration

Currently, the AI plugin doesn't have any configuration options.

## Limitations

- The conversation context is stored in-memory and will be cleared on Botkube Agent restart.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit ca6037e

Please sign in to comment.