全新TextGrad框架:用GPT-4o作引擎,自动优化端到端任务

AIxiv专栏是机器之心发布学术、技术内容的栏目。过去数年,机器之心AIxiv专栏接收报道了2000多篇内容,覆盖全球各大高校与企业的顶级实验室,有效促进了学术交流与传播。如果您有优秀的工作想要分享,欢迎投稿或者联系报道。投稿邮箱:liyazhou@jiqizhixin.comzhaoyunfeng@jiqizhixin.com

该文章的作者团队来自于斯坦福大学,共同第一作者团队 Mert Yuksekgonul,Federico Bianchi, Joseph Boen, Sheng Liu, Zhi Huang

Mert Yuksekgonul,斯坦福大学博士生,师从James Zou 和 Carlos Guestrin教授。研究方向包括 AI系统自我优化以及其安全性和可靠性。

Federico Bianchi,Xyla AI 工程师, 斯坦福大学博后,师从 Dan Jurafsky 和 James Zou教授。研究方向为机器学习和大语言模型的开发。

Joseph Boen,斯坦福大学博士生,师从James Zou,研究方向为AI在科学中的应用。

刘晟,美国斯坦福大学博后,师从 James Zou和 Lei Xing 教授,博士毕业于纽约大学数据科学和人工智能。研究方向包括深度学习的安全性和可靠性,多模态大语言模型, 以及AI在生物医疗方向应用。

黄治,现宾夕法尼亚大学教授, 斯坦福大学博后。博士毕业于普渡大学。研究方向为生物医学工程,AI在病理学的应用。

TextGrad 团队

用文本做梯度下降?!最近,来自斯坦福大学的研究者,推出了全新的 TextGrad 框架, 来高效协调和优化由大语言模型 (LLM) 等组件构成的 AI 系统,自动优化端到端任务性能。

目前,用 GPT-4o 作为引擎的 TextGrad 优化后的 AI 系统能实现:

  • LeetCode-Hard 最好的结果

  • GPQA SoTA

  • 发现新的分子同时兼顾药效和毒性等多个优化目标

  • 设计出超过人工的癌症放疗计划

生成式人工智能正处于从单一模型训练向复杂系统优化的范式转变中,开发合成 AI 系统的原则化自动优化方法成为当下最重要的新挑战之一。如何高效协调优化大语言模型 (LLM) 等 AI 组件,自动优化端到端任务性能,成为当前最紧迫的挑战之一。要说 AI 界有多卷,还得看斯坦福大学。这两天,斯坦福大学的研究者们又放大招了,推出了全新的 TextGrad 框架,为这一难题提供了一种全新的解决方案。借鉴了同是斯坦福发布的 DSPy,融合了 PyTorch 的强大梯度反向传播功能,实现自动优化复杂 AI 系统。本文将深入剖析 TextGrad 的核心理念和优化机制,探讨它的广阔应用前景,展望语言驱动优化的未来图景。

核心思想

TextGrad 将 LLM 应用视为一个计算图 (Computation Graph),以自然语言为媒介实现不同组件之间的 "梯度" 传递。通过从语言模型的输出中反向传播文本反馈到所有可能的早期组件,来优化各种系统中的各种变量。在 TextGrad 中,一切都是文本,这意味着我们使用语言模型来 1)评估输出,2)批评输出,3)更新输入。这一过程有点类似于 PyTorch 的反向传播,只不过传播的不再是数值梯度,而是文本形式的反馈。

这种统一的语言交互界面赋予了 TextGrad 极强的普适性,它将 prompt、question、output 等都视为 variable,不要求其可微,具有超强的兼容性。TextGrad 能和任意支持自然语言 I/O 的 LLM 或者其它 API 无缝协作,也不要求计算图中的其他函数可微。这使得它非常适合集成 retrieval、tool calling 等 plug-and-play 能力,构建灵活多变的复合 AI pipeline。TextGrad 也不需要手工设计 prompt,自动搜索最忧的任务描述直接参与优化。这让开发者从 prompt engineering 中解放出来,有望自动找到更棒的 in-context learning 范式。

TextGrad 能做什么?

  1. 提示(prompt)工程 通过 TextGrad 优化的 prompt,能将 GPT-3.5-turbor 的 QA 准确率从 78% 提升到了 92%,而且只需进行少量几次的优化迭代。如果你想复现这个成果并进一步探索 TextGrad,TextGrad 团队已经为你准备好了一个简单的教程。

TextGrad 能被非常简单方便地应用到 prompt engineer(提示工程)上。

  1. 优化模型输出 除了更新模型的 prompt,模型的回答(response)以及文字表示的输出,也能够得到 TextGrad 的优化。上图, TextGrad 优化了 LLM 生成的 LeetCode 问题的代码。

还有更多 AI for science 的应用!

药物探索(Drug Discovery)

使用 TextGrad,我们可以优化化学结构的两个关键属性:药物相似性(即药物在体内吸收的难易程度)和结合亲和力(即药物与靶蛋白结合的紧密程度)。药物相似性通过 QED 评分来衡量,范围是 0 到 1,1 表示最符合药物特性;结合亲和力通过 Vina 评分来衡量,评分越负越好。

左图:在 TextGrad 优化 10 次迭代前后的分子药物相似性和结合亲和力分布,与针对相同靶蛋白的临床批准药物进行比较。右图:TextGrad 优化 10 次迭代的示例轨迹,比较临床批准药物的属性。

肿瘤放疗治疗计划(Radiotherapy Treatment Planning)

TextGrad 也可以用来优化放射治疗计划,该计划确定放射治疗所需的剂量并精确定位需要治疗的部位。特别是,治疗计划的目标是将规定的辐射剂量传递到肿瘤,同时保护关键的正常组织免受不安全剂量的影响。医生通常通过不断试错,反复调整优化治疗计划,直到计划符合临床要求。这使得整个过程效率低下、耗时且成本高昂。TextGrad 则自动向 AI 主导的规划系统提供梯度,优化放射治疗计划,自动权衡肿瘤和附近健康组织。

TextGrad 用语言打通了不同认知模块之间的屏障。它让 LLM 参与到了自己的迭代优化中,通过内省、评判、创造等 high-level 的认知能力实现持续进化。从本质上看,TextGrad 的意义远不止于优化 pipeline 的性能,它向我们展示了一种通过语言实现 AI 自我认知、自我修正的可能性。这条 "Language-Driven Optimization" 的道路,或许也是目前很多 "幻觉问题" 的一剂良药。TextGrad 已经被应用到解决很多科学和医学方面的问题!更多的应用等着你来探索和发现!

相关推荐
book_bbyuan3 分钟前
利用GPT 将 matlab 内置 bwlookup 函数转C
gpt
丘山子10 小时前
牙牙学语:使用 PyTorch 从零开始构建和训练 GPT-2
人工智能·gpt·nlp
RuizhiHe12 小时前
从零开始实现大语言模型(二):文本数据处理
人工智能·gpt·语言模型·chatgpt·gpt-3·language model
李昂的数字之旅14 小时前
大语言模型测评工具-ChatHub和ChatAll
人工智能·gpt·语言模型
RuizhiHe1 天前
从零开始实现大语言模型(三):Token Embedding与位置编码
人工智能·gpt·语言模型·gpt-3·embedding·language model
Maynor9962 天前
如何利用GPT-4o生成有趣的梗图
gpt·音视频
MavenTalk2 天前
GPT-4o还没完全开放,Moshi就提前开源了
gpt·chatgpt·语音助手·gpt-4o
GodGump3 天前
DB-GPT 文档切分报错
数据库·gpt
三花AI3 天前
对标 GPT-4o 的开源实时语音多模态模型:Moshi
人工智能·gpt·语言模型·语音识别
小鱼儿&3 天前
centos7系统如何使用GPT分区
gpt