Tree of Thoughts (ToT)
Tree of Thoughts (ToT) hace que un LLM proponga varios pasos siguientes de razonamiento, los puntúe y explore el árbol resultante, volviendo atrás cuando llega a un callejón sin salida.
Tree of Thoughts (ToT) es un marco de ingeniería de prompts en el que un modelo de lenguaje grande (LLM) resuelve un problema buscando en un árbol de soluciones parciales. En cada paso, el modelo propone varios pasos siguientes candidatos, llamados pensamientos, evalúa la probabilidad de éxito de cada estado resultante y un algoritmo de búsqueda decide qué ramas ampliar, conservar o abandonar. Mientras que el prompting de cadena de pensamiento sigue una única línea de razonamiento desde el primer token, ToT puede anticiparse y retroceder. Shunyu Yao y sus colegas de la Universidad de Princeton y Google DeepMind lo presentaron en Tree of Thoughts: resolución deliberada de problemas con modelos de lenguaje grandes, presentado en NeurIPS 2023; ese mismo mes, Jieyi Long propuso un sistema similar de búsqueda en árbol para resolver sudokus con un LLM. En el rompecabezas Game of 24, ToT aumentó la tasa de éxito de GPT-4 del 4 % con prompting de cadena de pensamiento al 74 %.
Cómo funciona Tree of Thoughts#
Yao y sus coautores definen ToT mediante cuatro decisiones de diseño:
- Descomposición de pensamientos: Qué constituye un paso. En Game of 24, un pensamiento es una ecuación; en la generación de texto creativo, un plan para el pasaje; y en un crucigrama, una palabra que colocar.
- Generador de pensamientos: Cómo se producen los candidatos. El modelo muestrea varios pensamientos de forma independiente, lo que conviene para pasos abiertos, o propone una lista de opciones distintas en un único prompt, lo que evita duplicados cuando las opciones son limitadas.
- Evaluador de estados: Cómo se juzga el progreso. El modelo puntúa cada estado por separado, por ejemplo, como «seguro», «quizá» o «imposible» de alcanzar el objetivo, o vota por el mejor de varios estados. Estas puntuaciones sirven como heurística de búsqueda, una función que en la búsqueda clásica suele desempeñar una función de puntuación escrita manualmente.
- Algoritmo de búsqueda: Cómo se explora el árbol. La búsqueda en anchura conserva los b mejores estados de cada nivel, mientras que la búsqueda en profundidad sigue la rama más prometedora, poda los estados que el evaluador descarta y retrocede cuando es necesario.
Ejemplo: Game of 24#
Game of 24 proporciona cuatro números que hay que combinar con +, -, x y / para obtener 24, usando cada número una sola vez. ToT divide la solución en tres pasos, cada uno de los cuales es una ecuación que combina dos números. Para la entrada 4 9 10 13, un prompt de propuesta enumera candidatos como:
13 - 9 = 4 (left: 4 4 10)
10 - 4 = 6 (left: 6 9 13)
4 + 9 = 13 (left: 10 13 13)
4 x 13 = 52 (left: 9 10 52)A continuación, el prompt de valoración pregunta si cada conjunto restante todavía puede dar 24. «4 4 10» es seguro, ya que (10 - 4) x 4 = 24; también lo es «6 9 13», ya que (13 - 9) x 6 = 24. En cambio, «10 13 13» y «9 10 52» son imposibles, así que la búsqueda amplía únicamente las dos primeras ramas. Si se sigue la primera, 10 - 4 = 6 (quedan: 4 6) y, después, 4 x 6 = 24.
En los experimentos del artículo con 100 partidas difíciles, la búsqueda en anchura conservó los 5 mejores estados en cada paso y puntuó cada estado tres veces. ToT con GPT-4 resolvió el 74 % de las partidas, frente al 7,3 % con prompting directo, el 4,0 % con cadena de pensamiento y el 9,0 % con cadena de pensamiento y autoconsistencia. Incluso la mejor de 100 cadenas de pensamiento muestreadas solo alcanzó el 49 %, y ToT, al conservar un solo estado por paso, llegó al 45 %.
Dónde encaja Tree of Thoughts#
ToT resulta útil para problemas en los que las primeras decisiones condicionan las siguientes y cuesta corregir un primer paso equivocado: rompecabezas, planificación y problemas matemáticos de varios pasos. En min crucigramas de 5x5, ToT en profundidad con poda completó correctamente el 60 % de las palabras y resolvió 4 de 20 juegos. El coste es el cómputo: cada nivel del árbol requiere varias llamadas de generación y evaluación, así que una sola respuesta puede necesitar decenas de llamadas al modelo o más, y muchos más tokens que una sola cadena, con la correspondiente latencia de inferencia.
El mismo bucle de generar, evaluar y ampliar se aplica a una escala mucho mayor en la búsqueda automatizada de experimentos, como el ajuste de hiperparámetros. En AutoTrain de Ultralytics Platform, Ask AI puede entrenar varios modelos de Ultralytics YOLO que difieren en un ajuste, por ejemplo, con tamaños de imagen de 640, 800 y 960; comparar las ejecuciones finalizadas mediante el mAP50-95 de validación y proponer el siguiente experimento a partir del mejor resultado.
Tree of Thoughts frente a métodos relacionados#
- Prompting de cadena de pensamiento: Una única línea de razonamiento, equivalente a un árbol con una rama por nivel.
- Prompting ReAct: Intercala el razonamiento con acciones en un entorno externo, como búsquedas o llamadas a herramientas, y avanza en función de sus resultados. ToT busca entre los pensamientos candidatos del propio modelo.
- Autoconsistencia: Muestrea varias cadenas completas y decide las respuestas finales por mayoría, sin evaluar los pasos parciales durante el proceso.
- Graph of Thoughts: Generaliza el árbol a un grafo en el que los pensamientos también pueden combinarse y perfeccionarse, y obtuvo una calidad de clasificación un 62 % superior a la de ToT con un coste más de un 31 % menor.
- Búsqueda de árbol de Monte Carlo (MCTS): El algoritmo de búsqueda que hay detrás de AlphaGo, que equilibra la exploración de nuevas ramas con el aprovechamiento de las más prometedoras y puede sustituir la búsqueda en amplitud o en profundidad entre pensamientos.
- Modelos de razonamiento: Se entrenan mediante aprendizaje por refuerzo para generar largas trazas de razonamiento en una sola generación; ToT, en cambio, obtiene la ramificación y la vuelta atrás de un programa de búsqueda externo que opera sobre un modelo convencional.










