🚀 Master Prompt Engineering and building AI Agents in our NEW courses! Use PROMPTING20 for 20% off ➜ Enroll now
Tree of Thoughts

Tree of Thoughts (ToT)

Para tarefas complexas que exigem exploração ou planejamento estratégico, técnicas tradicionais ou simples de estímulo são insuficientes. Yao et el. (2023) (opens in a new tab) e Long (2023) (opens in a new tab) propuseram recentemente a "Tree of Thoughts" (ToT), uma estrutura que generaliza o estímulo de cadeia de pensamento e incentiva a exploração de pensamentos que servem como etapas intermediárias para a resolução de problemas gerais com modelos de linguagem.

A ToT mantém uma árvore de pensamentos, onde os pensamentos representam sequências coerentes de linguagem que servem como etapas intermediárias para a resolução de um problema. Essa abordagem permite que um modelo de linguagem (LM) avalie o progresso dos pensamentos intermediários em direção à resolução de um problema por meio de um processo de raciocínio deliberado. A capacidade do LM de gerar e avaliar pensamentos é combinada com algoritmos de busca (por exemplo, busca em largura e busca em profundidade) para permitir a exploração sistemática de pensamentos com planejamento de lookahead e retrocesso.

A estrutura ToT é ilustrada abaixo:

TOT

Fonte da imagem: Yao et el. (2023) (opens in a new tab)

Ao usar a ToT, tarefas diferentes requerem a definição do número de candidatos e o número de pensamentos/etapas. Por exemplo, como demonstrado no artigo, o jogo "Game of 24" é usado como uma tarefa de raciocínio matemático que exige a decomposição dos pensamentos em 3 etapas, cada uma envolvendo uma equação intermediária. Em cada etapa, os 5 melhores candidatos são mantidos (b=5).

Para realizar a busca em largura (BFS) na ToT para a tarefa "Game of 24", o LM é solicitado a avaliar cada candidato de pensamento como "certo/talvez/impossível" em relação à obtenção do valor 24. Conforme afirmado pelos autores, "o objetivo é promover soluções parciais corretas que podem ser julgadas com poucas tentativas de planejamento futuro e eliminar soluções parciais impossíveis com base em senso comum de 'muito grande/pequeno', mantendo o restante como 'talvez'". Os valores são amostrados 3 vezes para cada pensamento. O processo é ilustrado abaixo:

TOT2

Fonte da imagem: Yao et el. (2023) (opens in a new tab)

Pelos resultados relatados na figura abaixo, a ToT supera substancialmente os outros métodos de estímulo:

TOT3

Fonte da imagem: Yao et el. (2023) (opens in a new tab)

Código disponível aqui (opens in a new tab) e aqui (opens in a new tab)

Em um nível mais amplo, as principais ideias de Yao et el. (2023) (opens in a new tab) e Long (2023) (opens in a new tab) são semelhantes. Ambos melhoram a capacidade do LLM para a resolução de problemas complexos por meio da busca em árvore via uma conversa em várias rodadas. Uma das principais diferenças é que Yao et el. (2023) (opens in a new tab) utiliza busca em profundidade (DFS), busca em largura (BFS) e busca em feixe (beam search), enquanto a estratégia de busca em árvore (ou seja, quando retroceder e retroceder em quantos níveis, etc.) proposta por Long (2023) (opens in a new tab) é conduzida por um "Controlador ToT" treinado por meio de aprendizado por reforço. DFS/BFS/Beam search são estratégias genéricas de busca por soluções sem adaptação a problemas específicos. Em comparação, um Controlador ToT treinado por RL pode ser capaz de aprender a partir de novos conjuntos de dados ou por meio de autoaprendizagem (AlphaGo vs. busca por força bruta), permitindo que o sistema ToT baseado em RL continue a evoluir e aprender novos conhecimentos, mesmo com um LLM fixo.

Hulbert (2023) (opens in a new tab) propôs o "Tree-of-Thought Prompting", que aplica o conceito principal das estruturas ToT como uma técnica simples de estímulo, fazendo com que o LLM avalie pensamentos intermediários em uma única prompt. Uma amostra de prompt ToT é:

Imagine que três especialistas diferentes estão respondendo a esta pergunta.
Todos os especialistas escreverão 1 etapa do seu pensamento e compartilharão com o grupo.
Então, todos os especialistas passarão para a próxima etapa, etc.
Se algum especialista perceber que está errado em algum ponto, ele sairá.
A pergunta é...