Minha IBM Efetue login Inscreva-se

O que é tree of thoughts?

15 de agosto de 2024

Autores

Vrunda Gadesha

AI Advocate | Technical Content Author

Eda Kavlakoglu

Program Manager

Tree of Thoughts (ToT) é um framework inovador projetado para aprimorar os recursos de raciocínio de grandes modelos de linguagem (LLMs). Essa abordagem simula estratégias cognitivas humanas para resolução de problemas, permitindo que os LLMs explorem múltiplas soluções possíveis de forma estruturada, semelhante aos ramos de uma árvore.[1]

Diferença entre chain of thoughts (CoT) e tree of thoughts (ToT)

Os frameworks de árvore de ideias (ToT) e cadeia de ideias (CoT) servem como algoritmos conceituais para entender a organização e a progressão da geração de texto em modelos de linguagem (LMs), como transformadores generativos treinados previamente (como GPT-3 e GPT-4 ). Essas técnicas de prompts fazem parte da engenharia de prompts, que envolve a criação de inputs (prompts) para guiar efetivamente os LMs na geração de resultados preferenciais.

Prompts de árvore de ideias: essa estrutura opera na capacidade do modelo de gerar texto de forma hierárquica, com um tópico ou ideia central levando a subtópicos e detalhes ramificados. Essa abordagem reflete como um modelo pode expandir um prompt específico, gerando texto cada vez mais específico e relacionado, semelhante a uma estrutura de árvore. Ele possibilita estratégias de pesquisa antecipada e de árvore, onde o modelo pode explorar várias ramificações antes de se comprometer com um caminho, tornando-o adequado para resolução geral de problemas e cenários que exigem decisões complexas. Este método incorpora raciocínio de senso comum e heurística para avaliar a qualidade de cada ramo. O mecanismo de autoconsistência é empregado para apresentar avaliações confiáveis, solicitando o modelo várias vezes.

Prompting com cadeia de pensamentos (CoT): por outro lado, esse conceito refere-se à capacidade do modelo de gerar texto de forma linear, da esquerda para a direita, onde cada token subsequente é diretamente influenciado pelos tokens anteriores. Essa progressão sequencial reflete uma abordagem mais simples e direta para geração de texto. O CoT é eficaz para tarefas que exigem um fluxo lógico claro e passo a passo. O aprendizado few-shot, onde o modelo recebe alguns exemplos para referência, pode aprimorar esse método ao fornecer compreensão contextual. CoT funciona como uma técnica fundamental em engenharia de prompt, sendo uma abordagem mais simples de implementar, mas que pode não alcançar o mesmo nível de profundidade e complexidade que o ToT.

Comparação e aplicações: embora o prompt da ToT represente uma abordagem mais complexa e interconectada para a geração de texto, emprega estratégias de pesquisa em árvore e antecipação, enquanto a CoT reflete uma progressão sequencial mais simples. A natureza hierárquica da ToT a torna adequada para tarefas que exigem a exploração detalhada de múltiplas soluções, como cenários de aprendizado por reforço, em que o backtracking e as estratégias alternativas são cruciais. No entanto, a progressão linear da CoT é ideal para tarefas que precisam de uma sequência lógica e clara de ideias.

Na prática, APIs para modelos de linguagem, incluindo GPT-3 e GPT-4, utilizam técnicas de prompting como ToT e CoT para melhorar o desempenho em tarefas diversas, desde redação criativa até resolução de problemas complexos.[2] A engenharia de prompt continua evoluindo, proporcionando ferramentas avançadas para potencializar os transformadores usados em modelos de linguagem.

Como funciona a árvore de ideias?

O ToT guia os LLMs por uma série de etapas de raciocínio, onde cada etapa pode se ramificar em múltiplos caminhos, permitindo que o modelo retroceda ou explore estratégias alternativas conforme necessário. Por exemplo, ao resolver um quebra-cabeça de sudoku, o modelo pode testar diferentes posicionamentos de números de maneira iterativa. Caso encontre uma contradição, o modelo retrocede e tenta uma abordagem diferente até encontrar a solução correta. Isso imita a forma como os humanos resolvem problemas, considerando múltiplas soluções e descartando aquelas que se mostram incorretas.[1][3]

Estrutura para árvore de ideias (ToT)

A ToT é um framework sofisticado projetado para aprimorar as capacidades de resolução de problemas dos LMs, estruturando seu raciocínio de maneira análoga aos processos cognitivos humanos. A estrutura é composta por quatro componentes principais:

  1. Decomposição de ideias: A estrutura do ToT divide explicitamente um problema em etapas menores e gerenciáveis chamadas ideias, que são reunidos para formar uma solução. Cada ideia deve ter o tamanho certo, nem grande demais para manusear nem pequeno demais para ser útil. Por exemplo, se você estiver planejando uma viagem, uma ideia pode envolver primeiro a decisão sobre o destino, depois a escolha do melhor modo de transporte e, por fim, a escolha de um lugar para ficar. Em um problema matemático, uma ideia pode ser uma única linha de equação ou uma explicação concisa de um conceito. Dessa forma, o problema é dividido em etapas importantes fáceis de abordar e avaliar individualmente. A decomposição depende da natureza do problema, garantindo que as ideias sejam significativas e viáveis para avaliação.
  2. Geração de ideias: após definir o que constitui um pensamento, o próximo passo é determinar como esses pensamentos são gerados. O framework propõe duas técnicas principais para esse processo.[4]
    • Amostragem: essa técnica envolve a geração de várias ideias de forma independente, utilizando o mesmo estímulo. Funciona melhor quando o espaço de ideias é rico e diversificado, pois as ideias geradas de forma independente têm menos probabilidade de serem duplicadas. Por exemplo, na escrita criativa, podem ser geradas várias ideias independentes de enredo.
    • Proposição: essa técnica gera ideias em sequência com um "comando de proposta". Cada ideia é desenvolvida sobre a anterior, o que ajuda a evitar a duplicação em espaços de ideias mais restritos. Por exemplo, na resolução de problemas lógicos, cada etapa se baseia na anterior para ajudar a garantir constância e progresso.
  3. Avaliação de estado: depois que as ideias são geradas, devem ser avaliadas para ajudar a garantir o progresso em direção a uma solução. A estrutura emprega duas estratégias para esse propósito:
    • Valor: essa estratégia envolve a atribuição de um valor escalar (por exemplo, uma classificação de 1 a 10) ou uma classificação (por exemplo, certo, provável ou impossível) a cada estado. Isso ajuda a indicar a qualidade ou a probabilidade do valor de levar a uma solução. Esse método possibilita uma avaliação quantitativa do potencial de cada ideia.
    • Votação: essa estratégia compara diversas soluções e seleciona a mais promissora. A votação é particularmente útil para tarefas em que a qualidade de uma solução é subjetiva ou difícil de quantificar, como em escrita criativa ou planejamento estratégico. Várias avaliações se combinam para determinar o melhor caminho a seguir.
  4. Algoritmo de pesquisa: o componente final envolve o algoritmo de pesquisa utilizado para navegar pelo espaço da solução. A estrutura normalmente emprega dois algoritmos fundamentais:
    • Pesquisa em largura (BFS): este algoritmo explora todos os ramos possíveis em cada nível antes de se aprofundar na árvore. Ela garante que todas as possíveis soluções sejam consideradas igualmente, tornando-o útil para problemas em que o caminho mais curto ou a solução mais rasa é preferido. Por exemplo, em um jogo de quebra-cabeça, o BFS verificaria todos os movimentos imediatos antes de considerar os subsequentes.
    • Pesquisa com profundidade de primeiro plano (DFS): esse algoritmo explora profundamente uma ramificação antes de voltar para explorar outras ramificações. Ele possibilita um exame minucioso de cada caminho de solução possível, tornando-o útil para problemas que exigem a exploração detalhada de cada opção. Por exemplo, para resolver um problema lógico complexo, a DFS seguiria profundamente uma única hipótese, verificando sua validade antes de considerar alternativas.

Integrando esses componentes, a estrutura da ToT imita a resolução de problemas humanos, considerando sistematicamente várias soluções e descartando as consideradas incorretas.

A dinâmica operacional da estrutura ToT envolve uma exploração iterativa e estruturada em árvore de possíveis soluções. Começando com a solicitação inicial, o modelo gera uma variedade de ideias ou respostas, cada uma levando a consultas ou expansões subsequentes. Essas ramificações se desenvolvem à medida que o modelo explora outros caminhos de raciocínio. Ele emprega o monitoramento do progresso e a exploração de todo esse espaço de soluções por meio de uma autoavaliação baseada em LLM, ajudando a garantir a validade de cada etapa. Se uma linha específica de raciocínio atingir uma contradição ou um beco sem saída, o sistema pode voltar para um nó anterior para explorar possibilidades alternativas.

Essa abordagem estruturada, ainda que flexível, possibilita que os LLMs lidem com tarefas complexas de raciocínio em várias etapas de forma mais eficaz. Assemelha-se à capacidade humana de navegar por um labirinto de ideias e opções, reavaliando e ajustando estratégias conforme o necessário.

Em essência, o framework ToT equipa os LLMs com uma capacidade de raciocínio mais próxima da humana, aumentando sua eficiência em tarefas que exigem pensamento estratégico e tomada de decisão profunda.

Vantagens e limitações da árvore de ideias

A estrutura ToT representa um avanço considerável nas capacidades dos LLMs para resolução de problemas complexos. No entanto, há compensações envolvendo a complexidade adicional inerente à implementação dessa estrutura.

Vantagens

A estrutura oferece benefícios ao campo da inteligência artificial, incluindo:

Habilidades aprimoradas de resolução de problemas

O ToT aprimora significativamente as habilidades de resolução de problemas dos LLMs ao permitir que explorem múltiplos caminhos de raciocínio simultaneamente. Isso reflete os processos cognitivos humanos, onde várias soluções são consideradas antes de se escolher a mais viável. Por exemplo, em tarefas que exigem planejamento estratégico, como resolver quebra-cabeças ou gerar textos criativos, o ToT demonstrou desempenho superior, alcançando taxas de sucesso mais altas em comparação com métodos tradicionais. Essa capacidade aprimorada de raciocínio complexo se destaca especialmente em tarefas desafiadoras, onde as decisões iniciais impactam diretamente os resultados finais.[4]

Tratamento da incerteza

A Tree of Uncertain Thoughts (TouT) é uma extensão do ToT que trata especificamente das incertezas inerentes ao processo de tomada de decisão dos LLMs. Ao quantificar e gerenciar essas incertezas, o TouT permite resultados mais precisos e confiáveis. Esse processo emprega técnicas avançadas, como o Monte Carlo Dropout. Essa técnica é amplamente utilizada em aprendizado de máquina, especialmente em modelos de deep learning, para estimar incertezas nas previsões. O método envolve a desativação aleatória de neurônios tanto no treinamento quanto na inferência, criando múltiplos caminhos possíveis dentro da rede neural. Ao calcular a média das previsões dessas diferentes trajetórias, o modelo fornece estimativas mais confiáveis de incerteza. Esse recurso é fundamental para aplicações onde previsões precisas e confiáveis são essenciais, como diagnóstico médico e previsão financeira.[5]

Limitações

Junto com os benefícios, há algumas limitações inerentes que devem ser consideradas.

Sobrecarga computacional

A estrutura da ToT envolve operações complexas, como manter múltiplos caminhos de decisão, voltar atrás e explorar soluções alternativas. Esses processos são computacionalmente intensivos, muitas vezes exigindo recursos significativos em termos de poder de processamento e memória. A necessidade de recursos pode limitar a escalabilidade da ToT, especialmente em ambientes onde os recursos computacionais são limitados ou em aplicativos em tempo real onde os tempos de resposta rápidos são críticos.

Complexidade de implementação

Configurar um sistema Tree of Thoughts envolve a integração de vários componentes, como o agente de prompting, o módulo de verificação, o módulo de memória e o controlador da Tree of Thoughts.[1] Cada componente deve ser finamente ajustado para funcionar em harmonia, o que pode ser um processo complexo e demorado. Além disso, a eficácia do sistema depende fortemente da qualidade de sua implementação. Uma configuração inadequada de qualquer componente pode reduzir a eficiência do sistema, tornando-o menos confiável ou levando a caminhos incorretos na resolução de problemas.

Projeto 3D de bolas rolando em uma pista

As últimas notícias e insights sobre IA 


Descubra insights selecionadas por especialistas sobre IA, nuvem e outros assuntos no boletim informativo semanal Think. 

Estudos de caso

O framework ToT demonstrou sua eficácia em diversas aplicações, demonstrando robustez e adaptabilidade. Aqui, exploramos quatro estudos de caso convincentes em que a ToT melhorou consideravelmente os recursos de resolução de problemas:

Resolução de quebra-cabeças Sudoku

A aplicação do ToT na resolução de quebra-cabeças de Sudoku exemplifica sua capacidade de navegar por desafios lógicos complexos. Ao guiar o modelo por diferentes possibilidades de posicionamento de números e permitir que ele retroceda ao encontrar contradições, o ToT otimiza o caminho para soluções corretas. Essa capacidade de reavaliar decisões dinamicamente melhora drasticamente a precisão e a eficiência da resolução de problemas, destacando a vantagem do ToT sobre abordagens mais estáticas.[1]

Jogos do 24

No jogo estratégico de aritmética "24", o ToT melhorou significativamente as taxas de sucesso ao permitir que o modelo explorasse múltiplos caminhos de cálculo. Esse processo de raciocínio adaptativo possibilitou que o modelo resolvesse os quebra-cabeças de forma mais criativa e eficaz, demonstrando a capacidade do ToT de aprimorar a flexibilidade cognitiva na resolução de problemas numéricos.[4]

Escrita criativa

O ToT também foi aplicado a tarefas de escrita criativa, auxiliando LLMs na geração de narrativas mais coerentes e contextualmente apropriadas. Ao estruturar o processo de pensamento em uma árvore ramificada, o modelo pode explorar diferentes desenvolvimentos de enredo ou escolhas estilísticas, além de selecionar ou revisar as opções mais promissoras. Esse método resultou em melhorias na qualidade e originalidade dos textos gerados por LLMs, proporcionando uma abordagem mais sutil e sofisticada para a criação automatizada de histórias.[4]

Resolução de palavras cruzadas 5x5

Outra aplicação notável do ToT está na resolução de mini palavras cruzadas 5x5. O framework permite que o modelo considere múltiplas opções de palavras para cada pista do quebra-cabeça, avaliando não apenas os termos individualmente, mas também sua interação com palavras já posicionadas. Essa abordagem iterativa e abrangente contribui para uma maior precisão na conclusão dos quebra-cabeças, demonstrando a capacidade do ToT de aplicar raciocínio lógico e contextual em tarefas linguisticamente complexas. O uso do ToT nesse contexto ressalta sua versatilidade e eficácia em tarefas que exigem a integração de múltiplos tipos de conhecimento e estratégias de raciocínio.[4]

Esses estudos de caso ilustram as diversas capacidades da estrutura da árvore de ideias, desde o aprimoramento do raciocínio lógico e numérico até o aumento da criatividade e da compreensão contextual em tarefas baseadas em linguagem. Cada exemplo ressalta o potencial da ToT para revolucionar a resolução de problemas em todas as disciplinas.

Avanços recentes

Avanços recentes na pesquisa de ToT concentraram na expansão de seus recursos e em como lidar com os desafios inerentes à sua aplicação. Os principais desenvolvimentos são:

  1. Quantificação da incerteza: a introdução do Tree of Uncertain Thoughts (TouT) representa um avanço significativo na pesquisa sobre ToT. O TouT aprimora o ToT ao integrar mecanismos de quantificação de incertezas, permitindo avaliar a confiabilidade de cada caminho decisório. Esse desenvolvimento é essencial para aplicações onde decisões precisam ser tomadas sob condições de incerteza e onde o custo de erros pode ser alto.[5]
  2. Tomada de decisões globais: outras pesquisas se concentraram no aprimoramento das habilidades globais de tomada de decisão dos LLMs ao utilizar a ToT. Estudos recentes introduziram ciclos de feedback no framework, permitindo que os modelos aprendam com decisões anteriores e ajustem seus processos de raciocínio em tempo real. Esse mecanismo iterativo de feedback ajuda a refinar o processo decisório, tornando-o mais dinâmico e responsivo ao contexto em evolução do problema. Essas melhorias têm como objetivo aproximar os recursos de raciocínio dos LLMs dos processos cognitivos humanos, nos quais o aprendizado com experiências passadas desempenha um papel fundamental na formação de decisões futuras.[4]

Esses desenvolvimentos recentes destacam os esforços contínuos para refinar e expandir o framework Tree of Thoughts, garantindo sua aplicabilidade e eficácia em cenários de resolução de problemas cada vez mais complexos. Esses avanços não apenas aumentam os recursos dos LLMs, mas também abrem novas possibilidades para pesquisa e aplicação em inteligência artificial.

Mistura de Especialistas | Podcast

Decodificando a IA: resumo semanal das notícias

Junte-se a nosso renomado painel de engenheiros, pesquisadores, líderes de produtos e outros enquanto filtram as informações sobre IA para trazerem a você as mais recentes notícias e insights sobre IA.

Soluções relacionadas

Soluções relacionadas

IBM watsonx.ai

Treine, valide, ajuste e implemente recursos de IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo com uma fração dos dados.

Conheça o watsonx.ai
Soluções de inteligência artificial

Use a IA a serviço de sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.

Explore as soluções de IA
Serviços de IA

Reinvente os fluxos de trabalho e operações críticos adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor de negócios.

Explore os serviços de IA
Dê o próximo passo

Obtenha acesso completo aos recursos que abrangem o ciclo de vida do desenvolvimento da IA. Produza soluções poderosas de IA com interfaces fáceis de usar, fluxos de trabalhos e acesso a APIs e SDKs padrão do setor.

Explore o watsonx.ai Agende uma demonstração em tempo real
Notas de rodapé

[1] Long, J. (May 2023). Large Language Model Guided Tree-of-Thought.

[2] Karthik Narasimhan, S. Y. (Julho de 2023). Official Repository of Tree of Thoughts (ToT). https://github.com/princeton-nlp/tree-of-thought-llm

[3] Pengfei Liu, W. Y. (2021). Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing. ACM Computing Surveys.

[4] Shunyu Yao, D. Y. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. ArXiv, abs/2305.10601. 
https://arxiv.org/abs/2305.10601

[5] 5 Shentong Mo, M. X. (setembro de 2023). Tree of Uncertain Thoughts Reasoning for Large Language Models. ArXiv, abs/2309.07694. https://arxiv.org/abs/2309.07694