大家好,這是我第一次參加 iThome 鐵人賽。這次參加的組別是 AI Engineering,接下來的 30 天,我想記錄一個目前正在開發中的專案 —— VoCare 智慧陪伴系統。
在生成式 AI 越來越普及之後,我開始思考一件事情:
如果 AI 不只是等著我們輸入問題、回答問題,而是可以記得使用者、觀察使用者目前的狀態,甚至在真正需要的時候主動提供協助,會是什麼樣子?
VoCare 是一套以 AI 陪伴 為核心的智慧陪伴系統。我希望它不只是一個聊天機器人,而是能把 AI 真正融入日常生活,除了進行對話之外,也能根據使用者的狀態主動提供提醒與協助。
目前 VoCare 主要分成兩種模式,分別是 一般生活模式 以及 長者照護模式。兩種模式雖然面對的使用情境不同,但核心概念都是希望 AI 不只是「被動回答」,而是可以逐漸了解使用者,並在適當的時間做出反應。
一般生活模式比較接近一位日常生活中的 AI 助手。目前規劃的功能包含 AI 語音對話、個人化記憶、行程管理、智慧提醒、久坐提醒、疲勞狀態觀察,以及工作與讀書時間管理等功能。
舉例來說,如果使用者已經長時間坐在電腦前,VoCare 可以根據使用時間以及影像中的狀態,判斷使用者是否可能已經疲勞,並主動提醒:
已經坐一段時間了,要不要起來走一走、休息一下?
這和一般 Chatbot 比較不同的地方在於,使用者不一定需要主動開口詢問。我希望 VoCare 最後能做到的,是一種「知道你現在可能需要什麼」的 AI 夥伴,而不只是等待使用者輸入問題。
VoCare 的另一個重要方向則是 長者照護。長者在日常生活中可能會遇到忘記吃藥、跌倒、活動量下降,或是獨自在家時發生意外等問題,因此目前長者模式規劃了用藥提醒、喝水與吃飯提醒、跌倒偵測、日常活動狀態觀察、行動能力觀察、平安確認以及異常狀況警示等功能。
其中我比較希望做的,不是單純的:
偵測到跌倒 → 馬上通知家屬
而是建立一套比較完整的判斷流程。例如系統偵測到疑似跌倒後,可以先詢問使用者「你還好嗎?」如果使用者有正常回應,系統就不需要立刻觸發最高等級的警報;但如果跌倒後持續沒有回應,系統才會提高警示等級,必要時再通知家屬。
我希望 AI 在這裡扮演的角色,不只是負責辨識某個事件,而是能搭配規則、使用者回應以及不同情境,做出更合理的判斷。
其實一開始,我只是想做一個 陪伴型 AI。但在規劃的過程中,我慢慢發現,如果只是做一個聊天畫面,使用者輸入一句話、AI 回答一句話,那它和現在很多 AI Chatbot 並沒有太大的差異。
所以我開始思考:
AI 除了聊天之外,還可以多做什麼?
後來我想到,如果結合手機本身就有的相機、麥克風,再加上使用者過去的資料以及使用紀錄,那 AI 能取得的資訊就不只是「使用者說了什麼」。
它還可以進一步知道使用者是不是坐太久、現在看起來是不是很疲勞、有沒有發生跌倒、今天的活動狀況是不是和平常不同,甚至有沒有忘記原本安排的重要事情。
也因為這些想法,整個專案才慢慢從最初的聊天機器人,發展成現在的 VoCare 智慧陪伴系統。
這邊也先說明一下目前的專案狀況。VoCare 並不是從這次鐵人賽的 Day 1 才開始建立,在參加鐵人賽之前,我已經完成了一部分的系統功能規劃、前端介面、後端架構、資料庫相關功能、本地開發環境、Docker 環境,以及部分 AI 功能。
開發的過程中也已經遇到不少問題,有些功能甚至做到一半之後,又重新修改原本的設計。因此這 30 天並不會是單純從建立資料夾、建立專案開始,而是會從 VoCare 最初的想法與需求重新整理,慢慢介紹當初為什麼這樣設計、實際怎麼實作,以及過程中遇到了哪些問題。
等文章的進度追上目前實際的開發進度之後,就會開始同步記錄後續的新功能開發。
簡單來說,這個系列就是用 30 天重新拆解 VoCare 的開發歷程,並繼續把它往前完成。
目前預計會分享的內容包含:
實際內容還是可能隨著專案開發進度稍微調整。
這次參加鐵人賽,對我來說除了挑戰連續 30 天發文之外,也是一個重新整理自己專案的機會。平常在開發時,很容易變成功能可以跑了,就趕快接著做下一個功能,但真的要把整個開發過程整理成文章,就必須重新思考當初為什麼這樣設計、這個功能真的需要 AI 嗎、有沒有更好的做法,以及如果真的交給使用者使用,這個流程到底合不合理。
希望在 30 天結束的時候,能讓 VoCare 變成一套更加完整的系統。