代理与角色
一 代理 是 AiHummer 在对话前放置的单元。每个代理都有一个角色设定、自己的模型、一个结构化提示以及一组技能,并且对其的每次更改都会生成版本。代理可以通过网页管理员界面和管理员 API 进行管理。 /v1/admin/agents/*.
本页面介绍了代理的组成部分、结构化“G3”提示的组装方式,以及代理如何安全地编辑自己的个人资料。
代理注册表
注册表是一个完整的代理 CRUD 目录。对于每个代理,你定义一个身份、一个角色、它运行的模型以及它可以使用的技能。由于网关是多租户的,代理存在于工作区中,并且像其他租户数据一样被隔离。
- 人格 ——代理人的声音和行为,被呈现为稳定的, 系统提示的缓存友好层。
- 每代理模型 ——每个代理都可以固定自己的模型和提供者,所以一个 廉价代理和旗舰代理可以在同一个工作空间中共存。
- 技能 ——每个代理的技能和共享技能将“技能”模块呈现为 提示;它们描述的是能力,而不是权重。
[!NOTE] 每个代理的模型与路由无关。模型层路由(简单 / 标准 / 复杂)为一个回合选择一个模型类别,而每个代理 模型是代理自身的默认设置。见 路由.
版本、回滚和克隆
对代理的每一个有意义的改变都被记录为 版本这使得代理配置可审计且可逆:您可以查看更改内容, 回滚 到早期版本,或者 克隆 一个代理将其用作新版本的起点。版本和配置文件资源位于 /v1/admin/agents/* (个人资料,部分,技能,版本)。
[!TIP] 在进行大型角色或提示重写之前,先克隆一个可用的代理。如果新的 方向不行,原件仍然只需回滚一次。
结构化的“G3”提示
AiHummer 使用的不是单一的自由文本系统提示,而是 结构化代理配置文件 (内部称为“G3”)。身份是 分解为字段 而不是埋在散文中,提示的其余部分是由命名构建的 部分 加一个 入职培训 块。协调器将这些呈现到分层系统提示中,将稳定部分(身份、角色、部分)保存在可缓存的前缀中,并最后附加易变数据。
该结构使得按字段编辑配置文件变得容易,便于比较不同版本,并且渲染结果可预测——没有隐藏的提示杂乱。
G3 profile
├── identity fields (decomposed: name, role, ...)
├── sections (named, ordered prompt blocks)
└── onboarding (first-run guidance)
在审批门后的自我编辑
代理可以被允许 编辑自己的资料 使用自我编辑工具——例如用来完善某一部分或更新其入职流程。这是有意保留的:
- 自我编辑通过 审批关卡:一个拟议的更改被记录并 必须经过人工批准才能生效。被拒绝的更改永远不会 已应用。
- 这一变化被记录为新的 版本,因此自我编辑同样可审计 并且像任何手动编辑一样可逆。
[!WARNING] 自我编辑非常强大。把它放在审批关卡之后,这样代理就无法干预 默默地重写自己的身份。以同样的方式审查拟议的自我编辑 审查任何特权更改。
邮件密码存入保险柜
如果代理的配置包括邮件凭据(用于 mail 工具),密码被写入到 加密凭证库,不会存储在个人资料中或呈现在提示中。机密信息永远不会进入模型上下文。
管理员 API
代理及其结构化配置文件在管理员 API 下进行管理,该 API 受 OIDC 门控并经过审计:
| 资源 | 目的 |
|---|---|
/v1/admin/agents |
列出、创建、更新、删除代理(CRUD) |
/v1/admin/agents/.../profile |
结构化的G3配置文件(身份字段) |
/v1/admin/agents/.../sections |
命名提示部分 |
/v1/admin/agents/.../skills |
每个代理的技能 |
/v1/admin/agents/.../versions |
版本历史、回滚和克隆 |