即時監控 Mercari 台灣的戰鬥陀螺商品,邊抓取邊用 LLM 辨識型號與估價, 偵測可轉售的好康並累積各型號的價格走勢,新商品秒級推播到瀏覽器。
- 即時爬蟲 + WebSocket 推播:每 3 秒輪詢搜尋結果,新品秒速推到前端並播放提示音。
- LLM 型號辨識與自動估價:用 OpenRouter 從標題/描述抽取型號,計算含運費、服務費、關稅的利潤。
- 好康優先重訪排程:獲利商品採高頻重訪(5 分內每 10 秒),秒級偵測售出狀態。
- 價格走勢與加權成交均價:散點圖區分已售/在架,依成交速度加權估算市場清算價。
- 型號映表管理頁:直接在 UI 編輯「型號 ↔ 名稱 ↔ 售價」,同時作為 LLM 辨識依據。
技術棧





以 OpenCV 與自訓練 YOLOv10 為核心的影像辨識研究:螢幕擷取後做小地圖定位、 血條偵測與攻擊範圍計算,並用 BFS 在二值化地圖上規劃跳躍/爬升/行走路徑。
- 多模組影像分析:擷取(mss)→ 小地圖讀取 → 主畫面 ROI(YOLO + 血條)分層處理。
- 穩定座標定位:以特定像素值取得玩家位置,於上次座標 ±15px 範圍搜尋提速。
- 小地圖他人偵測:紅色遮罩 + 形態學開運算 + 連通元件分析,過濾尺寸並驗證中心顏色。
- YOLOv10 怪物偵測:自訓練模型(X-AnyLabeling + SAM 2.1 標記),10–20 FPS 平衡精度與效能。
- 血條與攻擊範圍計算:紅黑雙遮罩 + 膨脹/交集/形態學運算,推算玩家中心與可攻擊範圍。
技術棧
本專案為學術與技術研究用途,不公開完整程式碼以避免濫用。





ROS 2 練習:AI 迭代調參的自動繞圈送餐車
track_sim ・ ROS 2 Humble + Gazebo Classic 11 ・ 練習專案
練習 ROS 2 的小專案:差速驅動送餐車要在 35 cm 窄迴圈跑道自動繞圈,牽涉數十個控制參數(沿牆增益、轉角觸發距離、煞停閾值…)。 重點在做法——設計詳盡的結構化 log,讓 AI 讀執行結果、判斷問題、調整參數再重建,以這樣的迭代迴圈歷經 32 次, 把撞牆連連的初版調到連續 10 圈、753 秒、零碰撞。
- AI 迭代調參迴圈:以「跑模擬 → 讀結構化 log → AI 判斷並調整參數 → colcon 重建 → 再驗證」的循環推進,
docs/iteration_log.md完整記錄 32 次每次改了哪個參數、為什麼。 - 為調參而生的 telemetry:控制節點內建
[MODE]/[TURN-START/END]/[CRASH]/[BODY-COLLISION]/[STUCK]等結構化 log,讓每次迭代從「用猜的」變成資料驅動。 - 數十個可調參數:巡航速度、沿牆增益
kp_lateral/kp_heading、目標離牆距離、煞停 pivot 閾值、RFID 感應半徑與 sector 角度…全用 ROS 2 parameter 宣告,可即時覆寫再試。 - 被調的對象:光達沿牆 + RFID 轉角:右側扇區點雲做 TLS 線擬合估離牆距離/角度;
rfid_reader用 tf2 判斷是否進入轉角 tag 的 10 cm 半徑,觸發 90° 左轉。 - 迭代學到的關鍵修正:轉彎前先 BRAKE 完全停止(殘速會走弧線撞牆)、末段改 proportional(bang-bang 過衝會累積)、光達內縮進 body(凸出會讀穿牆數據)、改用 odom 絕對航向而非 corner 附近失真的線擬合。
- 可重現成果:spawn 隨機 ±10° yaw 下巡航 0.30 m/s,40 個轉角 / 10 圈 / 753 秒 / 零碰撞(milestone commit 記錄於 iteration_log)。
技術棧
差速驅動:兩輪各自獨立控速,靠左右輪轉速差前進與轉向,無需轉向舵機。
Discord 上的 AI 開發助手機器人
Noah_ipadpos_AI_dev_bot
在 Discord 透過 Claude CLI 即時操作目標專案:使用者回報問題後,Bot 自動分析、評估風險、 執行修復、編譯測試、Git 提交與服務重啟,並回報完整結果。
- 直接修復流程:分析 → 風險評估 → 修復 → 測試 → Git 提交 → 重啟 → 報告,一條龍完成。
- 兩階段風險評估:一般使用者強制先經唯讀分析;高風險任務需手動確認。
- 計畫模式:先審查 AI 擬定方案再執行,適合大型修改。
- Web UI 儀表板:左右分欄即時顯示歷史紀錄與 Docker Log。
- Session 信任分級:依使用者信任等級決定是否復用上下文,維持對話連貫。
技術棧


政府採購標案查詢與推送機器人
Tenderbot_ts ・ LINE / Discord 雙平台
從 Python 1:1 移植至 TypeScript 的標案機器人,LINE 與 Discord 共用核心邏輯, 提供 AI 對話式搜尋、語義向量搜尋、定時推送與自動爬蟲。
- 雙平台統一介面:LINE 與 Discord 共用核心;設定、推送、對話歷史皆以(平台, 擁有者)為唯一鍵隔離(私訊對個人、頻道對群組)。
- 混合搜尋引擎:FTS5 + BM25 精準比對(jieba 中文斷詞)+ text-embedding-3-small(1536 維)語義向量(sqlite-vec vec0),以 RRF(k=60)融合多路名次。
- 兩段式重排:RRF 融合後再用真實 cosine 距離二次 re-rank,去重截斷 10 筆(各底層查詢 top-k 20)。
- 命令式 AI 流程:純函式路由器分派四條路徑(聊天/語義搜尋/關鍵字 fallback/無結果),取代 LangGraph,全程 try/catch 降級。
- 意圖抽取與韌性:先用 LLM(JSON mode)抽意圖與關鍵字,失敗自動退回 jieba;OpenAI 失效時全流程改走純關鍵字並附降級說明。
- 定時推送與爬蟲:croner 兩個 job(protect + paused 防重入競態)——每小時 cheerio 爬政府採購網(Big5 解碼)同步、每分鐘比對推送,缺漏 embedding 於下輪 backfill 補齊。
技術棧
LINE 客服知識庫系統
Noah_AIbot2.0
基於 Claude Code CLI 的 REST API 服務,將 LINE Bot 連接知識庫文件, 提供多使用者獨立、可持續多輪對話的智能客服。
- Claude CLI 無頭模式整合:以 cross-spawn 執行
claude -p,限制--tools Read,Grep,Glob只給讀取類工具、--output-format json;帶--resume維持多輪脈絡。 - 知識庫即工作目錄:將 CLI 的 cwd 設為
knowledgebase/{app_id}/,由 Claude 自己用 Read/Grep/Glob 檢索目錄內 Markdown 回答——後端不做檢索、不把文件塞進 prompt。 - 以 CLAUDE.md/README.md 當索引:每個 app 目錄用
CLAUDE.md定義客服規則與系統提示、README.md以表格列出各章節主題當索引,內容再分章節資料夾。 - 多使用者獨立 Session:以(customer_id, app_id)隔離,沿用該用戶進行中對話的 sessionId;首輪回傳的 session_id 寫回 DB 供後續
--resume。 - REST API 與持久化:
POST /api/chat依 app_id 解析知識庫路徑、呼叫 Claude,並以 Prisma + MySQL 保存對話與訊息。 - 串流韌性:邊收 stdout 邊嘗試 JSON.parse,一湊成完整 JSON 就提前結束子程序,縮短回應時間。
技術棧

