AB
AiBoss
チュートリアル

ChatGPT

チュートリアル

ChatGPT Custom GPT 迁移到 Plugin 完整操作指南

Custom GPT 将逐步下线,官方给出的迁移路径是把原有 GPT 转成 Plugin。本文按准备、迁移、重建 Custom Actions、验证四个阶段拆解整个流程,说明哪些内容会自动带走、哪些必须手工重做,并给出 MCP 服务器的接入步骤与常见问题排查方向。

ChatGPT Custom GPT 迁移到 Plugin 完整操作指南

Custom GPT 的退场已经进入倒计时。官方给出的迁移路径是把现有的 GPT 转成 Plugin,但这条路径并不是一键完成:Instructions、Knowledge files、Connected apps 会被自动带走,Custom Actions、模型选择、下划线草稿、历史会话则不会。对于只用指令和资料文件搭起来的 GPT,迁移基本是点几下按钮的事;对于调用外部 API 的 GPT,迁移等于一个小型开发项目。这篇教程面向正在创建和运营 Custom GPT 的开发者和业务用户,按准备、迁移、重建、验证四个阶段把流程讲清楚。如果你还没接触过 ChatGPT 的自定义能力,可以先看看 ChatGPT 的基础用法。

准备工作

迁移是单向操作,按下确认之后无法回退。所以在动手之前,先把下面几件事处理完,能省掉大量返工。

确认自己的迁移时间窗口

官方公布的日程里,所有日期都附带了「可能变更」的说明,实际执行时要以账号内通知和官方 FAQ 为准。按当前公开的节奏,大致分成几个节点:

  • 面向管理员的公告先行发布,Enterprise 与 Edu 工作区会先收到通知。
  • 迁移入口和用户横幅按工作区分批开放,属于目标时间而非保证时间。
  • 新 Custom GPT 的创建通道关闭,但已存在且未迁移的 GPT 仍可继续编辑。
  • 标准下线日到来后,GPT 本体和 GPT 页面都无法再访问。
  • 已获批延期的 Enterprise 工作区适用更晚的下线日,前提是延期申请通过。

这套日程已经调整过一次,早期报道里流传的日期是旧版本。核对时间时不要依赖第三方文章,直接看官方 FAQ 和产品内通知。Edu 工作区以各自收到的通知为准。个人账号(Free、Plus、Pro 等)需要额外留意:官方说明迁移影响所有 ChatGPT 套餐,但个人账号的下线日是否与企业版一致,目前没有明确表述,只能以产品内通知为准。

把草稿发布出去

迁移只处理最新一个已发布版本。如果某个 GPT 花了几周时间修改但一直停在草稿状态,这些改动不会被带走。建议在创建通道关闭之前先把草稿发布,发布范围不必设为公开,只要处于已发布状态即可。

整理 Custom Actions 清单

把每个 GPT 调用的 API 端点、认证方式、所需权限范围逐条写下来。这份清单决定了迁移之后需要重建的工作量,也是估算工时的依据。

记录模型设置和对话开场白

这两项都不在自动迁移范围内。把当前选择的模型、开场白文案、共享设置抄下来,迁移完成后重新配置到 Skill 的指令文本或 Plugin 的设置里。

确认迁移权限

能执行迁移操作的只有 GPT 的创建者或管理员,且对象必须是已发布的 GPT。权限不符时,界面上不会出现迁移入口。

操作步骤

第一步:从 My GPTs 进入迁移入口

迁移入口位于 My GPTs 页面下的 Created by me 列表,选中目标 GPT 后可以看到 Migrate to plugin 选项。这个按钮的出现时间因账号和工作区而异,属于分批开放。如果暂时看不到,等待产品内通知即可,不要尝试通过其他路径绕过。

第二步:核对 migration details

选择迁移后,界面会展示一份迁移明细,说明哪些内容会去往何处。这一步需要逐项确认三件事:

  • Instructions 转换成的 Skill 内容,是否包含已发布版本中最新的指令文本。
  • Knowledge files 是否全部被纳入 reference files 的迁移范围。
  • Connected apps 是否作为 Apps 被正确继承。

确认无误后,按界面提示创建 Plugin。

第三步:测试迁移后的 Skill 与资料文件

迁移完成后,原来的 GPT 会变成只读状态,无法再编辑,但在下线日之前仍然可以使用。这给了一个对照验证的窗口:把原 GPT 和新建的 Plugin 并排打开,用同一批问题分别提问,比较回答是否一致。重点观察资料文件的检索和引用行为,官方明确提示这部分的表现可能与原来 GPT 的 Knowledge 机制不同。

第四步:重建 Custom Actions

Custom Actions 不会迁移。官方给出的方向是:用受支持的连接器替代,或者改写成自定义 MCP 连接,并在团队切换之前完成测试。判断顺序如下:

  1. 先看现有的 App(受支持的连接器)能否覆盖原本需要的操作。
  2. 覆盖不了的部分,改写成自建的 MCP(Model Context Protocol)服务器。

重建连接可能涉及认证、权限范围、审批流程和安全审查的重新走一遍,而且重建后的连接不一定能完全复现原 Action 的全部功能,这一点要提前纳入预期。

第五步:把 MCP 服务器接入 ChatGPT

自建 MCP 服务器的接入流程大致如下:

  1. 在 ChatGPT 的 Settings 中找到 Security and login,开启 Developer mode。
  2. 进入 ChatGPT Plugins 页面,点击加号按钮,填入服务器 URL,注意要包含 /mcp 路径。
  3. 在普通对话和 deep research 中分别发送提示词,确认工具能被正确调用。

ChatGPT 只能连接远程的 HTTPS 服务器,传输方式为 SSE 或 Streamable HTTP。部署在内网、无法从公网访问的服务器,需要使用 Secure MCP Tunnel 打通。另外,一些较早的教程里提到的设置路径已经和当前界面不一致,按实际界面为准。Developer mode 对套餐的具体要求,官方文档中没有明确说明。

第六步:补齐共享设置与开场白

不使用 Custom Actions 的 GPT,走到这一步基本就结束了:把共享范围和对话开场白在 Plugin 侧重新配置一遍即可。使用 Custom Actions 的 GPT,则需要等第五步的联调通过之后再收尾。

一个完整示例

下面以一个「内部知识问答 GPT」为例,走一遍从准备到上线的完整流程。这个 GPT 的特点是:只用 Instructions 和 Knowledge files,没有接任何外部 API。

准备阶段。打开这个 GPT 的编辑页,确认它处于已发布状态而不是草稿。把当前的 Instructions 全文复制到一个文本文件里备份,把上传的 Knowledge files 列一份清单,记录文件名和用途。因为这个 GPT 没有 Custom Actions,清单里这一栏留空。同时记下当前选择的模型和配置好的开场白。

迁移阶段。进入 My GPTs,在 Created by me 里找到它,选择 Migrate to plugin。在 migration details 页面逐项核对:Instructions 是否是最新版本、Knowledge files 是否全部列出、Connected apps 是否为空(本例中本来就没有)。确认后创建 Plugin。

验证阶段。原 GPT 此时变为只读但仍可用。准备五个有代表性的问题,分别向原 GPT 和新建的 Plugin 提问,对比回答。如果发现 Plugin 引用资料文件的方式和原来不同,回到 Skill 的指令文本里,把「应当参考哪些文件」「回答应当采用什么格式」写得更明确一些。

收尾阶段。在 Plugin 侧重新设置共享范围和开场白,把迁移完成的消息同步给团队成员,并提醒他们旧链接的行为变化。

如果这个 GPT 带有 Custom Actions,流程会在验证阶段之后多出一整条支线:先判断现有 App 能否替代,不能替代的按 MCP 服务器重建,实现 OAuth 2.1 授权流程,再走一遍工作区审批,最后在对话中实测工具调用。

注意事项

迁移范围的分界线

把迁移明细整理成一张表,判断起来更直观:

项目是否迁移迁移后的形态
Instructions迁移Plugin 内的 Skill
Knowledge files迁移作为 reference files 复制
Connected apps迁移Plugin 的 Apps
Custom Actions不迁移用现有 App 替代或重建为 MCP 服务器
所选模型不迁移Enterprise 下适用企业默认值
草稿与未发布编辑不迁移仅最新已发布版本参与迁移
历史会话不迁移需要的话提前导出留存
开场白与共享设置不迁移在 Plugin 侧重新配置

Plugin、Skill、Apps 的关系

迁移目标的结构和 Custom GPT 不一样,理解这一点能避免配置时找错地方。Plugin 是一个容器,用来把 Skill 和 Apps 打包在一起,同时也是跨 ChatGPT 与 Codex 的发现单位。Skill 承载可复用的指令、示例、辅助文件和代码,实体是一个包含 SKILL.md 的文件夹。Apps 负责连接外部服务,对应原来的 Connected apps。Skill 可以引用资料文件,这些文件就是 Knowledge files 迁移后的落点。

Skill 的创建方式有三种:通过对话创建、通过编辑器创建、从本地上传。部分账号中会预置一个用于创建 Skill 的 Skill。

MCP 服务器的认证要求

带认证的 MCP 服务器需要实现符合 MCP 授权规范的 OAuth 2.1 流程,具体包括:公开 /.well-known/oauth-protected-resource、授权服务器支持 PKCE(S256)、MCP 服务器侧校验令牌的签名以及 iss、aud、exp、scope 等字段。只读且匿名的模式也被允许,但如果要暴露客户专属数据或写入类操作,应当要求用户认证。

原来的 GPT Actions 可以选择 API 密钥认证,迁移到 MCP 之后认证方式需要重新设计,这往往是整个迁移工作中最费时的部分。API 密钥认证的 Action 能否以非 OAuth 的方式直接迁移,目前没有明确说明。

工作区层面的运营差异

在工作区中运营 MCP 应用时,有几个行为需要提前知道(相关说明带有 beta 标记,后续可能变化):

  • 管理员首次批准应用时,当时的工具定义会被固定为快照,服务器后续的改动不会自动同步。
  • 如果服务端做了不向后兼容的修改,在管理员从 Workspace settings 执行刷新之前,工具调用可能持续失败。
  • Business 套餐下应用发布后无法更新,只能重建并重新发布;Enterprise 和 Edu 可以通过刷新更新,但新增的操作默认处于关闭状态。
  • Plugin 的安装状态和其中 App 的访问权限是两套独立控制。Enterprise 和 Edu 下新的 Plugin 与 App 默认关闭,Business 下 App 默认开启。因此可能出现「Plugin 装了但 App 用不了」的情况,验证时要用普通成员权限再走一遍。

不迁移会怎样

下线日之后,Custom GPT 会停止运行,并从 GPT 目录中移除。目前没有看到可以归档后恢复的说法。已经迁移的 GPT 链接,会对有访问权限的人重定向到对应的 Plugin,所以内部 Wiki 或手册里贴过的 GPT 地址,迁移之后有可能继续可用。迁移操作本身在下线之后仍然可以执行,只是那时 GPT 已经无法运行。对于业务上正在使用的 GPT,比较稳妥的做法是在下线日之前完成迁移和验证,避免中间出现无法使用的空档。

常见问题

看不到 Migrate to plugin 选项。迁移功能按账号和工作区分批开放,开放时间是目标而非保证。等待产品内通知即可。同时确认自己具备创建者或管理员权限,且目标 GPT 已经发布而不是停在草稿状态。

迁移后回答风格变了。原来选择的模型不会继承,Plugin 会使用目标环境的默认模型。资料文件的检索和引用行为也可能与原来的 Knowledge 机制不同。可以在 Skill 的指令文本里显式写明应当参考哪些文件、回答采用什么结构,用这种方式把输出拉回预期。

Plugin 装好了却连不上外部服务。Plugin 的安装和 App 的访问权限是分开控制的。Enterprise 和 Edu 下新 App 可能默认关闭,需要管理员启用并授予权限。

迁移难度怎么预估。难度基本由是否使用 Custom Actions 决定。只用 Instructions、Knowledge、Connected apps 搭起来的 GPT,官方工作流能承担大部分工作;带 Actions 的 GPT 则涉及 OAuth 2.1 与 PKCE 的 MCP 服务器实现、工作区审批、快照更新运维,工作量接近一个小型开发任务。建议在盘点阶段先把带 Actions 的 GPT 挑出来,把工时集中投在这些上面。

最后提醒一句:涉及套餐可用范围、功能开放时间、配额与价格的信息变动频繁,动手之前请以官网当前公布的内容和账号内的实际界面为准。