Site icon NYCU陽明交大圖書館-陪你做研究

不會寫程式,AI 能幫你做出專屬研究工具嗎?

不會寫程式,AI 能幫你做出專屬研究工具嗎?

從「能跑就好」到「怎麼知道它真的算對了?」

研究做到一半,突然發現自己需要一個小工具,可能是很多研究生都碰過的情境。你只是想把幾百筆資料轉成固定格式、自動執行一套資料清理程序,或者把分析結果整理成特定圖表,結果找了一圈,現有軟體不是沒有這個功能,就是操作流程和自己的研究需求差了一點。繼續查下去,網路上的答案經常會慢慢收斂成一句話:「這個用 Python 很快。」

問題是:只是做個研究,怎麼還需要學習程式設計師的技能?

生成式 AI 的出現,讓這件事開始有了另一種可能。現在,即使沒有程式背景,也可以直接向 ChatGPT、Claude 或其他AI 工具,說明資料格式、分析需求與預期輸出,協助產生一個小型程式或應用工具。對剛開始嘗試 AI Coding 的人來說,過程甚至可能非常單純:描述需求、讓 AI 寫出第一版,執行後發現基本可用,就先拿來處理眼前的研究工作。

這有點像過往玩RPG遊戲,必須走遍地圖找解謎的關鍵道具,現在突然多了一個「自動尋路」。但研究生需要留心的是- AI 能順利往目的地前進,但不代那就是你原先預期的那一條路徑。

程式沒有消失,只是「誰負責翻譯」變了

從更長的歷史來看,讓人不用處理那麼多底層技術細節,其實一直都是程式設計演進的重要方向。

早期程式設計必須非常貼近硬體;後來出現組合語言、高階程式語言,再到 SQL、low-code 與 no-code,使用者逐漸不必親自描述電腦底層的每一個執行步驟。Meske 等人便把 Vibe Coding 放在這條歷史脈絡中,並用 intent mediation(意圖中介) 解釋這次改變。

傳統程式開發裡,人必須把「我想做什麼」轉換成符合正式語法與邏輯的程式;到了 Vibe Coding,人可以先以自然語言表達較高層次的目標,再由生成式 AI 解讀需求、產生程式,最後仍交由電腦依確定性的規則執行。換句話說,底層運算並沒有突然變成魔法,真正改變的是:誰負責把人的意圖翻譯成電腦可以執行的形式。

因此,Vibe Coding 並不是「程式碼不重要了」,而比較像是研究者未必還需要親自完成每一層實作。Meske 等人也認為,當部分技術實作逐漸交由 AI 處理,人的能力重心可能從語法、框架與具體實作,往問題界定、領域知識、結果驗證與人機協作轉移。

這對研究者真正有意思的地方在於:以前電腦要求我們回答「每一步要怎麼做」,現在 AI 開始允許我們先從「我到底想做到什麼」出發。

四個 Prompt,真的能做出研究分析工具

這件事已經不只是想像。

2026 年,Jesse Meyer 在 Journal of Proteome Research 發表了一個很直接的示範。他利用 AI Coding Agent 建立一套蛋白質體資料分析 App,功能從資料上傳、資料前處理,到統計檢定、PCA、heatmap 與 volcano plot 都包含在內。整套程式約有 1,400 行,開發過程只使用 4 個自然語言 Prompt、不到 10 分鐘,模型使用費不到 2 美元,而且作者沒有另外手動進行程式除錯或重構。

這個案例最值得注意的,其實不是「10 分鐘」或「2 美元」,而是它呈現了一種不同的研究工具開發方式!過去研究者常常必須先打開 SPSS、Excel、R 套件或其他分析工具,看看既有軟體提供哪些功能,再想辦法將自己的研究需求放進這些框架裡。

AI 輔助開發則增加了另一種可能:先決定研究究竟需要什麼,再針對這個需求建立工具。

這個工具未必要發展成正式產品。它可能只是資料格式轉換器、一套特殊的清理流程、一個研究資訊儀表板( dashboard ),或是把某組固定的分析與視覺化程序包成簡單介面。甚至它只服務一篇論文、一個研究計畫,任務完成後就沒有繼續維護的必要。

對研究者而言,這種「研究專屬的小工具」所增加的自由度,可能比「AI 幫我寫了多少行程式」更值得關注。

《迷宮飯》時刻:能跑,不代表算對

不過,開發門檻降低之後,也帶來另一個很容易被忽略的問題。

AI 做出的程式可能有漂亮的介面,檔案可以成功上傳,按下「啟動」之後也沒有出現報錯( Error ),最後甚至還畫出了看起來很專業的統計圖表。當整個流程如此順利時,我們很容易把「程式可以執行」和「研究分析正確」當成同一件事,但兩者其實還存有一定的距離。

就像是身處《迷宮飯》世界的感覺,一道料理看起來像料理、吃下去也沒有立刻倒下,只能證明這東西「可以吃」,但無法確認到底用了什麼材料。同樣,程式順利跑完,只表示電腦成功執行了一套指令;至於那套指令是不是你原本想要的研究方法或是演算法,則需要另外確認,雖然程式設計師總說:「能跑就不要動它!」或是,「這個為什麼能跑?」

Meyer 的研究最值得學習的地方,他並沒有因為 App 能跑,就直接認定結果可信。作者先準備一組答案已知的模擬資料,再用一套可信任的 Python 分析流程作為對照,逐項比較資料處理、差異倍數、p 值與校正後的 q 值。兩邊結果幾乎完全一致,才確認這個 AI 產生的工具確實按照預期完成分析。

因此,使用 AI 製作研究工具時,有兩件事情最好不要混在一起:

沒有 Error,代表程式執行完成;有 Output,代表電腦產生了結果。

但這兩件事情,都不能自動證明研究結果是正確的。

不看懂每一行 Code,可以嗎?

這可能才是沒有程式背景的研究者真正會面對的問題。假設 AI 一次產生上千行程式,而自己本來就不是資訊相關科系,是否真的需要把每一行全部讀懂,才有資格使用這個工具?

答案可能不是簡單的「需要」或「不需要」。

Meske 等人指出,AI 協助開發之後,我們可能不再需要把每一行程式、每一個技術細節都弄懂,才能使用一個工具。但這不代表可以完全放手。研究者仍然需要確認:這個工具做的事情是不是自己原本要的、結果是否合理,以及其中有沒有不能接受的風險。換句話說,重點不是「每一行都看懂」,而是「重要的地方不能不知道」。

Meyer 則提醒另一個更實際的問題:你沒說清楚的地方,AI 會自己補。 例如你只說「幫我分析這份資料」,卻沒有交代缺失值怎麼處理、要不要標準化、判定門檻是多少,AI 為了讓程式跑得下去,勢必會替你選一套預設做法。這些選擇未必錯,但也未必符合你的研究設計。

因此,真正需要建立的可能不是「逐行審查所有程式碼」的能力,而是一套針對研究工具的驗證習慣。至少可以從五件事開始:先確認交給 AI 的研究方法與分析需求是否已經說清楚;檢查 AI 是否自行決定了資料標準化、缺失值處理、判定門檻或其他重要預設值;準備一組已知結果的資料測試工具;再使用成熟軟體、既有套件、人工計算或 reference implementation 進行交叉驗證;最後保留 Prompt、模型版本、程式、參數與資料處理流程,讓結果具有基本的可重現性。

也就是說,你未必要知道 Plotly 底層究竟怎麼把圖畫到瀏覽器上,卻必須知道:圖上的數字究竟是怎麼來的。

再往前一步:連「怎麼做」都可能交給 AI 探索

目前研究前沿甚至已經比「AI 幫我寫一個工具」再往前一步。

2026 年刊登於 Nature 的 ERA(Empirical Research Assistance),又把這件事往前推了一步。研究者只需要先說明問題、提供相關研究概念,並設定「什麼樣的結果算比較好」,系統就會讓 AI 自動產生不同程式、實際執行、比較結果,再繼續修改與嘗試,反覆找出表現更好的方案。

這套方法已經被拿來處理實際研究問題。例如在單細胞資料分析中,ERA 找到 40 種表現超越當時公開基準最佳方法的方案;在 COVID-19 住院人數預測上,也找出 14 種優於 CDC 官方整合預測的方法。

這使 AI 在研究中的角色產生另一種可能。今天我們可能告訴 AI:「請依照這個方法幫我做一個工具。」未來在某些可以明確量化與評估的研究問題中,則可能進一步變成:「這是問題、限制和評分方式,請幫我探索有哪些解法值得測試。」

不過,作者也特別提醒,在公開基準上得到更好的成績,不等於已經完成科學發現。ERA 可以快速嘗試大量方案,找出在既定評分標準下表現更好的方法,但研究者仍然需要解釋方法為什麼有效、背後可能存在什麼因果機制,以及這些結果在理論上代表什麼。「做得更好」和「知道為什麼更好」,仍然是兩件不同的事。

把時間還給「為什麼」

因此,AI Coding 對研究最值得期待的地方,可能不是「以後大家都不用學程式」,而是讓某些原本卡在程式實作門檻後面的研究想法,有機會更快被做出來、測試,再決定值不值得繼續投入。

當 syntax、UI、framework 或大量重複性的程式實作,可以部分交由 AI 處理,研究者需要投入的能力並沒有因此減少,而是重新集中到研究本身:研究問題是否定義清楚、選擇的方法是否合理、AI 在未明說之處替研究者加入了哪些假設、分析結果如何被驗證,以及整個過程能否被他人重現。

這或許才是 AI Coding 對研究方法真正有意思的改變。它降低的是「把想法做成工具」的技術門檻,卻同時把研究者原本就應該負責的判斷凸顯得更加清楚。

當 AI 越來越會回答「怎麼做」,研究者真正不能外包的,也許正是「為什麼這樣做」,以及「怎麼知道它真的做對了」。

參考資料

Aygün, E., Belyaeva, A., Comanici, G., Coram, M., Cui, H., Garrison, J., et al. (2026). An AI system to help scientists write expert-level empirical software. Nature, 654, 909–916. https://doi.org/10.1038/s41586-026-10658-6

Meske, C., Hermanns, T., von der Weiden, E., Loser, K.-U., & Berger, T. (2025). Vibe coding as a reconfiguration of intent mediation in software development: Definition, implications, and research agenda. IEEE Access, 13, 213242–213259. https://doi.org/10.1109/ACCESS.2025.3645466

Meyer, J. G. (2026). Vibe coding omics data analysis applications. Journal of Proteome Research, 25(2), 1191–1197. https://doi.org/10.1021/acs.jproteome.5c00984

推廣組 柯文仁/本文搭配 AI 工具進行寫作輔助

Exit mobile version