Repolode
kyegomez

kyegomez/tree-of-thoughts

Implementación en Python de Tree of Thoughts, que permite a los LLM resolver problemas buscando entre pasos de razonamiento candidatos en lugar de responder en una sola pasada.

Estrellas
4,594
Forks
373
Issues abiertos
8
Último commit
el mes pasado

¿Qué es?

Tree of Thoughts hace que un modelo de lenguaje razone mediante búsqueda. Propone varios pasos siguientes candidatos, puntúa cada uno, poda las ramas poco prometedoras y retrocede cuando una línea de razonamiento falla. Este repositorio incluye la clase TreeOfThoughts, que ahora forma parte del framework Swarms, y ejecuta búsquedas en anchura o en profundidad sobre soluciones parciales.

Cada salida del modelo es una llamada a función validada con un esquema de Pydantic, y las llamadas del mismo nivel del árbol se ejecutan en paralelo. Los usuarios configuran la descripción del pensamiento, los criterios de evaluación, el algoritmo de búsqueda, el ancho del beam, la profundidad y el umbral de valor según la tarea. Se puede usar cualquier modelo de LiteLLM compatible con llamadas a funciones, y al terminar una ejecución se puede consultar el árbol de búsqueda completo como JSON.

El repositorio incluye ejemplos de Game of 24, cálculos de física, acertijos de lógica y problemas matemáticos, cada uno con una respuesta esperada. También incluye plantillas de prompts para obtener un razonamiento similar al de varios expertos de un modelo de chat, sin necesidad de código.

Funciones clave

  • 01Búsqueda en anchura y en profundidad sobre pasos de razonamiento, con retroceso y poda.
  • 02Evaluación de pasos candidatos mediante valoraciones y votaciones.
  • 03Factor de ramificación, profundidad, ancho del beam y umbral de puntuación configurables.
  • 04Compatible con cualquier modelo de LiteLLM que admita llamadas a funciones.
  • 05Devuelve el árbol de búsqueda completo como datos serializables en JSON.

Casos de uso

  • Resolver problemas aritméticos de varios pasos o acertijos en los que una sola pasada del modelo suele fallar.
  • Explorar opciones de planificación o programación manteniendo activas varias soluciones parciales.
  • Realizar análisis de casos que requieren retroceder cuando una rama se contradice.
  • Evaluar la calidad del razonamiento en benchmarks de matemáticas o lógica con respuestas verificables.

Inicio rápido

  1. 1

    Instala el paquete swarms

    pip3 install -U swarms
  2. 2

    Añade tu clave de API a un archivo .env en tu directorio de trabajo

  3. 3

    Ejecuta el código Python de Quickstart usando TreeOfThoughts

    python examples/physics/hohmann_transfer.py

Antes de usarlo

  • Requiere una clave de API de un proveedor de modelos compatible con function calling.
  • La búsqueda de múltiples ramas realiza muchas llamadas al modelo, por lo que el coste aumenta rápidamente con ajustes como breadth y depth.
  • Tree of Thoughts ahora se incluye en el framework más amplio Swarms, lo que añade una dependencia considerable.

En colecciones

Temas

Preguntas frecuentes

¿Qué es tree-of-thoughts?
Implementación en Python de Tree of Thoughts, que permite a los LLM resolver problemas buscando entre pasos de razonamiento candidatos en lugar de responder en una sola pasada. Tree of Thoughts hace que un modelo de lenguaje razone mediante búsqueda. Propone varios pasos siguientes candidatos, puntúa cada uno, poda las ramas poco prometedoras y retrocede cuando una línea de razonamiento falla. Este repositorio incluye la clase TreeOfThoughts, que ahora forma parte del framework Swarms, y ejecuta búsquedas en anchura o en profundidad sobre soluciones parciales.
¿tree-of-thoughts es gratuito? ¿Qué licencia tiene?
tree-of-thoughts es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿tree-of-thoughts sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de tree-of-thoughts fue el 29 sept 2026.
¿Para qué puedo usar tree-of-thoughts?
Resolver problemas aritméticos de varios pasos o acertijos en los que una sola pasada del modelo suele fallar. Explorar opciones de planificación o programación manteniendo activas varias soluciones parciales. Realizar análisis de casos que requieren retroceder cuando una rama se contradice. Evaluar la calidad del razonamiento en benchmarks de matemáticas o lógica con respuestas verificables.
¿Cómo se instala tree-of-thoughts?
Instala el paquete swarms: pip3 install -U swarms Añade tu clave de API a un archivo .env en tu directorio de trabajo Ejecuta el código Python de Quickstart usando TreeOfThoughts: python examples/physics/hohmann_transfer.py
¿Dónde consigo tree-of-thoughts?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/kyegomez/tree-of-thoughts

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados