API 密钥
为 API 创建密钥、设定范围并管理它们。
API 密钥用来对发往 Reverie 开放 API 的请求做鉴权。密钥都在设置 → 更多 → API 密钥里,实验室的 开放 API 方块指向的也是这里。任何账号都能创建——没有档位要求,也不限制你能持有多少个。
创建一个密钥
按下「创建新的 API 密钥」
页面还空着的时候,这个按钮上写的是创建第一个 API 密钥。
给它起个名字
名称是必填的,1–100 个字符。它决定了这个密钥在列表和使用统计里怎么标注——比如「客厅音箱」「staging worker」。
选择全局还是指定角色
角色选择是在全局(所有角色)和指定角色之间二选一,而不是一个可有可无的附加项。选中的那个角色会成为这把密钥绑定的角色。
可以顺便设置设备类型和有效期
设备类型是自由文本(speaker、phone、iot)。有效期同时要填日期和时间;到了那一刻,密钥会自动失效。
密钥会立刻显示出来,形如 rk_ 加上 64 个十六进制字符。
密钥随时可以取回
密钥不是只显示一次。只要这把密钥还在,它的卡片上随时都有显示 API 密钥、隐藏 API 密钥和复制 API 密钥。
既然完整的密钥随时能从你的设置里读出来,那就把账号的访问权当成密钥的访问权来对待。把密钥放在服务器上或密钥管理器里,永远别放进代码仓库或浏览器代码里。
全局密钥和绑定角色的密钥
| 全局(所有角色) | 指定角色 | |
|---|---|---|
GET /models 返回 | 你最近的角色 | 那个角色的情景,如果它一个都没有,就返回角色本身 |
不填 model | 落到你最近的那次聊天 | 用绑定的那个角色 |
| 短情景 ID | 永远解析不出来 | 会在绑定的角色下解析 |
停用、删除、轮换
| 操作 | 效果 | 可否撤销 |
|---|---|---|
| 启用开关 | 关掉之后,带这把密钥的请求会被拒绝 | 可以 |
| 删除 | 密钥被销毁,正在用它的应用会失去访问权 | 不可以 |
没有单独的吊销操作——停用和删除就是全部的两个选项。
删除密钥无法撤销,而且会把这把密钥的归属一并带走:它过去的流量会挪进使用统计里的已删除的密钥那一栏,到那时你就分不清是哪个集成花掉了多少。如果你可能还想要这段历史,就先停用它。
要轮换密钥,先创建替代的那把、部署上去,然后再停用或删除旧的。这里没有自动轮换,过期之后也没有宽限期——过期的密钥会在下一次请求时被拒绝,并返回 api_key_expired。
权限范围
密钥带有权限范围,而创建对话框并不会把它们露出来。你在设置里做的密钥只能调用聊天相关的接口,仅此而已。
角色导入接口需要另一种权限范围,而拿到这种密钥的唯一办法,就是打开实验室 → 角色导入 Skill,它会替你创建一把,名字叫 Reverie Character Importer (Skill)。拿设置页里的普通密钥去调导入接口会返回 403。导入角色 →
使用统计
同一个页面上的使用统计面板会报告请求数、Token、积分和活跃密钥,按 UTC 日分桶,并在按密钥统计下给出每把密钥的明细。你可以按某一把密钥或全部密钥筛选,时间窗口从 7 天到 90 天——默认 30 天。只有通过 API 创建的聊天会被统计进来。
这个面板是唯一能看到「每把密钥各花了多少」的地方。你的积分历史会记录每条消息花了多少,但它不会标注这笔交易是哪把密钥发起的,所以要比较各个集成,就用这里的统计。
生成请求
生成请求会打开一个生成器:挑一把你启用中的密钥,从这把密钥能看到的列表里挑一个角色或情景,输入一条消息,选好是否流式以及 temperature,然后就能复制可以直接跑的 cURL、TypeScript 或 Python 代码。
这把密钥只在你的浏览器里被用来加载角色列表。生成出来的代码是从环境变量里读 REVERIE_API_KEY,而不是把密钥写死进去。
限制
| 限制 | 数值 |
|---|---|
| 每个账号的密钥数 | 不限 |
| 每把密钥的速率限制 | 没有 |
| 每把密钥的并发上限 | 没有 |
| 真正约束用量的是什么 | 你的积分余额,以及免费模型的时段配额 |
相关
- 开放 API — 接口、请求结构和报错
- 导入角色 — 导入用的那把密钥是做什么的
- Reverie 实验室 — 开放 API 和导入这两个方块
- 安全 — 你账号其余的访问设置