Sites
在 ChatGPT 中构建并分享托管站点
Sites 允许 ChatGPT 创建、托管、迭代和分享网站、Web App 与游戏。当你想把提示词或兼容的现有项目变成托管体验,又不希望单独搭建部署工作流时,可以使用 Sites。
在 ChatGPT 桌面 App 中打开 Sites。你可以根据提示词或兼容的本地项目创建 Site,之后再回到 Sites 视图进行管理。
开始使用 Sites
- 描述 Site。 说明受众、目的、必要行为,以及 Site 应使用的信息。
- 评审 Site。 检查生成的内容与行为,确认 Site 使用了预期信息,并按预期处理数据。
- 迭代 Site。 描述所需修改;如果相关文件或视觉上下文有助于 ChatGPT 完成修改,请一并提供。
- 管理并分享 Site。 返回 Sites 重新打开或继续迭代。准备就绪后,选择谁可以访问,并分享生成的链接。
为常见任务编写 Sites 提示词
对于新网站、仪表盘或内部工具,应在提示词中写明受众、核心体验和必要信息:
Build a project request dashboard for my operations team. Let team members
submit requests, see who owns each one, update the status, and filter the list.
Require people to sign in with their workspace account, and keep the request
data saved between visits.对于现有项目,可以要求 Sites 准备并发布当前 App:
Deploy this project with Sites. Check whether it is compatible, make any
required changes, and give me the deployment URL.当 Site 需要持久应用数据或文件上传时,应在请求中明确说明:
Add player scores and avatar uploads to this game. Keep the scores and uploaded
avatars between visits.
理解项目、版本与部署
Site 是一种持久的托管产出,可以在 ChatGPT 的 Sites 中重新打开、继续迭代、配置和分享。
Sites 项目会把本地源项目与通过 Sites 管理的托管环境关联起来。Sites 将这项关联以及可选的存储绑定名称保存到 .openai/hosting.json。新建的本地 starter 最初可以没有 project_id;Sites 在预配托管项目后会添加该字段。
例如,使用关系数据库绑定但不使用文件存储的已预配 Site 可以包含:
{
"project_id": "<project-id>",
"d1": "DB",
"r2": null
}Sites 发布分为两个独立阶段:
- 保存版本。 ChatGPT 构建可部署版本。对于本地源项目,ChatGPT 会把该版本与构建时使用的 Git commit 关联。当你需要一个可评审的候选部署时,使用这一阶段。
- 部署版本。 ChatGPT 发布已保存的版本,并在部署成功后报告生产 URL。只有确实希望目标受众访问 Site 时,才执行这一步。
需要识别过去的候选部署时,可以让 ChatGPT 列出或检查已保存版本。
选择受支持的 Site 形态
新项目可以从 Sites 工作流推荐的 Site starter 开始。对于现有项目,应先让 ChatGPT 确认项目能够生成兼容的部署产物,再请求部署。
在提示词中说明所需产品行为,以便 ChatGPT 选择合适的 Site 形态:
| Site 需求 | 应向 Sites 提出的要求 |
|---|---|
| 内容型网站或落地页 | 除非体验确有需要,否则不使用持久应用状态 |
| 已保存记录、用户进度或游戏分数 | 使用 D1 关系数据库保存持久结构化数据 |
| 图片、文档、音频、视频或其他上传内容 | 使用 R2 对象存储保存文件 |
| 带可搜索元数据的上传文件 | 使用 D1 保存元数据,并用 R2 保存文件内容 |
| 需要当前工作区用户身份的内部 Site | 使用经过工作区认证的用户身份 |
| 面向公众的登录或外部身份提供方 | 使用启用认证的 Site |
不要为主题选择、已关闭横幅等临时展示状态请求持久存储;如果托管 Site 需要记住的是用户预期长期保留的产品数据,则应使用持久存储。
控制访问与 secrets
托管 Site 不会自动将其公开。在评审内容、数据处理方式和预期受众期间,应保持受限访问。
根据账号和工作区设置,分享选项可能包括:
- 仅你本人或受邀用户。
- 工作区中的所有人。
- 任何拥有链接的人。
分享允许其他人访问 Site,但不会授予编辑权限。工作区管理员可以限制成员是否能够公开分享 Sites。
例如:
Change this Site's access to everyone in my workspace after showing me the
current Site and confirming its URL.配置运行时环境值
打开 Sites,再打开 Site 设置,以添加、更新或移除托管环境变量与 secrets。不要把 secret 值放入提示词、附件文件或 Site 内容。
不要把这些值存入 .openai/hosting.json。让本地 .env 和 .env.example 与本地开发所需的键保持一致,并且不要提交 secret 值。
添加、更新或移除托管环境值后,应让 ChatGPT 重新部署已批准的保存版本,使下一次部署使用更新后的配置。
分享前评审
分享 Site 前:
- 在预览中评审 Site 的内容与行为。
- 检查 Site 是否按预期处理信息和上传文件。
- 确认 Site 没有暴露机密信息或 secret 值。
- 选择满足目标受众需求的最小分享范围。
- 打开已分享 Site,并确认目标受众可以访问。
对于由本地项目构建的 Site,还应在 Codex 评审面板中检查源代码修改和所有数据库迁移。
相关文档
- ChatGPT 桌面 App介绍 App 导航、项目与任务。
- 评审并交付修改介绍发布前如何检查源代码修改。