Skip to content

Ping-Lun/aiagent-chatbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

股票分析 LINE Bot 心得報告

Q1. 你在 Skill 的「注意事項」寫了哪些規則?寫這些規則的原因是什麼?

答: 我規定必須使用 FastAPI 和 LINE SDK v3 的寫法,並要求 Webhook 無論成功與否都必須回傳 HTTP 200 OK。另外也要求使用 SQLite 紀錄 user_id,以及透過 Gemini API 生成回覆。 原因是因為 LINE 伺服器對 Webhook 的回應非常嚴格,如果沒有正確回傳 200,即使後端邏輯正確執行,LINE 也會判定傳送失敗並顯示錯誤。而限制 SDK 版本與框架則能確保 AI 生成出現代且符合非同步 (Async) 效能要求的程式碼。

Q2. 你的 Skill 第一次執行後,AI 產出的程式直接能跑嗎?如果不能,你需要修改哪些地方?修改後有沒有更新 Skill?

答: 不能直接跑。第一次執行時,AI 雖然依照我的指示嘗試匯入 AsyncWebhookHandler,但因為我安裝的是最新版的 line-bot-sdk-python v3,官方已經移除了這個模組,導致出現 ImportError。 後來我請 AI 修正,它改用 WebhookParser 搭配手動事件迴圈來達成非同步處理。此外也遇到了 Gemini 模型版本更新 (舊版 gemini-pro 無法使用的 404 錯誤),AI 幫我加入了「自動切換模型」的容錯機制才順利解決。這讓我學到開發提示詞 (Prompt) 時,有時不需要過度綁死特定的模組名稱,而是要容許 AI 根據最新套件版本去調整寫法。

Q3. 你遇到什麼問題是 AI 沒辦法自己解決、需要你介入的?

答: 有兩個主要部分必須自己親自動手:

  1. 外部平台設定與金鑰申請: LINE Developers Console 的後台設定(例如開啟 Webhook 開關、將回應模式改為「聊天機器人」),以及去 Google AI Studio 申請與更新 Gemini API 金鑰(因為舊金鑰外洩被官方鎖定)。
  2. 本地網路穿透與環境設定: ngrok 的安裝與認證代幣(authtoken)綁定,以及必須手動開啟多個終端機視窗來分別運行 FastAPI (uvicorn) 與 ngrok 服務。這些涉及外部網頁 UI 操作和本地端實體環境運行的環節,AI 只能提供精準的步驟指引,無法直接代勞。

Q4. 如果你要把這個 LINE Bot 讓朋友使用,你還需要做什麼?

答: 需要將這套程式碼部署到 24 小時運作的雲端伺服器(例如 Render, Zeabur 或 Fly.io 等平台),並使用平台提供的固定 HTTPS 網址來替換掉目前 LINE 後台的 Webhook URL。 因為目前開發階段使用的 ngrok 只是暫時的網路通道,只要我的電腦關機或是終止終端機程式,網址就會失效,LINE Bot 也會跟著斷線,無法提供朋友穩定的長期服務。


測試成功截圖

螢幕擷取畫面 2026-05-01 202437 螢幕擷取畫面 2026-05-01 201740

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages