Skip to content

Latest commit

 

History

History
135 lines (100 loc) · 3.46 KB

index.md

File metadata and controls

135 lines (100 loc) · 3.46 KB
abstract authors date title
Kubernetes Operator Agent is a LLM agent that is deployed as an operator in Kubernetes.
name email
Xander Harris
2024-08-04
Kubernetes Operator Agent

Quality Gate Status Coverage Status

Repository Contents

```{contents}
```
:caption: contents

deployment/helm/k8s-agent/index
k8s_agent/index
tests/index
:caption: meta

.github/index
docs/index
README

Indices and tables

  • {ref}genindex
  • {ref}modindex
  • {ref}search
argo-cd
   A declarative, GitOps continuous delivery tool for {term}`Kubernetes`.
   More information is available [here](https://github.com/argoproj/argo-cd).

ArtifactHub
   A centralized location for Helm charts and artifacts. More information
   is available [here](https://artifacthub.io/packages/helm/argo/argo-cd).

GitHub
   Most likely the site this repository is hosted on. More information is
   available [here](https://github.com).

Helm
   A tool commonly used to deploy applications to {term}`Kubernetes`. More
   information is available [here](https://helm.sh).

LangChain
   LangChain’s flexible abstractions and AI-first toolkit make it the #1
   choice for developers when building with GenAI. More information is available
   [here](https://www.langchain.com/langchain).

Kubernetes
   An ancient Greek word that means 'sailor' or 'navigator', it is the
   most common container orchestration system currently in use. More
   information is available [here](https://kubernetes.io).

Usage for Bare Metal Deployment

The process for this follows.

  1. Build the agent image and push it to a public or local image repository.

    docker build -t dockerhubuser/agent:0.0.1 .
    
  2. Configure the redis-stack application's required storage class settings.

    :caption: values.yaml
    
    # This is necessary only if you need to override the
    # default `hostpath` storageClass.
    redis-stack-server:
      redis_stack_server:
        storage_class: csi-lvm-linear
    
  3. Configure the image repository and tag settings.

    :caption: values.yaml
    
    image:
      repository: dockerhubuser/agent
      tag: 0.0.1
    
  4. Obtain an OpenAPI API key and configure its value for the deployment.

    :caption: secrets/values.yaml
    
    envVars:
      OPENAI_API_KEY: base64-encoded-api-key
    
    Double check that the git ignore file contains `secrets` or `secrets/` to
    make sure that you don't unintentionally push your API key to GitHub.
    

    You can find how to get an API key here.

  5. Create a namespace for the agent.

    kubectl create ns agent
    
  6. Deploy the agent with Helm using the values shown above.

    helm upgrade --install -n agent agent deployment/helm/k8s-agent \
       -f secrets/values.yaml -f values.yaml