全新TextGrad框架:用GPT-4o作引擎,自動優(yōu)化端到端任務(wù)
該文章的作者團(tuán)隊來自于斯坦福大學(xué),共同第一作者團(tuán)隊Mert Yuksekgonul,F(xiàn)ederico Bianchi, Joseph Boen, Sheng Liu, Zhi Huang
Mert Yuksekgonul,斯坦福大學(xué)博士生,師從James Zou 和 Carlos Guestrin教授。研究方向包括 AI系統(tǒng)自我優(yōu)化以及其安全性和可靠性。
Federico Bianchi,Xyla AI 工程師, 斯坦福大學(xué)博后,師從 Dan Jurafsky 和 James Zou教授。研究方向為機(jī)器學(xué)習(xí)和大語言模型的開發(fā)。
Joseph Boen,斯坦福大學(xué)博士生,師從James Zou,研究方向為AI在科學(xué)中的應(yīng)用。
劉晟,美國斯坦福大學(xué)博后,師從 James Zou和 Lei Xing 教授,博士畢業(yè)于紐約大學(xué)數(shù)據(jù)科學(xué)和人工智能。研究方向包括深度學(xué)習(xí)的安全性和可靠性,多模態(tài)大語言模型, 以及AI在生物醫(yī)療方向應(yīng)用。
黃治,現(xiàn)賓夕法尼亞大學(xué)教授, 斯坦福大學(xué)博后。博士畢業(yè)于普渡大學(xué)。研究方向為生物醫(yī)學(xué)工程,AI在病理學(xué)的應(yīng)用。
TextGrad 團(tuán)隊
用文本做梯度下降?!最近,來自斯坦福大學(xué)的研究者,推出了全新的 TextGrad 框架, 來高效協(xié)調(diào)和優(yōu)化由大語言模型 (LLM) 等組件構(gòu)成的 AI 系統(tǒng),自動優(yōu)化端到端任務(wù)性能。
目前,用 GPT-4o 作為引擎的 TextGrad 優(yōu)化后的 AI 系統(tǒng)能實現(xiàn):
- LeetCode-Hard 最好的結(jié)果
- GPQA SoTA
- 發(fā)現(xiàn)新的分子同時兼顧藥效和毒性等多個優(yōu)化目標(biāo)
- 設(shè)計出超過人工的癌癥放療計劃
- TextGrad website: http://www.textgrad.com/
- TextGrad paper: https://arxiv.org/abs/2406.07496
- TextGrad Github:https://github.com/zou-group/textgrad
生成式人工智能正處于從單一模型訓(xùn)練向復(fù)雜系統(tǒng)優(yōu)化的范式轉(zhuǎn)變中,開發(fā)合成 AI 系統(tǒng)的原則化自動優(yōu)化方法成為當(dāng)下最重要的新挑戰(zhàn)之一。如何高效協(xié)調(diào)優(yōu)化大語言模型 (LLM) 等 AI 組件,自動優(yōu)化端到端任務(wù)性能,成為當(dāng)前最緊迫的挑戰(zhàn)之一。要說 AI 界有多卷,還得看斯坦福大學(xué)。這兩天,斯坦福大學(xué)的研究者們又放大招了,推出了全新的 TextGrad 框架,為這一難題提供了一種全新的解決方案。借鑒了同是斯坦福發(fā)布的 DSPy,融合了 PyTorch 的強(qiáng)大梯度反向傳播功能,實現(xiàn)自動優(yōu)化復(fù)雜 AI 系統(tǒng)。本文將深入剖析 TextGrad 的核心理念和優(yōu)化機(jī)制,探討它的廣闊應(yīng)用前景,展望語言驅(qū)動優(yōu)化的未來圖景。
核心思想
TextGrad 將 LLM 應(yīng)用視為一個計算圖 (Computation Graph),以自然語言為媒介實現(xiàn)不同組件之間的 "梯度" 傳遞。通過從語言模型的輸出中反向傳播文本反饋到所有可能的早期組件,來優(yōu)化各種系統(tǒng)中的各種變量。在 TextGrad 中,一切都是文本,這意味著我們使用語言模型來 1)評估輸出,2)批評輸出,3)更新輸入。這一過程有點類似于 PyTorch 的反向傳播,只不過傳播的不再是數(shù)值梯度,而是文本形式的反饋。
這種統(tǒng)一的語言交互界面賦予了 TextGrad 極強(qiáng)的普適性,它將 prompt、question、output 等都視為 variable,不要求其可微,具有超強(qiáng)的兼容性。TextGrad 能和任意支持自然語言 I/O 的 LLM 或者其它 API 無縫協(xié)作,也不要求計算圖中的其他函數(shù)可微。這使得它非常適合集成 retrieval、tool calling 等 plug-and-play 能力,構(gòu)建靈活多變的復(fù)合 AI pipeline。TextGrad 也不需要手工設(shè)計 prompt,自動搜索最憂的任務(wù)描述直接參與優(yōu)化。這讓開發(fā)者從 prompt engineering 中解放出來,有望自動找到更棒的 in-context learning 范式。
TextGrad 能做什么?
1. 提示(prompt)工程 通過 TextGrad 優(yōu)化的 prompt,能將 GPT-3.5-turbor 的 QA 準(zhǔn)確率從 78% 提升到了 92%,而且只需進(jìn)行少量幾次的優(yōu)化迭代。如果你想復(fù)現(xiàn)這個成果并進(jìn)一步探索 TextGrad,TextGrad 團(tuán)隊已經(jīng)為你準(zhǔn)備好了一個簡單的教程。
TextGrad 能被非常簡單方便地應(yīng)用到 prompt engineer(提示工程)上。
2. 優(yōu)化模型輸出 除了更新模型的 prompt,模型的回答(response)以及文字表示的輸出,也能夠得到 TextGrad 的優(yōu)化。上圖, TextGrad 優(yōu)化了 LLM 生成的 LeetCode 問題的代碼。
還有更多 AI for science 的應(yīng)用!
藥物探索(Drug Discovery)
使用 TextGrad,我們可以優(yōu)化化學(xué)結(jié)構(gòu)的兩個關(guān)鍵屬性:藥物相似性(即藥物在體內(nèi)吸收的難易程度)和結(jié)合親和力(即藥物與靶蛋白結(jié)合的緊密程度)。藥物相似性通過 QED 評分來衡量,范圍是 0 到 1,1 表示最符合藥物特性;結(jié)合親和力通過 Vina 評分來衡量,評分越負(fù)越好。
左圖:在 TextGrad 優(yōu)化 10 次迭代前后的分子藥物相似性和結(jié)合親和力分布,與針對相同靶蛋白的臨床批準(zhǔn)藥物進(jìn)行比較。右圖:TextGrad 優(yōu)化 10 次迭代的示例軌跡,比較臨床批準(zhǔn)藥物的屬性。
腫瘤放療治療計劃(Radiotherapy Treatment Planning)
TextGrad 也可以用來優(yōu)化放射治療計劃,該計劃確定放射治療所需的劑量并精確定位需要治療的部位。特別是,治療計劃的目標(biāo)是將規(guī)定的輻射劑量傳遞到腫瘤,同時保護(hù)關(guān)鍵的正常組織免受不安全劑量的影響。醫(yī)生通常通過不斷試錯,反復(fù)調(diào)整優(yōu)化治療計劃,直到計劃符合臨床要求。這使得整個過程效率低下、耗時且成本高昂。TextGrad 則自動向 AI 主導(dǎo)的規(guī)劃系統(tǒng)提供梯度,優(yōu)化放射治療計劃,自動權(quán)衡腫瘤和附近健康組織。
TextGrad 用語言打通了不同認(rèn)知模塊之間的屏障。它讓 LLM 參與到了自己的迭代優(yōu)化中,通過內(nèi)省、評判、創(chuàng)造等 high-level 的認(rèn)知能力實現(xiàn)持續(xù)進(jìn)化。從本質(zhì)上看,TextGrad 的意義遠(yuǎn)不止于優(yōu)化 pipeline 的性能,它向我們展示了一種通過語言實現(xiàn) AI 自我認(rèn)知、自我修正的可能性。這條 “Language-Driven Optimization” 的道路,或許也是目前很多 “幻覺問題” 的一劑良藥。TextGrad 已經(jīng)被應(yīng)用到解決很多科學(xué)和醫(yī)學(xué)方面的問題!更多的應(yīng)用等著你來探索和發(fā)現(xiàn)!