Chain-of-Thought Prompting (ES)

From Systems analysis Wiki
Jump to navigation Jump to search

Chain-of-Thought Prompting (CoT, o "incitación por cadena de pensamiento") es una técnica de ingeniería de prompts diseñada para mejorar la capacidad de los grandes modelos de lenguaje (LLM) para resolver problemas complejos que requieren un razonamiento de múltiples pasos. En lugar de generar una respuesta directamente, una indicación CoT alienta al modelo a reproducir explícitamente una secuencia de pasos de razonamiento intermedios que conducen a la conclusión final.

Este enfoque, que imita el proceso de pensamiento humano, aumenta significativamente la precisión de los modelos en tareas aritméticas, lógicas y simbólicas.

Idea clave

El principio fundamental de CoT es hacer que el modelo "piense en voz alta" en lenguaje natural antes de dar la respuesta final. La generación de estos pasos intermedios permite:

  • Descomponer tareas complejas: El modelo divide un problema complejo en subtareas más pequeñas y manejables, concentrándose en cada una de ellas de forma secuencial.
  • Minimizar errores: El proceso paso a paso reduce la probabilidad de errores lógicos que a menudo ocurren al intentar dar una respuesta en un solo paso.
  • Mejorar la transparencia e interpretabilidad: Los usuarios y desarrolladores pueden ver la lógica del modelo, lo que facilita la depuración, la verificación y la construcción de confianza en los resultados.

Contexto histórico

La técnica CoT fue presentada por primera vez el 28 de enero de 2022 por investigadores de Google Research en el artículo «Chain of Thought Prompting Elicits Reasoning in Large Language Models» (Jason Wei, Denny Zhou et al.)[1]. Descubrieron que proporcionar al modelo varios ejemplos de problemas con soluciones paso a paso (few-shot CoT) aumentaba drásticamente su rendimiento en tareas complejas.

Este descubrimiento demostró que la capacidad de razonamiento de múltiples pasos es una propiedad emergente de los grandes modelos. Como se señaló en el trabajo original, CoT solo proporciona un aumento de rendimiento en modelos que han alcanzado una cierta escala (alrededor de 100 mil millones de parámetros o más), y está prácticamente ausente en modelos más pequeños, que al usar CoT pueden generar razonamientos ilógicos y mostrar peores resultados.

Variedades de CoT Prompting

Few-Shot CoT: Aprendizaje a partir de ejemplos

Este es el método CoT original y más fiable.

  • Principio: Se proporcionan al modelo varios ejemplos (generalmente de 2 a 8), cada uno compuesto por un conjunto de: pregunta — cadena de razonamiento — respuesta.
  • Ventajas: Alta precisión, ya que el modelo aprende un estilo y formato de razonamiento específico.
  • Desventajas: Requiere la creación manual de ejemplos de alta calidad y diversos.

Zero-Shot CoT: "Pensemos paso a paso"

Este método fue propuesto más tarde, el 24 de mayo de 2022, en el artículo «Large Language Models are Zero-Shot Reasoners» (Takeshi Kojima et al.)[2] y es una variante considerablemente más simple.

  • Principio: Al prompt original se le añade una frase simple de activación, como por ejemplo, "Pensemos paso a paso" (del inglés "Let's think step by step").
  • Ventajas: Simplicidad, flexibilidad y no requiere ejemplos.
  • Desventajas: Puede ser menos preciso que el Few-Shot CoT para tareas muy específicas.

Automatic CoT (Auto-CoT)

Este enfoque, propuesto en el trabajo de Zhang et al. (2022)[3], automatiza la creación de demostraciones para el Few-Shot CoT.

  • Principio:
  1. Las preguntas de un nuevo conjunto de datos se agrupan (clusterizan).
  2. Se selecciona una pregunta representativa de cada clúster.
  3. Para estas preguntas, se genera una cadena de razonamiento utilizando Zero-Shot CoT.
  4. Las demostraciones obtenidas se utilizan para formar el prompt.
  • Objetivo: Reducir el esfuerzo manual y escalar la aplicación de CoT, logrando un rendimiento comparable a la creación manual de ejemplos.

CoT Multimodal

Aplicación de CoT a tareas que incluyen datos de múltiples modalidades (texto e imágenes).

  • Principio: El modelo genera razonamientos que conectan información textual y visual.
  • Aplicación: Análisis de diagramas, resolución de acertijos visuales.

Mecanismos y eficacia

  • Mejora del razonamiento: CoT guía al modelo a través de un proceso de resolución estructurado, lo que minimiza los errores lógicos y permite un uso más eficiente de su base de conocimientos.
  • Evidencia empírica: La eficacia de CoT es especialmente notable en benchmarks complejos. Por ejemplo, en el benchmark aritmético GSM8K, el método básico Few-Shot CoT aumentó la precisión del modelo PaLM-540B del 17.9% al 58.1%. El uso de técnicas más avanzadas basadas en CoT (como Self-Consistency) permite alcanzar una precisión del 74–78%.
  • Papel del formato de razonamiento: Las investigaciones han demostrado que incluso los ejemplos con pasos intermedios incorrectos pueden mejorar el resultado si se mantiene la estructura general del razonamiento. Esto sugiere que CoT enseña principalmente al modelo el formato del pensamiento paso a paso.

Relación con otras técnicas

CoT es un componente fundamental para métodos más avanzados:

  • Self-Consistency: Genera múltiples cadenas de CoT diferentes para una misma pregunta y elige la respuesta más frecuente mediante votación. Esto aumenta significativamente la fiabilidad, proporcionando un aumento de la precisión en benchmarks como GSM8K[4] (+17.9%)[5], SVAMP[6] (+11.0%)[1] y AQuA[7] (+12.2%)[1].
  • Tree of Thoughts (ToT): Generaliza CoT al explorar no una, sino un árbol completo de posibles rutas de razonamiento. A diferencia de la cadena lineal de CoT, ToT permite al modelo explorar múltiples ramas, evaluar "pensamientos" intermedios y retroceder (backtracking) al encontrar un camino poco prometedor. Esto permite resolver problemas aún más complejos donde un simple razonamiento lineal es insuficiente (por ejemplo, aumentando la precisión en la resolución del problema "Game of 24"[8] del 4% al 74%)[9].

Véase también

Bibliografía

  • Wei, J. et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903.
  • Wang, X. et al. (2022). Self-Consistency Improves Chain of Thought Reasoning in Language Models. arXiv:2203.11171.
  • Kojima, T. et al. (2022). Large Language Models are Zero-Shot Reasoners. arXiv:2205.11916.
  • Zhou, D. et al. (2022). Least-to-Most Prompting Enables Complex Reasoning in Large Language Models. arXiv:2205.10625.
  • Zhang, Z. et al. (2022). Automatic Chain of Thought Prompting in Large Language Models. arXiv:2210.03493.
  • Lyu, Q. et al. (2023). Faithful Chain-of-Thought Reasoning. arXiv:2301.13379.
  • Wang, X. et al. (2023). Deductive Verification of Chain-of-Thought Reasoning. arXiv:2306.03872.
  • Yao, S. et al. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601.
  • Lightman, H. et al. (2023). Let’s Verify Step by Step. arXiv:2305.20050.
  • Yang, B. et al. (2025). Hallucination Detection in Large Language Models with Metamorphic Relations. arXiv:2502.15844.

Referencias

  1. 1.0 1.1 1.2 Wei, Jason, Xuezhi Wang, Dale Schuurmans, Maarten Bosma, Brian Ichter, Fei Xia, Ed Chi, Quoc Le, y Denny Zhou. «Chain-of-Thought Prompting Elicits Reasoning in Large Language Models». arXiv, 10 de enero de 2023. https://doi.org/10.48550/arXiv.2201.11903.[1]
  2. Kojima, Takeshi, Shixiang Shane Gu, Machel Reid, Yutaka Matsuo, y Yusuke Iwasawa. «Large Language Models are Zero-Shot Reasoners». arXiv, 29 de enero de 2023. https://doi.org/10.48550/arXiv.2205.11916.[2]
  3. Zhang, Zhuosheng, Aston Zhang, Mu Li, y Alex Smola. «Automatic Chain of Thought Prompting in Large Language Models». arXiv, 7 de octubre de 2022. https://doi.org/10.48550/arXiv.2210.03493.[3]
  4. «openai/gsm8k · Datasets at Hugging Face», 17 de julio de 2023. https://huggingface.co/datasets/openai/gsm8k.[4]
  5. Wang, Xuezhi, Jason Wei, Dale Schuurmans, Quoc Le, Ed Chi, Sharan Narang, Aakanksha Chowdhery, y Denny Zhou. «Self-Consistency Improves Chain of Thought Reasoning in Language Models». arXiv, 7 de marzo de 2023. https://doi.org/10.48550/arXiv.2203.11171.[5]
  6. Patel, Arkil. «arkilpatel/SVAMP». Python, 30 de mayo de 2025. https://github.com/arkilpatel/SVAMP.[6]
  7. «autonlab/aqua». Jupyter Notebook. 2022. Reprint, Auton Lab, Carnegie Mellon University, 12 de junio de 2025. https://github.com/autonlab/aqua.[7]
  8. «24 (Puzzle)». En Wikipedia [8]
  9. Yao, Shunyu, Dian Yu, Jeffrey Zhao, Izhak Shafran, Thomas L. Griffiths, Yuan Cao, y Karthik Narasimhan. «Tree of Thoughts: Deliberate Problem Solving with Large Language Models». arXiv, 3 de diciembre de 2023. https://doi.org/10.48550/arXiv.2305.10601.[9]