代碼生成流程圖 / 時序圖提示詞(Mermaid 格式,可直接貼進 Markdown 和飛書文檔)

要給複雜的業務代碼畫流程圖或時序圖(寫技術文檔、給新人講解、做評審)時用:把代碼貼給 AI,得到忠實於代碼的 Mermaid 圖,並附上代碼位置對照,避免畫出「理想中」而不是「實際上」的流程。

NNathaniel bigo··原創首發·AI 輔助撰寫
通用大模型 對話模型通用
請閱讀下面的代碼,畫出它實際的執行流程。

- 圖的類型:[流程圖/時序圖/狀態圖/讓你判斷]
- 關注的範圍:[如從收到下單請求到返回結果]
- 讀者:[如新入職的後端同學、產品經理]
- 代碼(可以是多個文件,註明文件名):
  [粘貼代碼]

要求:
1. 先用 5 到 10 行文字概括主流程,再畫圖。
2. 圖必須忠實於代碼:
   - 每個判斷分支、提前返回、異常處理都要體現;
   - 時序圖裏的參與者對應代碼裏真實的類、服務或外部系統,調用順序和代碼一致;
   - 異步調用(消息、事件、後台任務)用虛線或備註標明;
   - 代碼裏沒有、但你認為「應該有」的步驟,不要畫進圖裏,放到最後的「發現的問題」中。
3. 節點文字用中文簡短描述,不超過 12 個字;需要說明的細節放在備註裏。
4. 圖太大時(超過約 25 個節點)拆成一張總圖和幾張子流程圖。
5. 用 Mermaid 語法輸出,放在 mermaid 代碼塊裏。注意避免常見的語法錯誤:節點文字中包含括號、引號等特殊字符時要用雙引號包起來。
6. 圖後附一張對照表:圖中的關鍵節點 | 對應的文件與函數。
7. 最後列出畫圖過程中發現的問題,例如:某個異常被吞掉、某個分支永遠不會走到、調用順序可能導致的數據不一致。

高亮處換成你自己的內容:[流程圖/時序圖/狀態圖/讓你判斷]、[如從收到下單請求到返回結果]、[如新入職的後端同學、產品經理]、[粘貼代碼]

ChatGPT Plus 充值

已被複製 0 次

使用說明

怎麼填變量:[圖的類型] 拿不準時寫「讓你判斷」:多個系統之間來回調用適合時序圖,單個函數里分支多適合流程圖,訂單、審批這類有狀態的對象適合狀態圖。[讀者] 是產品經理時,AI 會把技術細節收進備註裏。

常見坑:

  • AI 畫圖時容易「美化」流程,把代碼裏實際沒有的校驗步驟也畫上去。模板要求只畫代碼裏有的,缺失的放進「發現的問題」,這部分常常比圖本身更有價值。
  • Mermaid 對特殊字符比較敏感,節點文字裏出現括號、冒號、引號時容易渲染失敗。渲染報錯時把錯誤訊息貼回去讓它修。
  • 一張圖塞幾十個節點就沒法看了,拆成總圖加子圖。

追問技巧:圖出來後可以追問「標出這個流程中所有會訪問數據庫的步驟」或「在時序圖上標註每一步的超時時間」,把圖變成評審工具。

示例輸出

示例,僅供參考(下單流程時序圖)
mermaid
sequenceDiagram
    participant C as 客戶端
    participant O as OrderService
    participant I as 庫存服務
    participant P as 支付網關
    participant MQ as 消息隊列
    C->>O: 提交訂單
    O->>I: 扣減庫存
    alt 庫存不足
        I-->>O: 失敗
        O-->>C: 返回「庫存不足」
    else 扣減成功
        O->>P: 創建支付單
        P-->>O: 返回支付連結
        O--)MQ: 發送「訂單已創建」事件
        O-->>C: 返回支付連結
    end
節點位置
扣減庫存order/service.py 的 create_order()
發送事件order/events.py 的 publish_created()

發現的問題:創建支付單失敗時,已扣減的庫存沒有回滾。

同款作品

用這條提示詞做出來的作品;原作者會因此獲得積分

做同款

還沒有同款,來做第一個。

Nathaniel 的更多內容

同主題

同模型

0 條評論

登入 後參與評論

還沒有評論,來搶沙發~