Kubernetes GenAI 编排应用

一个用于Kubernetes GenAI编排的示例应用,用户可以通过创建项目卡片并设置指令,使用MCP工具处理Kubernetes相关操作,如kubectl apply、kubectl get、kubectl delete等,并支持安装helm图表。

  • by monty16597
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 monty16597/kubernetes-genai-agent-app

使用说明

kubernetes genai代理应用程序

这是Kubernetes GenAI Orchestrator的示例应用程序。用户创建一个包含一组指令的项目卡,并将使用MCP工具进行处理。它执行所有与Kubernetes相关的操作,如kubectl apply、kubectl get、kubectl delete等。它还可以安装舵图。

建筑

flowchart LR
    A[Streamlit App] --> B[Langgraph React Agent]
    B --> C[Kubernetes MCP server]
    D[Get Kubernetes Resource Schema Tool] --> B
    C --> E[Kubernetes Cluster]

请求流

flowchart TD
    A[User] -->|Create Project Card| B[Streamlit App]
    B -->|Send Request| C[LangGraph React Agent]
    C -->|Use MCP Tools to operate on cluster| D[Kubernetes MCP Server]
    D -->|Communicate with| E[Kubernetes Clusters]
    E -->|Return Status| D
    D -->|Return Response| C
    C -->|Display Result| B
    C --> |Get schema for Kubernetes resources| F[Get Kubernetes Resource Schema Tool]
    F -->|Return Schema| C

设置

先决条件

  • awscli
  • Python 3.8或更高版本
  • Docker和Docker组合
  • Kubernetes集群(minikube、kind或任何云提供商)
  • 节点和Npx。 点击此处

设置Python环境

  1. 创建virtualenv
    python -m venv .venv
    
  2. 激活virtualenv
    source .venv/bin/activate
    
  3. 安装依赖项
    pip install -r requirements.txt
    

运行应用程序

  • 启动DynamoDB Docker

    docker-compose up -d
    
  • 首次启动应用程序时初始化数据库

    sh init.sh
    
    
  • 在中设置这些环境变量 .env 文件(检查 .env.local 例如)

    • LLM_MODEL_PROVIDER:可以是“谷歌”或“拥抱脸”
      • 对于谷歌,设置 GOOGLE_API_KEY 使用Google API密钥的环境变量。 查看这里
      • 对于huggingface,请按照上述配置huggingface-cli 这里
  • 运行应用程序

    streamlit run main.py