Claude → ChatGPT 快速轉換課程Part 2
Part 2
Prompt、Context 與 Thinking
不背萬用公式。你要學的是:把任務說清楚、只提供有用的上下文、選擇合理的推理深度,並用可驗證的迭代方式與 ChatGPT 合作。
01|先建立一個正確模型
明確成果
→
必要 Context
→
合理 Thinking
→
驗證標準
→
迭代
一句話:好的 Prompt 不是寫得長,而是讓模型知道「要完成什麼、根據什麼、受哪些限制、怎樣算完成」。
Prompt
這一輪要做什麼
任務、成果格式、限制、優先順序。
Context
判斷所需的資料
背景、文件、程式碼、決策、使用者與環境。
Thinking
需要多少推理
簡單改寫不需重推理;架構取捨、除錯與規劃通常需要。
02|Prompt:先定義成果,不要堆角色咒語
你不需要每次都寫「你是一位世界頂尖專家」。比角色更重要的是可操作的工作契約。
| 元素 | 要回答的問題 | 範例 |
|---|---|---|
| 目標 | 最後要得到什麼? | 產生 API 設計草案,而不是泛談 REST。 |
| 背景 | 為什麼做、誰會使用? | 政府案件追蹤,承辦人與主管使用。 |
| 輸入 | 以哪些資料為準? | 需求條列、既有 schema、附件規格。 |
| 限制 | 哪些不可違反? | ASP.NET Core、PostgreSQL、不可儲存明文個資。 |
| 輸出 | 格式與細節層級? | 表格:method、path、權限、驗收條件。 |
| 驗證 | 怎樣算完成? | 每條需求都能對應到設計決定與驗收證據。 |
模糊
幫我設計一個案件系統的 API, 要專業、完整、符合最佳實務。
「專業、完整、最佳」不可驗證;模型必須自行補大量假設。
可執行
為案件追蹤系統提出 API 草案。 技術:ASP.NET Core + PostgreSQL。 角色:承辦人、主管、系統管理員。 先列出仍缺少的 5 個關鍵需求,不寫程式。 確認後輸出 endpoint 表格,包含: method、path、角色、輸入、成功條件、主要錯誤。
有階段、有輸出結構,也避免太早寫程式。
不要把「需求對應」誤寫成「需求對應 endpoint」:效能、可用性、備份、保存期限這類非功能需求,不必各自生出一支 API。需求追蹤要問的是「這條需求由哪個設計決定承擔、用哪個證據驗收」,答案可能是一份設定、一次演練紀錄或一組監控門檻。逼每條需求都長出 endpoint,只會製造假的完整性。
Claude 使用經驗的轉換:你原本會寫的清楚指令仍然有效。差異不在於換一套神奇語法,而在於善用 ChatGPT 的檔案、搜尋、研究與成品工具,讓 Prompt 指向正確工作方式。
03|Context:不是越多越好,而是可辨識、可取捨
Context 是 ChatGPT 做判斷時能看到的資訊。大量貼入內容不等於有效上下文;過時、矛盾或沒有優先順序的內容,反而會降低品質。
應該提供
- 任務直接依賴的需求與資料
- 已做出的決策及原因
- 不可更動的技術與法規限制
- 目標讀者、系統環境、完成標準
- 關鍵檔案,並說明每份用途
應該整理或移除
- 與本輪無關的完整聊天歷史
- 沒有標註版本的舊規格
- 互相衝突卻未說明優先級的指令
- 不得採用卻未標示的範例
- 密碼、Token、個資等不必要敏感資料
遇到衝突 Context 時,定義優先順序
本次判斷優先順序: 1. 「需求規格_v3.pdf」是核准基準。 2. 「會議紀錄_0908.docx」只補充 v3 未涵蓋處。 3. 舊版 v2 只用來找變更,不得作為現行需求。 若資料互相衝突,不要自行決定;列入待確認清單。
實務技巧:長任務開始前,先要求 ChatGPT 回述「我理解的目標、依據、限制、未知事項」。你檢查後再執行,能提早抓到理解偏差。
04|Thinking:把推理成本用在值得的地方
| 任務 | 建議深度 | 原因 |
|---|---|---|
| 翻譯、改寫、格式轉換 | 一般/快速 | 目標明確,重推理通常不增加價值。 |
| 摘要單一清楚文件 | 一般 | 重點是忠於來源與格式。 |
| 架構比較、需求矛盾、複雜除錯 | 較深 | 需要跨條件推導、比較與排除。 |
| 重大決策或高風險結論 | 較深 + 外部驗證 | Thinking 不能取代可靠來源、測試與人工審查。 |
重要:Thinking 不等於知道最新事實,也不保證正確。版本、法規、價格與現況要查證;程式碼要編譯與測試;資料庫變更要在安全環境驗證。
條件互相影響
安全、效能、成本、維運與時程必須一起取捨。
錯誤原因不明
需要建立假設、找證據、逐步排除。
需找缺口
規格審查、風險分析、驗收條件與反例設計。
05|真正穩定的方式:多輪協作
1 對齊
→
2 草案
→
3 反查
→
4 修正
→
5 驗證
| 輪次 | 要求 ChatGPT | 你要檢查 |
|---|---|---|
| 1. 對齊 | 回述目標、限制、未知事項 | 是否誤解範圍、漏掉硬限制 |
| 2. 草案 | 產生最小但完整的第一版 | 方向與結構 |
| 3. 反查 | 列假設、反例、缺口與風險 | 批判是否具體、有證據 |
| 4. 修正 | 依確認結果更新,不擴大範圍 | 是否引入新矛盾 |
| 5. 驗證 | 按完成標準逐項檢查 | 測試、來源、可追溯性與人工核准 |
可直接複製的自我檢查指令
先不要稱讚這份草案。請依序檢查: 1. 哪些內容直接來自我的資料? 2. 哪些是你自行做的假設? 3. 是否違反任何明確限制? 4. 找出三個最可能失敗的情境。 5. 對照完成標準,列出尚未完成項目。 不要直接改寫;先回報檢查結果。
06|實戰:案件狀態變更 API
30 分鐘實作
已知技術為 ASP.NET Core Web API + PostgreSQL,但需求只有:「承辦人可以更新案件狀態,系統要留下紀錄。」
A|先找缺口
先不要設計資料表或寫程式。 針對這項需求,找出會影響權限、狀態機、稽核、 並行控制與驗收測試的需求缺口。 依風險排序,一次問我最多 7 題。 每題說明:若不確認,可能造成什麼錯誤。
B|建立可驗證草案
根據已確認回答,產生: 1. 狀態轉換表 2. API contract 3. PostgreSQL 資料表與 constraint 草案 4. 8 個驗收測試案例 每個決定標註:明確需求/合理假設/待確認。 先不產生完整實作碼。
C|要求反查
以 hostile reviewer 角度檢查草案: 找出越權、跳過合法狀態、重複送出、並行更新、 稽核紀錄遭竄改與時區處理可能出錯的地方。 用「風險—觸發方式—預期防護—驗證方法」表格回答。
完成證據:你能指出三輪各自的目的,並說明為什麼第一輪不該直接要求 controller code。
分幕是教學順序,不是執行時一定要停五次
上面把流程拆成五輪,是為了讓你看清楚每一步在檢查什麼。實際執行時,停不停下來應該由「還有多少未知」與「這個動作的風險」決定,而不是由固定回合數決定。目標、輸入與授權都清楚的低影響修改,可以讓它一路做到可審查的結果;會改變業務規則的歧義,就一定要先停。
| 情境 | 適合的控制方式 | 應該停下來的原因 |
|---|---|---|
| 「把申請流程改合理一點」 | 先閱讀、列出矛盾、提出可比較的方案。 | 還不知道誰有核准權,也不知道取消是否釋放資源。 |
| 「依已核准規格修好『取消後資源未釋放』,附測試與 diff」 | 讀取相關檔案,重現、修正、驗證,交付審查。 | 遇到會改變業務規則的歧義,或需要超出範圍的資料變更。 |
| 「把已檢查過的靜態教材發布到指定 Pages repo」 | 在現有授權內準備檔案、檢查、提交並確認發布狀態。 | 換新站台、需要額外帳戶授權,或內容無法確認是否可公開。 |
| 「清掉正式資料庫不需要的資料」 | 先產出查詢範圍、影響預覽、回復方式與待確認條件。 | 刪除規則或不可逆影響尚未明確授權。 |
可直接練習的工作契約
這是練習用的指令範例,不是固定公式;簡單任務只留下有用的部分就好。
目標:修復「取消尚未領取的設備申請後,設備仍被占用」。 輸入:已核准的 rules-v3.md、目前 repository、失敗案例。 限制:不得改變核准角色或其他狀態規則;不修改正式資料。 允許:讀取程式、在工作分支修正、執行本地與測試資料庫驗證。 完成:提供可重現案例、最小修正、相關測試結果與差異說明。 持續完成以上工作;如果規格互相矛盾,先列出精確衝突。 不能執行的檢查請標示原因,不得把預期結果寫成已通過。 正式部署不在本次範圍內。
驗收重點:把「該停下來的條件」寫成具體問題後,你就能觀察它是否分得清「這需要人決策」和「這只是下一個可執行步驟」。看三件事:業務規則有沒有被偷改、驗證是不是真的跑過、剩餘問題有沒有講清楚。
07|辨識題自我檢測(100 分)
共 10 題,每題 10 分。先作答,再按「計分並顯示解析」。未選視為答錯。
這個分數代表什麼:它量的是你能不能辨識本章期待的答案,不等於你已能在陌生需求上獨立應用。完成下面「本章完成檢核」的實作項目,才是應用證據。
分數怎麼讀
| 分數 | 辨識題表現 | 建議 |
|---|---|---|
| 90–100 | 選項辨識穩定 | 進入 Part 3,並在一個真實任務中實際走一次工作契約。 |
| 80–89 | 辨識大致正確 | 複習錯題後進入 Part 3。 |
| 60–79 | 辨識仍不穩 | 重做案件 API 三輪實作,再測一次。 |
| 0–59 | 概念尚未成形 | 重讀 Prompt、Context、Thinking 三節。 |
08|本章完成檢核
知識
- 能分辨 Prompt、Context、Thinking
- 知道 Thinking 不能取代查證
- 知道長 Prompt 不等於好 Prompt
應用
- 測驗達 80 分
- 完成三輪案件 API 實作
- 能標註需求、假設與待確認事項
帶走一句話:先對齊,再產出;先標註假設,再深入推理;最後用標準驗證,不用「看起來不錯」驗收。
本章維護紀錄
| 項目 | 內容 |
|---|---|
| 查核日期/依據 | 2026-09-13;依 2026-09 現況查核報告(內部紀錄,未發布於網站) 的 F03、F04、F16 修訂。 |
| 主要來源 | OpenAI Docs — Prompting(成果導向指令)、Long-running work(持續執行與完成條件)。動態文件,查閱日期不等於發布日期。 |
| 適用介面 | 方法章,不綁特定客戶端;工作契約範例可用於 Chat、Work 或 Codex。 |
| 已執行的步驟 | 已查閱官方文件並改寫正文;未執行本章範例中的修復任務。 |
| 待確認 | 各帳戶可用的委派與持續執行入口。 |