diff --git a/src/app/docs/kagent/concepts/memory/page.txt b/src/app/docs/kagent/concepts/memory/page.txt deleted file mode 100644 index fcfcc105..00000000 --- a/src/app/docs/kagent/concepts/memory/page.txt +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: "Memory" -pageOrder: 4 -description: "Learn how kagent agents manage memory and conversation history to maintain context and improve interactions." ---- - -export const metadata = { - title: "Memory in kagent", - description: "Learn how kagent agents manage memory and conversation history to maintain context and improve interactions.", - author: "kagent.dev" -}; - - -# Memory - -The LLMs agents use have a cutoff date on the knowledge they've been trained on. A technique for injecting fresh and up-to-date information into agents and models is through a concept called RAG (Retrieval-Augmented Generation). - -In a typical interaction with the LLM, the users query and any system prompts/instructions are sent to the LLM to generate a response. With RAG, the user query is sent to a vector database where relevant information is retrieved. The additional information is added to the original user query and sent the LLM. With this technique, the LLMs can answer questions that are beyond its training data. - -In kagent we call this concept **Memory**. Every query sent to the agent will be augmented with the relevant information from the memory. - -## Configure Memory in kagent - -To configure memory in kagent, you need to create a secret containing your API key for the vector database you want to use. At the moment we support [Pinecone](https://www.pinecone.io/) with built-in embeddings. - -```shell -export PINECONE_API_KEY= -kubectl create secret generic pinecone-credentials -n kagent --from-literal PINECONE_API_KEY=$PINECONE_API_KEY -``` - -Once the API key is in place, you can use the Memory CRD to configure the memory for your agent. For example: - -```yaml -apiVersion: kagent.dev/v1alpha2 -kind: Memory -metadata: - name: my-pinecone-memory - namespace: kagent -spec: - provider: Pinecone - # The secret containing the API key for the vector database - apiKeySecret: pinecone-credentials - # The key in the secret containing the API key - apiKeySecretKey: PINECONE_API_KEY - pinecone: - # The host of the vector database - indexHost: https://kagent-test-index-jmiopck.svc.aped-4627-b74a.pinecone.io - # The number of results to return - topK: 10 - # The namespace of the vector database - namespace: kagent-test-index - # The score threshold for the results (any results with a score below this will be ignored) - scoreThreshold: "0.5" - # The fields to include in the memory - recordFields: - - chunk_text - - category -``` - -You can use Kubernetes CLI to create the memory. - -To attach memory to an agent, you can use the `memory` field in the agent spec. Note that the field is an array, so you can attach multiple memories to an agent: - -```yaml -apiVersion: kagent.dev/v1alpha2 -kind: Agent -metadata: - name: memoryagent - namespace: kagent -spec: - description: memory - modelConfig: default-model-config - systemMessage: Answer questions - memory: - # The name of the memory to attach - - my-pinecone-memory -``` \ No newline at end of file diff --git a/src/app/docs/kagent/examples/slack-a2a/page.mdx b/src/app/docs/kagent/examples/slack-a2a/page.mdx index 02c21de7..d749dcb5 100644 --- a/src/app/docs/kagent/examples/slack-a2a/page.mdx +++ b/src/app/docs/kagent/examples/slack-a2a/page.mdx @@ -16,7 +16,7 @@ export const metadata = { # Integrating kagent with Slack -Kagent enables you to create AI agents that run inside your Kubernetes cluster. They have access to a variety of [built-in tools](/docs/kagent/concepts/tools) like Kubernetes, Istio, Grafana, Prometheus, Argo and can be extended with any other tools [using MCP](/docs/kagent/examples/documentation). They can also draw information [from your data](/docs/kagent/concepts/memory) and execute other agents. +Kagent enables you to create AI agents that run inside your Kubernetes cluster. They have access to a variety of [built-in tools](/docs/kagent/concepts/tools) like Kubernetes, Istio, Grafana, Prometheus, Argo and can be extended with any other tools [using MCP](/docs/kagent/examples/documentation). ![Slack - A2A - MCP - kagent](/images/slack-a2a/slack-a2a-kagent.png) diff --git a/src/app/docs/kagent/getting-started/first-agent/page.mdx b/src/app/docs/kagent/getting-started/first-agent/page.mdx index d0296897..5d36c722 100644 --- a/src/app/docs/kagent/getting-started/first-agent/page.mdx +++ b/src/app/docs/kagent/getting-started/first-agent/page.mdx @@ -65,15 +65,6 @@ Let's create an agent that can use Kubernetes tools to interact with the cluster ![Create new agent](/images/kagent-new.png "Create a new agent") -{/* TODO memory -## Adding memory - -Memories are database instances with information that you want the agent to have access to when completing tasks. - -Before you can add memories to an agent, you must first create a memory instance. For now, let's skip memory. When you're ready, you can check out the [memory guide](/docs/kagent/concepts/memory). - -![Memory](/images/kagent-memory.png "Skip adding memory for now") */} - ## Adding tools Tools are an essential building block of the agent. They are the commands that the agent can run to interact with the environment. As LLMs don't have the ability to run commands, tools are the way to bridge the gap between the agent and the environment. Kagent provides a set of built-in tools that you can use to interact with Kubernetes, Istio, Prometheus and projects. You can also [build your own tools](/tools)!