
我的廚房,就像許多人的家裡一樣,總有個神秘的角落,專門收容那些「不知道該怎麼辦」的食材。可能是煮火鍋剩下的一點金針菇、幾顆蛤蜊,也可能是在市場失心瘋買下的特價櫛瓜。
更讓人頭痛的是,當你想向媽媽或阿嬤討教食譜時,得到的答案永遠是充滿禪意的「鹽巴少許、醬油適量」。
身為一個熱愛用程式碼解決問題的開發者,我受夠了這種每天上演的「料理選擇困難症」。我心想,如果有一個 LINE 機器人,能在我最需要的時候,像個貼心大廚一樣給我建議,那該有多好?
於是,「MomsHero 智能料理助手」這個專案就此誕生。它不只是一個 Side Project,更是我與「不知道吃什麼」這個千古難題的正面對決。
你的隨身大廚:能聽、能看、還能聊
要讓工具真正實用,就必須無縫接軌我們的料理日常。因此,我把重點放在了最直覺的互動方式上:圖片與語音。
1. 懶人救星:拍下冰箱,菜單馬上來
想像這個畫面:你手忙腳亂地結束一天的工作,打開冰箱,隨手拍下一張照片傳到 LINE。
你: [傳送一張有雞蛋、番茄、一把蔥的照片]
MomsHero: 「叮!我看到了有雞蛋、番茄和青蔥,為您推薦三道靈感料理!」
接著,手機上會跳出可以左右滑動的輪播卡片,上面可能是「番茄滑蛋」、「番茄蛋花湯」和「西班牙烘蛋」。你只需要輕輕一點,完整的份量、步驟和小訣竅就全部展開,完全省去了搜尋和抄寫的麻煩。
2. 廚房神隊友:動口不動手,料理不中斷

煮菜最怕的就是手忙腳亂,手上可能還沾著油或麵粉。這時候,MomsHero 的語音功能就派上用場了。你不用碰螢幕,只要按住麥克風說話:
你: 「我有雞腿肉跟馬鈴薯。」
MomsHero: 「沒問題!試試看『馬鈴薯燉肉』、『咖哩雞』或『迷迭香烤雞腿』如何?」
這個功能背後由 Azure 的語音服務驅動,它能精準地將你的話轉成指令,讓你在料理過程中,也能輕鬆獲得下一步的靈感。
一場與 0.03 相似度的搏鬥:那個差點搞砸專案的「美麗錯誤」
看到這裡,你可能會覺得一切都很順利。但事實上,在 MomsHero 聰明應答的背後,是一段充滿挫敗的技術繞路。
我第一個想法,非常直觀,在技術圈也很「性感」——用向量資料庫打造食譜搜尋引擎。
簡單來說,就是把上萬筆食譜轉換成 AI 能理解的數學座標(向量),存進資料庫。當使用者輸入「番茄、雞蛋」,系統就去計算哪一道食譜的座標跟這個組合最接近,然後回傳結果。這在理論上,應該要快又準。
我興致勃勃地處理了上萬筆食譜,按下執行鍵,然後...一場災難發生了。
我發現,因為食譜的文本普遍不夠長,而且結構非常類似(都有食材、步驟、份量等)。這導致向量化之後,它們在多維空間中的位置全都擠成一團,彼此的相似度竟然全都落在 0.95 到 0.98 之間!

這 0.03 的微小差距,對 AI 來說幾乎沒有鑑別度。這意味著,在它眼裡,「番茄炒蛋」和「義式番茄肉醬」幾乎長得一模一樣。整個搜尋系統形同虛設,不管我輸入什麼,它吐出來的結果都牛頭不對馬嘴,精準度極差。
就在我被這 0.03 的差距搞到快要放棄時,我決定來個 180 度大轉彎:與其當個「圖書館員」在書庫裡費力尋找,不如直接當個能即興發揮的「大廚」!
我果斷放棄了自己維護的向量資料庫,將整個專案的核心大腦,全部託付給 Google 的 Gemini 1.5-pro 模型。我不再讓它「搜尋」,而是讓它根據我給的食材,「即時生成」一份全新的、合理的、看起來很美味的食譜。
這個轉向,徹底盤活了整個專案。LLM 的強大之處在於它的生成能力與脈絡理解,這讓 MomsHero 變得極度靈活。當你點擊「我食材有缺」時,它能馬上理解你的困境,並提供替代方案,這是在傳統搜尋引擎上難以實現的。
這個「美麗的錯誤」教會我的,遠比一次成功的經驗還多。
結語:用科技,為生活烹調一份溫暖

從一個想解決剩菜的點子,到經歷技術死胡同後的柳暗花明,MomsHero 的誕生,是一趟充滿樂趣的旅程。它讓我再次確認,科技最好的樣貌,就是能融入生活,為我們解決那些微小卻真實的煩惱。
這個專案還在持續進化中,未來我希望能加入用戶偏好學習、食譜評分系統等功能,讓它成為更懂你的個人化廚師。
你家的冰箱,也常常有不知該如何處理的食材嗎?你希望 AI 料理管家還能幫你做些什麼呢?
歡迎到我的 GitHub 專案頁面 給我一點鼓勵,或是在底下留言分享你的想法,讓我們一起用科技讓料理變得更簡單、更有趣!