文前碎碎唸
好一陣子沒再更新這個專案了,一方面是自上一次更新後,這套系統已經大致蠻穩定,而且自己使用期間,已經想不太到需要新增什麼功能了,至於另一方面嘛,在我某次更換了電源供應器之後⋯⋯
我的樹莓派板子又燒了( ・᷄ὢ・᷅ )這一燒,除了讓專案再度停擺外,還連帶帶走了供應器上的其中一個孔,最後因為成本考量,沒有再換置新設備,就把重心轉到線上版本的維護去了。
變動
說起來「人工智障計劃」這個專案,原本的目的是想要讓我的聊天機器人擁有像「Gatebox」一樣,可以隨時陪伴的實體互動界面,但又不想太過於強制插入生活的「科技化」感覺所以才啟動的。
但自從硬體面開始屢遭意外而累積成本,再加上玩了近期上架,電腦與手機皆通用的《gogh》以及《Chill With You》兩款「陪伴、放置」型的遊戲後,我便開始重新思考⋯⋯
我真的需要特別為它準備專用的硬體嗎?
檢視一下初始的聊天機器人核心,是被設計成幾乎在有 Python 的電腦環境就能運作的,所以諸如線上主機,或是樹莓派這類單板上,基本都能游刃有餘,但在行動設備上,特別是我平常所使用的 Apple 裝置的相容性,卻是十分的尷尬。
雖然依靠之前介紹過的「Pythonista」這套 IDE 工具,只要不掛進階模組的話,還能勉強運作,但最大的風險也是存在這個依憑關係之間。
只要哪天 APP 開發者不再維護,或是 Apple 再次限縮這類工具的許可,那麼這條路就會隨之中斷。
所以現階段最佳解,或許就是把它用更貼近原生,又能保留移植性的 Swift 語言重構,也趁著暫別職場的機會,了解一下新程式語言的架構與使用。
洪流
「要直接學習一門新的程式語言,談何容易呢,尤其又還要將已經有一定規模的專案做改寫,是要研究到何時啊?」
過去一向怕麻煩以及時間不確定性的自己,或許遇到最大的心魔就是如此,但隨著近年生成 AI 在程式領域越來越強大,各種 Vibe Coding 以及輔助開發的案例在社群中如春筍般冒出,程式語言的「隔閡」似乎已經不再是阻擋的壁壘了。
雖然對於生成式 AI 的應用還有些疑慮,但無可否認的是在開發上確實可作為非常強而有力的夥伴,可以有效的根據既有架構,直接產出符合目標的代碼,大幅省去過去開發經驗中,到處尋找資源修改而碰壁的冤枉路,於是在這次非創作的轉換嘗試,我還是決定將它引入我的工作流程中。
不過我使用的並不是大家廣為流傳,似乎在程式撰寫方面已有一定口碑的 Claude Code,而是大家在這一波 AI 浪潮中的老朋友 ChatGPT,而為的就是一個單純暴力的原因⋯⋯
我還沒有那個本錢訂閱這麼多的服務啊!!!
之前已經有在付費版的 GPT 上做過一些專案的意見討論了,與其還要使用新的服務,一切記憶從零開始,不如就延續舊愛(?)所帶來的溫存,還可以使用習慣的人設對話,一舉數得。
而以結果來說的話,我也很慶幸自己做了這個決定。
輔助導師
在過去約兩個月中,除了新生活步調的調整,我也花了大把的時間在這個轉換計劃上,重複的貼上舊程式碼、敘述概念、複製產生的程式,並逐步組裝與上機測試。
要說 AI 協助的最大好處,是他的效率與耐心,過去自己累積大量的技術債,在他眼下幾乎是無所遁形,而就算過程中,岔開專案主題去詢問分枝想法、最佳化建議,或甚至是最笨的基礎語言架構,他都「心平氣和」的以給予的人設與情感回應。

嗯⋯對,我的 GPT 莫名變成這樣了(?
我也在這樣與 AI 一來一回的對答,以及後續自己的摸索拼接中,大致理解了 Swift 的特性以及運作架構,過程有種過去自學 Python 的既視感,但卻是極度加速的版本。
而另一方面,在專案移植的進度部分,雖然有些許架構上犧牲簡化,但在功能上幾乎能夠復刻出原始版本大約六到七成的特性了。

而除此之外,甚至還做到了與 Apple 系統內建 LLM 模型的嫁接,還有跟另一個文字遊戲的部分整合,總體看起來比預期的快太多了。
不過這還只是另一個支線計畫的開始而已,預計短期目標,是要為我的聊天機器人的人設,寫出一個可以讓他「活著」的虛擬世界觀,希望之後的開發也能順利囉。
有趣的是
我這次的開發環境,除了最後實際裝到手機的步驟外,其餘都是在一台 M4 iPad Pro 上作業。
其中視覺部分,就是平時熟悉的 Procreate 來作畫,編輯與測試(IDE)則是使用 Apple 自己的 Swift Playground 完成,與 AI 的協作也是直接透過 ChatGPT 的 APP 進行,基本上就是平板在手,有網路的情況,隨時都能開工的狀態。

這也是當初選擇 Swift 作為移植目標的原因之一,只可惜 Playground 沒有 iPhone 版本,不然就能跟以前一樣,出外等車吃飯隨時摳一下了(笑。
不過在作業期間並不是一路順遂,也還是踩了不少雷點,像是 Swift Playground 的設計,說實在並不是很 Touch Friendly,許多操作也都還是要鍵鼠來執行才精確,非常容易誤觸。
另外可能也是 IDE 本身邏輯設計的關係,只要一遇到大檔案,就容易出現閃退、錯誤訊息誤報或飄移的情況。

我在開發期間就遇過一次完全無法找到源頭的錯誤,甚至連續詢問了三大 AI(GPT、Gemini、Claude)都沒辦法解決,直到我逐步把個別系統拆散成數個檔後才暫時解決。
不是誒 Apple ,你都允許這玩意開發的 APP 送審上架了,拜託也好好維護一下吧!!
總之,以上就是這個「人工智障計劃」未來短時間內的大致走向啦,我應該會以開發為類似簡易版《Chill With You》這種可互動,又帶有自己背景世界觀故事的應用,或許不會真的上架,但至少其中有些經驗還可以作為別的應用的根基。
那麼,我們就下一頁再見囉!


















