OpenAi的聊天插件生产
速率限制
请考虑对公开的 API 终结点实施速率限制。虽然当前规模有限,但 ChatGPT 被广泛使用,您应该期待大量的请求。您可以监控请求数并相应地设置限制。
超时
在插件体验期间进行 API 调用时,如果超过以下阈值,则会发生超时:
- 15 秒往返获取
ai-plugn.json
/openapi.yaml
- API 调用往返 45 秒
随着我们将插件体验扩展到更多人,我们预计超时阈值将减少。
更新您的插件
将插件部署到生产环境后,您可能需要对清单文件进行更改。目前,每次更改文件时,都必须通过插件存储中的“开发自己的插件”流程手动更新清单文件。ai-plugin.json
每次发出请求时,ChatGPT 都会自动获取最新的 OpenAPI 规范。
插件术语
为了注册插件,您必须同意插件条款。
域名验证和安全
为了确保插件只能对它们控制的资源执行操作,OpenAI 对插件的清单和 API 规范强制执行要求。
定义插件的根域
清单文件定义了向用户显示的信息(如徽标和联系信息)以及托管插件 OpenAPI 规范的 URL。获取清单时,将按照以下规则建立插件的根域:
- 如果域具有子域,则根域将从托管清单的域中删除。
www.
www.
- 否则,根域与托管清单的域相同。
关于重定向的说明:如果在解析清单时有任何重定向,则只允许子域重定向。唯一的例外是从 www 子域重定向到没有 www 的子域。
根域的外观示例:
- ✅
https://example.com/.well-known/ai-plugin.json
- 根域:
example.com
- 根域:
- ✅
https://www.example.com/.well-known/ai-plugin.json
- 根域:
example.com
- 根域:
- ✅ →重定向至
https://www.example.com/.well-known/ai-plugin.json
https://example.com/.well-known/ai-plugin.json
- 根域:
example.com
- 根域:
- ✅ →重定向至
https://foo.example.com/.well-known/ai-plugin.json
https://bar.foo.example.com/.well-known/ai-plugin.json
- 根域:
bar.foo.example.com
- 根域:
- ✅ →重定向至
https://foo.example.com/.well-known/ai-plugin.json
https://bar.foo.example.com/baz/ai-plugin.json
- 根域:
bar.foo.example.com
- 根域:
- ❌ →重定向至
https://foo.example.com/.well-known/ai-plugin.json
https://example.com/.well-known/ai-plugin.json
- 不允许重定向到父级域
- ❌ →重定向至
https://foo.example.com/.well-known/ai-plugin.json
https://bar.example.com/.well-known/ai-plugin.json
- 不允许重定向到同一级别的子域
- ❌ ->重定向至
https://example.com/.well-known/ai-plugin.json
https://example2.com/.well-known/ai-plugin.json
- 不允许重定向到另一个域
清单验证
清单本身中的特定字段必须满足以下要求:
api.url
- 提供给 OpenAPI 规范的 URL 必须托管在根域的同一级别或子域中。legal_info
- 提供的 URL 的二级域必须与根域的二级域相同。contact_info
- 电子邮件地址的二级域应与根域的二级域相同。
解析 API 规范
清单中的字段提供了指向 OpenAPI 规范的链接,该规范定义了插件可以调用的 API。OpenAPI 允许指定多个服务器基 URL。以下逻辑用于选择服务器 URL:api.url
- 循环访问服务器 URL 列表
- 使用与根域或根域的子域完全匹配的第一个服务器 URL
- 如果上述两种情况都不适用,则默认为 API 规范所在的域。例如,如果规范托管在 上,则将用作 OpenAPI 规范中路由的基本 URL。
api.example.com
api.example.com
注意:请避免使用重定向来托管 API 规范和任何 API 端点,因为不能保证始终遵循重定向。
使用 TLS 和 HTTPS
插件的所有流量(例如,获取文件、OpenAPI 规范、API 调用)必须在端口 1 上使用 TLS 2.443 或更高版本,并具有有效的公共证书。ai-plugin.json
IP 出口范围
ChatGPT 会从 CIDR 块中的 IP 地址调用您的插件。您可能希望将这些 IP 地址明确列入允许列表。23.102.140.112/28
另外,OpenAI的Web浏览插件从不同的IP地址块访问网站:。23.98.142.176/28
常见问题
如何使用插件数据?
插件将 ChatGPT 连接到外部应用程序。如果用户启用了插件,ChatGPT 可能会将他们的部分对话以及他们的国家或州发送到您的插件。
如果对我的 API 的请求失败,会发生什么情况?
如果 API 请求失败,模型最多可以重试请求 10 次,然后让用户知道它无法从该插件获得响应。
我可以邀请人们试用我的插件吗?
是的,所有未经验证的插件最多可以由 15 个用户安装。在发布时,只有其他具有访问权限的开发人员才能安装该插件。我们计划随着时间的推移扩大访问权限,并最终推出一个流程,在向所有用户提供插件之前提交您的插件以供审核。
我可以为我的插件向人们收费吗?
是的,我们鼓励您考虑有限数量的免费 API 调用,但要了解它需要资源来运行您的插件。