Core Concepts
代理
一个 Agent 是一个配置了特定目的、系统提示、LLM 提供者和连接工具的 AI 驱动助手。NPO 支持两种类型:
- Single Agent: 一个独立的代理,独立运行,拥有自己的 LLM、工具和技能。
- Deep Agent: 一种多代理架构,具有一个主代理,将任务委派给一个或多个子代理,每个子代理都有自己的 LLM、工具和技能。
MCP 服务器
MCP (Model Context Protocol) Servers 提供代理可以用来与外部系统和 API 交互的工具。MCP 服务器可以是:
- Internal: 在 NPO 平台内管理。
- External: 从第三方服务连接(例如,Notion、AWS、DuckDuckGo 搜索)。
技能
Skills 是可重用的指令集(在 SKILL.md 文件中定义),标准化代理行为。技能可以包括工作流定义、工具使用模式和特定领域知识。它们通过技能注册表进行管理,并可以在代理和团队之间共享。
中间件
Middleware 层为代理交互添加处理控制:
- Human in the Loop: 在执行特定工具之前需要人类批准 — 选项包括批准、编辑或拒绝工具调用。
- PII Protection: 自动检测并删除输入、输出和工具结果中的敏感数据(电子邮件、信用卡、IP、MAC 地址、URL)。
- Summarization: 使用 LangChain 压缩对话历史,以管理上下文窗口限制,同时保留重要信息。
知识数据库
Knowledge Databases 允许代理在对话中引用上传的文档(PDF、XLSX、CSV、PPTX)以获取特定领域的知识。
对象依赖摘要
| 对象 | 被使用 / 依赖于 |
|---|---|
| LLM Provider | 代理 LLM 节点,摘要 LLM |
| Model | 代理 LLM 节点(默认模型),摘要(默认模型) |
| API Key (LLM_PROVIDER) | 代理 LLM 节点,摘要 LLM |
| API Key (BACKEND_SERVER) | 后端服务器认证 |
| Kubernetes Cluster | MCP 实例配置,代理部署 |
| Backend Server | MCP 配置文件(注册为后端) |
| MCP Profile | MCP 实例(从配置文件中配置) |
| OAuth Credentials | MCP 配置文件认证,Playground 连接器认证 |
| Tools (API Endpoints) | MCP 配置文件 → 代理(暴露为可调用工具) |
| MCP Instance | 代理(提供工具),人机协作(每个工具规则) |
| External MCP | 代理(通过 MCP 注册表提供工具) |
| Provisioning Spec | MCP 实例(副本,CPU,内存,亲和性,容忍度) |
| Network Spec | MCP 实例(ClusterIP/NodePort,Ingress,TLS) |
| Skill | 代理(作为模块化指令集附加) |
| SKILL.md | 技能(定义行为和工作流程) |
| Skill Files | 技能(脚本,引用,资产) |
| Skill Version | 技能(代理使用的固定版本) |
| Trigger | 代理(入口点:聊天机器人,Webhook,调度器) |
| Chat Memory | 代理(通过 PostgreSQL 进行会话持久化) |
| User | 组(成员资格),角色(分配),技能(共享),代理(共享) |
| Group | 用户(包含成员),角色(分配),技能(共享),代理(共享) |
| Role | 用户(访问控制),组(访问控制) |
| Human in the Loop | 代理中间件 → 每个 MCP 服务器的工具权限规则 |
| PII Protection | 代理中间件 → 扫描输入,输出,工具结果 |
| Summarization | 代理中间件 → 使用自己的 LLM + API 密钥 |
| Playground | 代理(测试),连接器(MCP 认证),技能(验证) |
| Published Agent | NPO 工作区聊天界面 |
| Conversation History | NPO 工作区(按聊天会话存储) |
| Theme / Color | NPO Studio UI 个性化 |