TextGrad: Diferenciação Automática via Texto
TextGrad: Automatic "Differentiation" via Text
June 11, 2024
Autores: Mert Yuksekgonul, Federico Bianchi, Joseph Boen, Sheng Liu, Zhi Huang, Carlos Guestrin, James Zou
cs.AI
Resumo
A IA está passando por uma mudança de paradigma, com avanços alcançados por sistemas que orquestram múltiplos modelos de linguagem de grande escala (LLMs) e outros componentes complexos. Como resultado, o desenvolvimento de métodos de otimização automatizados e fundamentados para sistemas de IA compostos é um dos desafios mais importantes atualmente. As redes neurais enfrentaram um desafio semelhante em seus primórdios, até que a retropropagação e a diferenciação automática transformaram o campo, tornando a otimização algo direto. Inspirados por isso, introduzimos o TextGrad, um framework poderoso que realiza "diferenciação" automática por meio de texto. O TextGrad retropropaga feedback textual fornecido por LLMs para melhorar componentes individuais de um sistema de IA composto. Em nosso framework, os LLMs fornecem sugestões ricas, gerais e em linguagem natural para otimizar variáveis em grafos de computação, variando desde trechos de código até estruturas moleculares. O TextGrad segue a sintaxe e abstração do PyTorch, sendo flexível e fácil de usar. Ele funciona de forma imediata para uma variedade de tarefas, onde os usuários apenas fornecem a função objetivo sem a necessidade de ajustar componentes ou prompts do framework. Demonstramos a eficácia e generalidade do TextGrad em uma ampla gama de aplicações, desde respostas a perguntas e otimização de moléculas até planejamento de tratamentos de radioterapia. Sem modificar o framework, o TextGrad melhora a precisão zero-shot do GPT-4o em Respostas a Perguntas à Prova do Google de 51% para 55%, proporciona um ganho de desempenho relativo de 20% na otimização de soluções para problemas difíceis do LeetCode, melhora prompts para raciocínio, projeta novas moléculas pequenas semelhantes a medicamentos com ligações in silico desejáveis e projeta planos de tratamento de oncologia radioterápica com alta especificidade. O TextGrad estabelece uma base para acelerar o desenvolvimento da próxima geração de sistemas de IA.
English
AI is undergoing a paradigm shift, with breakthroughs achieved by systems
orchestrating multiple large language models (LLMs) and other complex
components. As a result, developing principled and automated optimization
methods for compound AI systems is one of the most important new challenges.
Neural networks faced a similar challenge in its early days until
backpropagation and automatic differentiation transformed the field by making
optimization turn-key. Inspired by this, we introduce TextGrad, a powerful
framework performing automatic ``differentiation'' via text. TextGrad
backpropagates textual feedback provided by LLMs to improve individual
components of a compound AI system. In our framework, LLMs provide rich,
general, natural language suggestions to optimize variables in computation
graphs, ranging from code snippets to molecular structures. TextGrad follows
PyTorch's syntax and abstraction and is flexible and easy-to-use. It works
out-of-the-box for a variety of tasks, where the users only provide the
objective function without tuning components or prompts of the framework. We
showcase TextGrad's effectiveness and generality across a diverse range of
applications, from question answering and molecule optimization to radiotherapy
treatment planning. Without modifying the framework, TextGrad improves the
zero-shot accuracy of GPT-4o in Google-Proof Question Answering from 51% to
55%, yields 20% relative performance gain in optimizing LeetCode-Hard
coding problem solutions, improves prompts for reasoning, designs new druglike
small molecules with desirable in silico binding, and designs radiation
oncology treatment plans with high specificity. TextGrad lays a foundation to
accelerate the development of the next-generation of AI systems.