Codex 新手教程 · 上下文

给 Codex 添加文件和图片

把一份文件和一张截图放进正确聊天,说明各自用途,并在发送前排除无关或敏感内容。

本篇会把一份文件和一张图片交给 Codex,并写一条能区分两份材料用途的提示。做完以后,附件会出现在输入区,Codex 的回复会明确引用文件内容和图片中的目标区域,你也能检查它有没有看错。

前置条件

先确认当前聊天属于正确项目。只在这一轮有用的材料可以直接附到聊天,多个相关聊天都要使用的文件更适合放进项目来源。准备截图时,裁掉账号、密钥、客户信息和无关窗口。

给文件取一个能辨认的名字。若两张图分别代表修改前和修改后,文件名也要能分清顺序。图片只能提供画面,交互行为、目标尺寸和不能变化的内容仍要写在文字里。

给 Codex 添加文件和图片的入口、目标与准备条件操作示意图
图 1 · 进入任务前先确认目标、范围和准备条件

第一步附加文件并确认对象

在桌面端输入区添加文件,等待附件名称完整出现。文件较多时,先只放当前任务需要的那几份。你可以要求 Codex 读取某一章节、表格或代码片段,不必让它从大量无关材料里猜重点。

发送前核对文件名和聊天标题。可见结果是输入区里出现正确的附件卡片,文件没有进错聊天,也没有带入不该分享的数据。

第二步加入图片并标出关注处

桌面端可在按住 Shift 时把图片拖入输入区。也可以让 ChatGPT 查看电脑上的图片,或使用截图工具提供当前界面。若你在 CLI 中工作,可以粘贴图片,首次启动时也能通过 -i--image 传入路径。

图片附好以后,补一句它是什么。比如“这张图是设置页的移动端状态,只检查底部按钮溢出”。有多张图时,逐张命名并说明比较关系。可见结果是每张图片都有清楚角色,Codex 不需要靠猜测判断先后。

给 Codex 添加文件和图片的三步关键操作与请求骨架示意图
图 2 · 把关键操作拆成三步,并给每一步留下可观察结果

第三步要求先复述材料用途

可以发送下面这种小任务。

阅读附件中的页面说明,再看截图右下角的按钮。请指出截图与说明不一致的地方,只给修改建议,暂时不要改文件。回复时分别说明你从文档和图片得到的依据。

Codex 若能把两份材料分开说明,入口已经跑通。若它提到截图里没有的内容,先让它标出所依据的区域,再决定是否继续。

使用 Appshot 的场合

macOS 桌面端提供 Appshot,可以把当前最前面的应用窗口加入聊天。它可能同时包含可见截图和应用提供的文字。拍摄前把目标窗口放到最前,检查画面里有没有私人信息。部分应用只能提供可见区域,长文档的屏外内容不能依赖 Appshot 自动带入。

做一次两份材料的练习

准备项目里的 README.md 和一张终端报错截图。提示 Codex 先从文档找出项目规定的启动命令,再从截图辨认实际运行的命令和第一处错误。要求它说明两份材料各自支持了哪一条判断,只给出下一项安全检查,暂时不要安装依赖。

如果文档与截图里的命令不同,让它把差异列出来。文件可能属于较早版本,截图也可能来自另一个目录,不能任选一份当结论。你需要回到仓库查看当前脚本或配置,再告诉 Codex 哪个时间和版本更可信。

这个练习的可见结果是一份按来源分开的短答。文档负责说明项目约定,截图负责说明本次运行现场,下一项检查能同时验证两者。若回复把两个来源揉成一句无依据的判断,就让它重新按文件名和图片区域列证据。

常见失败与恢复

拖图后没有附件时,先确认是否按住 Shift,再改用附件入口或粘贴。回复忽略某份材料时,把任务缩小,让 Codex 先列出它实际读到的文件名和图片数量。附件太多导致判断混乱时,开一个新聊天,只保留完成当前结果所需的材料。

图片模糊或裁切过度时,重新截取包含页面位置和目标区域的一张图。含敏感信息的截图不要依赖后期口头提醒,先在本地遮挡或重新拍摄。

完成检查

输入区应显示正确文件与图片。提示里应说明每份材料的用途和期望输出。回复应能分别指出文档依据和图片区域,且没有声称读取画面之外的内容。

给 Codex 添加文件和图片的结果验收与交付证据清单示意图
图 3 · 用结果、检查与交付证据确认任务真的完成

参考资料