MIT李巨教授組發布「賈維斯助手CRESt」:實驗科學家秒變鋼鐵俠,全自動化實驗+主動學習
人工智能以及自主實驗目前主要由Python等語言編寫,但并非所有實驗科學工作者都擅長這類編程語言,在真實世界實驗中的影響力還是比較有限。
不過,基于OpenAI 最近發布的ChatGPT API函數調用功能[1],現有的技術已經足夠支撐打造一個曾經只能在鋼鐵俠電影中看到的賈維斯智能助手。
圖片
近日,MIT李巨教授組開發了一個實驗科學家的人工智能助手CRESt(Copilot for Real-world Experimental Scientist),其后端是用ChatGPT作為核心串聯起:
1. 真實世界的機械臂進行自動化實驗
2. 本地或網上專業的材料數據庫
3. 優化材料配方的主動學習算法
視頻地址:https://youtu.be/POPPVtGueb0
目前CRESt的前端已經實現了voice-in voice-out,AI生成語音,以及多平臺無縫切換。
有了CRESt之后,即使沒有任何代碼經驗,科研工作者都能通過與其口頭對話來利用自動化實驗平臺幫自己做實驗。
圖片
論文鏈接:https://doi.org/10.26434/chemrxiv-2023-tnz1x
項目介紹
「CRESt 操作系統」主要由四部分組成:用戶界面,ChatGPT后端,主動學習和末端執行器。
其中用戶界面基于一個支持語音轉文本和文本轉語音交互的Github項目chatgpt-voice[2]。其便捷的網絡框架使得用戶可以在離開實驗室后在他們的手機上無縫地繼續對話。
并且后端是獨立運行的,即使前端改變也不會受到影響。
此外,作者還將可以實時生成非常逼真的人聲的ElevenLabs AI語音集成到了前端中[3]
從前端收到的文本消息隨后將被傳輸到建立在CallingGPT基礎之上的ChatGPT后端。
CallingGPT是另一個Github項目,其能將Google docstring樣式記錄的Python函數轉換成ChatGPT API可以識別的JSON格式,以供在ChatGPT認為需要時調用。
此外,它在ChatGPT和本地Python函數庫之間閉合了一個反饋回路:ChatGPT所建議調用的函數將立即在本地執行,并且其返回值將被發送回ChatGPT。
除此之外,作者還在CRESt中嵌入了主動學習算法,得益于在小數據集上不錯的性能,主動學習被認為是最適合實驗科學的機器學習算法之一[5-7]。
在涉及真實物理世界實驗的機器學習項目中,數據采集往往是最大的挑戰。
與虛擬世界不同,真實物理世界中的每一個數據點可能都需要花費大量的時間和金錢。
一般來說,1000個點的數據集就已經是相當不錯的了,在這樣的條件下,如何對設計空間進行高效取樣變得至關重要。
主動學習的主要功能是交互式地建議在下一批實驗中測試的參數組合,比如在視頻中展示的合金配方推薦。
在CRESt中內嵌的是由Meta團隊開發的基于BoTorch的Ax平臺[8, 9],Ax有著優秀的SQL存儲功能:即使GPT后端重置,也可以通過調取數據庫中存儲的記錄來繼續之前的主動學習。
末端執行器是一系列通過HTTP請求調用的子程序。其中一些可能涉及信息檢索任務(本地或公共數據庫查詢,如Materials Project[10]),而其他一些可能會對物理世界產生真實的影響,就像在視頻中展示的那樣(液體處理機器人、激光切割機、泵、氣閥、機械臂等),主要是用于做實驗的一些自動化的硬件。
這些設備的自動化主要由PyAutoGUI實現,一個可以模擬人類鼠標和鍵盤動作的Python庫[11]。
然而,作者預期這個冗余步驟最終將失去其必要性,因為在不久的將來大多數實驗室設備都應該會在人類交互界面之外提供一個專用的AI通信接口。
展望
大語言模型可以為科學和工程領域帶來什么?
這是作者團隊自ChatGPT問世以來一直在思考的問題。毫無疑問,大語言模型已經展示了其作為文獻整理員的超凡潛力,我們需要做的只是在預訓練過程中向其提供更多的文獻全文。
除此之外還有哪些可能性呢?除了我們以CRESt形式開發的實驗員助手的角色,我們設想大語言模型至少還會在以下三個維度發揮革命性的作用:
儀器技術指導員
目前,研究人員必須理解他們希望利用的任何技術的理論基礎,以及個別儀器的具體操作(有時是基于經驗的“技巧”、“手藝”),而這些操作可能會因制造商而異。
后者往往意味著不可忽視的時間成本,例如一個公共儀器的一系列培訓課程,或者閱讀一個組內儀器的200頁說明書,以及上百小時的實操練習。
但我們冷靜下來思考一下,這些步驟真的是必要的嗎?
我們預見,在不久的將來,研究人員只需要清楚地用自然語言表達他們的需求,大語言模型就能夠將這些需求翻譯成最佳的參數設置(其實這就是現在一些儀器專家正在做的事情,了解客戶的需求,并轉化成儀器參數設定/操作)。
當必要時,大語言模型也可以將說明書中的對應部分提供給用戶以便用戶了解詳情。
從技術上來說,儀器制造商只需要適當地微調一個大語言基礎模型,讓其學習公司內高級技術員所掌握的儀器操作經驗即可,這件事從今天就能開始做。
流水線診斷師
結合了多傳感器的機器人或無人機后,大語言模型可以幫助確定實驗可重復性不佳的根本原因。
在未來,最理想的實驗范式是記錄每個樣品整個生命周期中的所有元數據。當出現無法解釋的現象時,所有相關的日志數據都將被輸入到多模態大語言模型進行分析。
利用其優秀的假說生成能力,大語言模型可以提出一系列潛在的原因,以供人類專家進一步調查他們認為最有可能的幾個假說。
這種方法也可以應用于工業流水線——如果注意到生產產量/良品率大幅下降,大語言模型可以通過對比流水線歷史記錄來識別「罪魁禍首」。
只有需要復雜的現實世界操作時,人類工程師才需要介入,除此以外大語言模型可以直接對大概率出了問題的子環節進行參數微調。
實現這個角色的前提條件是大語言模型可以處理大量的圖像(視頻),且其性能取決于多模態信息(樣品元數據,視覺信息,聲音信息等)的對齊程度。
機理猜想者
我們預期大語言模型十分擅長將已建立的科學原理用于解釋新的實驗現象。科學機理探索階段的很大一部分工作都是模式匹配型工作(例如,從光譜中提取微小的特征并與標準數據庫進行比較),這些都在大語言模型的能力范圍內。
在不久的將來,這個工作流將會變的非常簡單直接,我們只需要問大語言模型:我們制備并測試了一個樣品,它的成分是xxx,處理工藝和參數是xxx,其性能是xxx。
這是所有的表征結果(掃描電子顯微鏡,X射線衍射等),請給出10個理由詳細表述為什么這個樣品的性能這么好。
人類研究者可以從大語言模型生成的一系列敘述中篩選出最合理的解釋,并以此為基礎完善整個機理解釋。
然而,這個任務是所有我們預想的大語言模型的角色中最具有挑戰性的,其實現的前提條件包括:
1. 圖像輸入和與科學術語的對齊,
2. 從專業物理科學數據庫中檢索特定信息的能力,
3. 大語言模型在科學期刊正文和附錄的預訓練,
4. 大語言模型有能力調用一系列前沿的子領域的機器學習模型或是仿真模型。
總結
CRESt只是大語言模型協助科學家的一個起點,我們相信大語言模型的真正潛力在于其假說生成能力[12]。
人類擁有相對有限的知識庫,但出色的因果推理能力使得我們能夠給出雖然數量不多但一針見血的假說。
相比之下,人工智能有著廣泛的知識庫以及從大數據中提取統計信息的能力[13],因此它們可以在短時間內生成大量的,沒那么精準的假說。
因此,這不是一個人工智能與人類競爭的故事,而是人工智能補足人類短板的故事。
在「AI suggests, humans select」的合作模式下,雙方都能發揮出各自的優勢,「各盡其才」。