跳至主要內容

食品溯源與營養成分分析程式的困難

由AI產生的AI眼鏡營養成分分析

我之前寫過自己在做一個分析營養成分的Bot,用最簡單的方式追蹤每日、每週、每月的營養攝取狀況。做著做著,我發現一個問題:如果這個 Bot 要進一步給予建議,會踩到誰該給建議的界線。剛好最近食安新聞不斷,我想起自己多年前放棄的食品溯源專案,於是把原本分析營養成分的 Bot,延伸成一個自己動手做的食品溯源程式。這篇文章想分享的是這個延伸過程裡遇到的三個矛盾:營養分析的黑盒子問題、自己做溯源程式時撞到的資料難題,以及消費者實際採購行為與溯源理想之間的落差。

營養分析的黑盒子

目前市面上以AI分析營養成分的應用,有一塊我一直覺得模糊的區域:使用者無從得知分析依據為何。另外還有一個更根本的問題,使用者吃東西為什麼要先拍照才能吃?拍照分析一餐,本身就是打斷用餐過程,也不符合大部分人吃飯的日常邏輯。唯一真正說得通的應用場景,是把這個功能放進眼鏡裡,讓使用者所見即可分析,不需要額外動作。

即使先不談拍照這件事,營養分析Bot本身也有精準度的問題。脂肪與鈉含量是最難估算的兩項,AI會給出數字,但使用者不知道這個數字的計算依據,實際使用中也會遇到辨識失敗的案例,還需要「教會 AI 學習與記憶」歷次辨識的結果。

動手做自己的食品溯源程式

做到現在,大概能理解當初這類食品溯源計畫為什麼沒有做出大家都想用的成品。核心困難是各方資料庫格式不一致,在沒有 AI 協助的年代,清洗資料、做正規化本身就是一個工程量很大的任務。現在有AI協助,清洗與統一格式的速度快很多,但還是存有資料流失的風險。

台灣食藥署有提供開放資料下載,實際使用後我發現幾個資料本身的漏洞,而這些漏洞不是食藥署一個單位能單獨解決的:

  1. 進口商紀錄無延續管制:曾有食安風險新聞的進口商,依然可以繼續進口食品;
  2. 廠商自主登錄無強制力:部分食品不會主動登錄食藥署平台,登錄與否全靠廠商自願,沒有強制規範;
  3. 品牌名稱相近造成混淆:統一生機、統一生醫、義美生醫、義美生技等大廠的名稱相近,AI在判斷資料時,很難判斷該合併還是分開處理,還需要去工商登記查詢。

相對地,國內較大品牌像聯華、光泉、義美,通常會自建食品溯源網站,並在自家包裝上印刷條碼,消費者掃描條碼就能連結到來源與檢驗結果。這類大品牌的資料完整度高,我做溯源程式時,對於大品牌並建有溯源平台的資料則以品牌自建平台的資料為主,不會再抓下來。

使用行為的矛盾

整個使用流程是拍照或掃描、上傳程式、AI分析、產出結果。但這個流程背後有一個我不斷思考的問題:消費者實際的採購行為,真的支持這套流程嗎?

先看品牌與功效的取捨。消費者在便利商店買一盒無糖豆漿時,通常會先看品牌,還是先看蛋白質含量?還是單純圖方便好喝,或者價格才是第一考量?這決定了溯源資訊在採購當下有沒有機會被看到。

再看溯源行為本身的落差。有些超市會立牌標示馬鈴薯來自台灣哪個產區,或標明與哪位農夫契作,包裝蔬菜也常有標章或條碼可供溯源。但消費者在每一次採購裡,真的會駐足查詢嗎?就算查了,一般消費者讀得懂溯源網站上的檢驗報告嗎?傳統市場裡沒有包裝的食材,又還有哪些方法可以檢測?

最後是網路平台,特別是C2C賣場,更難掌控。還有社群平台如 Instagram、Threads、Facebook 上有不少「食品」廣告,這些食品的製造商可能來自中國,藉由集運方式將商品輸入台灣。相關單位無法管到這一塊。有些食品成分可能危害健康,但消費者無從得知,造成傷害時也無從索賠。

未來可能的應用

我試過各種方式想簡化操作流程,但目前還是無法讓這個程式變得更簡單、更直覺。不過我相信這類應用不久會出現,而且很可能出現在 AI 眼鏡上。針對這個想法,我得到以下資訊:

理論上可行,但要看是哪一種 AI 眼鏡,關鍵差異在於「有沒有開放的相機/開發者 API」。

核心邏輯可以搬過去:bot 現在的分析引擎本來就跟 Telegram 介面是分開的,Telegram 只是「拍照→傳圖片→收到分析結果」這個輸入輸出殼。只要眼鏡那端能把拍到的照片傳到某個後端,理論上就能接上現有的分析流程,不需要重寫辨識/查詢邏輯。

實際卡點在眼鏡本身:像 Ray-Ban Meta 這類消費級 AI 眼鏡目前是封閉生態,Meta AI 本身能辨識畫面內容,但沒有開放給第三方接自訂後端做這種客製化營養分析。少數有開發者 SDK 的眼鏡(例如某些 Android-based/XR 平台的眼鏡)理論上可以做到:使用者說「記錄這餐」或做個手勢觸發拍照 → 照片丟到自建後端 → 跑一樣的分析 → 語音或畫面回饋熱量/營養缺口。即時疊加顯示(像走到食物前直接在鏡片上看到熱量)技術上難度高很多,目前消費級眼鏡幾乎做不到即時準確辨識疊加。

重點是要找到一支開放相機串流/拍照 API 給第三方開發者用的眼鏡。

我讓 AI 做一張圖,模擬 AI 眼鏡看到食品並開始分析的畫面,畫面本身其實令人缺乏食欲。這也讓我重新思,使用者真正需要的,或許不是一張營養成分表,而是分析計算完使用者當日的飲食後,給出可以理解的建議。例如今天使用吃了很多肉類,系統會提示「今天還需要多補充蔬菜哦!」或是發現使用者攝取不足的蛋白質時,會主動提示「今天用餐可以再配些優酪乳、豆漿、牛奶」。這種具體、好懂的建議一定比一張難以解讀的營養成分表更有效,但這正是營養師的專業建議範疇,AI 不該越界代替營養師說這句話。

我的暫時性結論是,這件事真正卡住的不是技術,是誰有資格給建議。工具可以幫我清洗資料、比對條碼、算出熱量缺口,但「你今天該多吃點什麼」這句話,還是該留給營養師說。我會繼續做下去,但下一步要想清楚的,是這個程式該停在哪裡,把界線留給真正的專業。

食品安全的真正意義是「信任」

在製作應用時,我持續思考,消費者的行為與這個程式的意義,最終察覺「食品安全」是個表面議題,真正要探討的是整個供應鏈中,哪個管理環節鬆掉了、讓消費者失去信任,而不是急著課責。

消費者唯一有能力做的是「信任制度」,而不是擔心食品與營養成分,但不當管理、制度缺失造成危害身體健康,卻是所有人來承擔。貨架上的商品,在法令規範下,「原則上應該是安全的」,不需要消費者事後溯源,這才是主管機關應該做到,而不是把推給消費者或是生產者的責任。

留言