🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付

我現在有狀態機的觀念了 想試試存進資料庫的樣子

輸出內容

=== 台灣餐廳點餐系統 (State Persistence) ===
輸入 'new' 開始新對話
輸入 'load <session_id>' 載入舊對話
輸入 'list' 查看所有對話
輸入 'state' 查看當前狀態
輸入 'quit' 結束

> new
✓ 創建新對話 #4

> 我要點餐

🤖 好的,請問您有沒有任何食物過敏或是特殊的飲食需求呢?

> 我對花生過敏

🤖 了解,我會特別注意。我們餐廳的菜單有牛肉麵 $150、滷肉飯 $50、珍珠奶茶 $45。請問您想要點哪一道菜呢?由於您有花生過敏,珍珠奶茶裡面的珍珠是使用花生油製作的,所以不建議您點選。

> 我要牛肉麵就好

🤖 好的,您點的是牛肉麵一碗,價格為$150。請問您還需要點其他的飲料或甜點嗎?

> 不用

🤖 好的,請問您要用現金還是信用卡付款呢?

> 信用卡

🤖 好的,您將使用信用卡付款。您的訂單為牛肉麵一碗,總價為$150。請問您是否確認訂單?

> 好喔我確認

🤖 感謝您的確認,您的訂單已經完成。請稍候片刻,我們將會為您準備餐點。謝謝您的光臨!

> state

當前狀態:
{
    "allergy_confirmed": true,
    "allergies": [
        "我對花生過敏"
    ],
    "current_items": [],
    "order_previewed": false,
    "order_confirmed": false,
    "payment_provided": false
}

> list

最近的對話:
#4 | demo_user_1770793795 | 12 則訊息 | 更新: 2026-02-11 07:11:40
#3 | demo_user_1770792095 | 20 則訊息 | 更新: 2026-02-11 06:44:08
#2 | demo_user_1770792011 | 0 則訊息 | 更新: 2026-02-11 06:40:11
#1 | demo_user_1770791920 | 0 則訊息 | 更新: 2026-02-11 06:38:40

> quit

再見!

原始碼

https://github.com/howtomakeaturn/ai-agent-pattern-notes/blob/main/patterns/03-state-persistence/demo.php

知識點1

這個範例過度簡化 所以當前狀態的內容 出錯很多 別在意

知識點2

把狀態機持久化 其實就是 把前一個範例的 php array 存成一筆 row 而已

知識點3

我目前認為 最簡化設計 只需要三張 table

chat_sessions chat_messages agent_states

就可以把對話、訊息、狀態機 持久化

彼此關聯是

chat_sessions <-> chat_messages 1 to N

chat_sessions <-> agent_states 1 to 1

建立對話時 同時建立狀態機

更新對話時 同時更新狀態機

知識點4

chat_messages: 累積的對話歷史

agent_states: 當前的狀態快照(覆蓋式更新)


每週二 YT 直播 Q&A(可 Discord Call-in)
YT:https://www.youtube.com/@codelove_tw
DC:https://discord.gg/fvCF2whZ9D

⭐️ Shopify 接案服務(給品牌)
https://job.turn.tw/shopify-services

⭐️ Shopify 技術教練(給工程師)
https://job.turn.tw/developer-coaching

⭐️ 台灣 Shopify 開發者 LINE 群(非官方)
https://line.me/ti/g2/YUasX5K3CJ4QdIx76zppjHlh3-q8w-xkSyK1LA

共有 0 則留言


每週二 YT 直播 Q&A(可 Discord Call-in)
YT:https://www.youtube.com/@codelove_tw
DC:https://discord.gg/fvCF2whZ9D

⭐️ Shopify 接案服務(給品牌)
https://job.turn.tw/shopify-services

⭐️ Shopify 技術教練(給工程師)
https://job.turn.tw/developer-coaching

⭐️ 台灣 Shopify 開發者 LINE 群(非官方)
https://line.me/ti/g2/YUasX5K3CJ4QdIx76zppjHlh3-q8w-xkSyK1LA
🏆 本月排行榜
🥇
站長阿川
📝10   💬3  
306
🥈
我愛JS
📝1   💬5   ❤️2
63
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付