/ 5 分鐘 / -- views

LinkPet:口袋裡的 AR 陪伴夥伴

整理 LinkPet 這個 AR AI 陪伴 App 比賽專案的想法、功能規劃、技術方向,以及初審沒有通過後留下的團隊開發經驗。

LinkPet 是我們為 2026 行動應用創新賽準備的專案。

它的核心想法,是做一個可以陪伴使用者的 AI 虛擬角色。不是只把聊天機器人包成可愛外皮,而是希望透過 2D 互動、AR 空間呈現、語音對話與持續記憶,讓角色更像是日常生活中可以自然出現的陪伴夥伴。

雖然這個專案最後初審沒有通過,也沒有繼續完整實作,但它對我來說仍然是一段很扎實的專案練習。

LinkPet 不是一個完成品,但它讓我更完整地走過一次比賽型專案從想法、定位、功能設計到技術規劃的流程。

專案起點:AI 不一定只能提高生產力

一開始會想做 LinkPet,是因為我們觀察到現在很多 AI 工具都偏向問答、查資料、寫文字、整理資訊,或是幫使用者提高工作效率。

這些方向都很實用,但我們也開始想另一件事:

如果 AI 不只是工具,而是一個比較沒有壓力的陪伴對象,會不會也有價值?

尤其是學生在課業、生活、人際關係或壓力比較大的時候,有時候不一定需要很正式的心理諮商,也不一定想馬上跟身邊的人講很深的事情。

有些時候,只是想找一個可以簡單說話、沒有社交壓力、也不會每次都像第一次見面的對象。

所以 LinkPet 想處理的不是醫療或心理治療問題,而是更日常、更低門檻的情緒陪伴。

核心概念:不是聊天,而是陪伴

如果只是做一個聊天 App,其實很容易變成「開一個畫面,打一段文字,等 AI 回答」。

但我們想像中的 LinkPet,比較像是一個平常就存在於手機或平板裡的小夥伴。

它可以用 2D 模式快速互動,也可以在需要一點沉浸感的時候切到 AR 模式,讓角色出現在桌面、房間或生活空間中。

這裡最重要的不是技術炫技,而是互動感。

AR 的價值不只是把角色放到真實空間,而是讓使用者感覺這個角色真的「在這裡」。

如果再搭配語音對話、觸碰反應、餵食互動和角色記憶,整個體驗就不只是問答,而是比較接近日常陪伴。

功能規劃:把陪伴感拆成幾個層次

當時我們把 LinkPet 的功能拆成幾個主要方向。

  • 2D / AR 雙模式陪伴
  • 語音與文字互動
  • 首次使用的個人化設定
  • 使用者同意後的持續記憶
  • 觸碰、撫摸、拖曳與餵食互動
  • 本機記憶的回顧、修改與刪除

2D 模式適合快速互動,不需要每次都進入很重的沉浸式場景。

AR 模式則負責讓角色和現實空間產生連結,例如放在桌面上、靠近使用者,或是在特定位置做出一些簡單反應。

語音與文字互動,是為了讓使用者不用每次都打字。尤其是陪伴型產品,如果每次互動都像在填表單,情緒感會很快消失。

個人化設定和記憶機制則是整個專案最關鍵的部分。

我們希望角色可以記得使用者的稱呼、互動偏好、近期狀態或重要事件,讓下次互動不會像重新認識一樣。

陪伴感很大一部分來自延續性。角色如果完全不記得過去,互動再自然也很難建立關係感。

不過記憶功能也不能亂做。使用者應該可以知道哪些內容被保存,也應該能回顧、修改或刪除本機記憶。

這件事很重要,因為陪伴型產品碰到的是比較私人的內容,不能只站在功能方便的角度設計。

技術方向:AR、端側 AI、本機記憶

技術上,我們原本規劃以 Apple 平台原生開發為主。

主要方向包含 iOS / iPadOS、AR 互動、端側 AI、語音互動,以及本機資料儲存。

如果真的進入實作,可能會用 SwiftUI 負責 App 介面與流程,用 ARKit / RealityKit 處理空間偵測與角色放置,用 Speech Framework 做語音輸入,再用 AVSpeechSynthesizer 讓角色可以用語音回應。

角色對話和語氣控制,原本想嘗試端側模型,例如 Gemma。使用者偏好、互動紀錄和角色記憶,則可以用 SwiftData 儲存在本機。

這些技術聽起來很多,但整理後其實可以收斂成四個重點:

  • AR 讓角色進入真實空間
  • 端側 AI 讓互動更即時、也更重視隱私
  • 本機記憶讓陪伴有延續性
  • 語音互動降低使用門檻
後來回頭看,這個專案最難的地方不是列出技術,而是把這些技術收斂成一個真的能被使用者理解的體驗。

比賽結果:沒有進入初審

這個專案最後沒有通過初審。

說實話,看到結果的時候是有點失落的。因為我們其實投入了不少時間在企劃、功能設計、文件整理和討論上。

但這次經驗也讓我更清楚看到,比賽專案不是只有「想法有趣」就夠了。

它還需要很清楚地說明:

  • 使用者問題是什麼
  • 為什麼這個方案適合解決
  • 核心體驗要怎麼落地
  • 技術風險在哪裡
  • 團隊有沒有能力做出可驗證的成果

這些問題如果沒有回答清楚,功能再多也可能顯得分散。

一個比賽專案要打動人,不只是要說它可以做什麼,而是要讓人相信它做得出來,而且真的有人需要。

團隊合作:不只是把程式寫出來

這次比較特別的是,LinkPet 不是我一個人的 side project,而是雙人合作的比賽專案。

所以過程中除了想功能,也需要討論定位、拆分工作、整理文件、同步進度和處理版本控制。

以前一個人做專案時,很多事情可以靠自己腦袋裡的默契撐過去。想到什麼就改,覺得哪裡怪就直接調。

但多人合作不一樣。

想法要講清楚,文件要整理,決策要留下脈絡,Git branch、merge、檔案命名和工作拆分也都會影響效率。

這些事情看起來不像功能,但它們其實就是軟體工程的一部分。

團隊開發不是兩個人各寫一半就好,而是要讓彼此知道現在在做什麼、為什麼這樣做,以及下一步要往哪裡走。

結語:未完成,但不是白做

LinkPet 最後沒有走到完整開發階段。

但它讓我更理解一個專案在進入實作前,其實有很多事情要先想清楚。

題目定位、使用者情境、核心功能、技術可行性、資料與記憶的處理方式,還有團隊如何合作,這些都不是寫程式前的雜事,而是專案本身的一部分。

對我來說,LinkPet 不只是一次沒通過初審的比賽作品。

它更像是一段提醒:下次要做類似題目時,不能只把功能列得很完整,也要更早做出可以驗證的原型,讓想法有機會被看見。

未完成不代表沒有價值。只要能從裡面整理出下一次會做得更好的方法,它就不是白走一趟。

點下去看看會發生什麼事 →

留言 / 想法

有疑問、建議或不同看法?歡迎在下方留言(需要 GitHub 帳號)。