Graph of Thoughts (RO)
Graph-of-Thoughts (GoT) — este un concept în domeniul lucrului cu modele lingvistice mari (LLM, Large Language Models), care presupune reprezentarea procesului de raționament al modelului sub forma unui graf arbitrar de „gânduri" interconectate (pași intermediari ai soluției)[1]. Această abordare a fost propusă de un grup de cercetători condus de Maciej Besta din ETH Zurich și publicată în 2024 la conferința AAAI[2]. Scopul Graph-of-Thoughts este de a extinde capacitățile prompt engineering (elaborării interogărilor) dincolo de schemele existente, precum Chain-of-Thought (lanțul gândurilor) și Tree-of-Thoughts (arborele gândurilor)[1]. Spre deosebire de acestea, abordarea GoT permite oricărui fragment de raționament generat de model (gând) să facă referire la oricare altul, formând o rețea de idei, și nu o structură strict liniară sau arborescentă[3]. Aceasta, susțin autorii, reflectă mai fidel caracterul complex și neliniar al gândirii umane și potențial apropie mecanismul de raționament al LLM de modul de funcționare al creierului uman (cu conexiunile sale neuronale recurente)[1][1].
Graph-of-Thoughts este un cadru de formare a interogărilor (prompting framework), adică nu necesită antrenament suplimentar sau fine-tuning al modelului în sine — în schimb, organizează dialogul cu LLM într-un mod special, ghidând modelul printr-o serie de pași-„gânduri" conectate după schema unui graf[1]. Această structură permite combinarea și reutilizarea diferitelor ramuri de raționament: de exemplu, modelul poate examina în paralel mai multe ipoteze sau părți ale problemei, iar apoi să reunească cele mai reușite dintre ele într-o soluție unitară[1]. Într-un stil enciclopedic, Graph-of-Thoughts poate fi definit ca o generalizare a strategiilor anterioare de raționament structurat cu LLM, oferind flexibilitate maximă în organizarea proceselor de gândire în cadrul unei singure interogări complexe[1].
Premisele: Chain-of-Thought și Tree-of-Thoughts
Metoda Graph-of-Thoughts a crescut din abordări anterioare care utilizează o structură explicită de raționament în lucrul cu modele lingvistice. Abordarea de bază este Chain-of-Thought (CoT) – „lanțul gândurilor". În metoda CoT, utilizatorul este îndemnat să includă în interogarea adresată modelului nu doar condiția problemei, ci și pașii intermediari de raționament care conduc la răspuns[1]. Cercetările au arătat că o astfel de prezentare a materialului îmbunătățește semnificativ capacitatea LLM de a rezolva sarcini complexe, de exemplu probleme matematice sau puzzle-uri logice, fără a modifica parametrii modelului în sine[1]. Practic, CoT îndeamnă modelul să descompună pas cu pas o problemă complexă în etape mai simple, imitând cursul secvențial al gândirii.
O dezvoltare a acestei idei a constituit-o tehnica Self-Consistency: în loc de un singur lanț de gânduri, se generează mai multe lanțuri independente, după care se alege cel mai convingător dintre ele[1]. Aceasta permite modelului să examineze diferite abordări ale soluției și reduce riscul de a obține un răspuns eronat din cauza urmării unui singur fir de raționament greșit. Cu toate acestea, chiar și mai multe lanțuri CoT nu oferă posibilitatea de a „combina idei": fiecare lanț este examinat izolat, iar modelul doar selectează cel mai bun, fără a combina conținuturile lor.
Pentru a depăși această limitare, a fost propusă schema Tree-of-Thoughts (ToT) – „arborele gândurilor"[1]. În ToT, procesul de raționament este organizat ca un arbore: în fiecare punct, modelul poate genera mai multe variante de dezvoltare a gândului (ramificații), după care are loc evaluarea acestor stări intermediare și selecția celor mai promițătoare pentru aprofundare ulterioară[1]. Utilizând căutarea în arbore (de exemplu, în lățime — BFS, sau în adâncime — DFS) și posibilitatea de a reveni la noduri și de a dezvolta o altă ramură, Tree-of-Thoughts oferă modelului lingvistic un mecanism mai puternic de rezolvare a sarcinilor complexe decât CoT liniar[1]. Apar noi posibilități, precum revenirea și revizuirea: dacă o ramură conduce la un impas, se poate reveni la nodul anterior și se poate încerca o altă cale[1]. Această metodă și-a dovedit eficiența în rezolvarea sarcinilor logice și de căutare, unde enumerarea variantelor și planificarea joacă un rol important.
Cu toate acestea, arborele gândurilor impune și restricții rigide: fiecare gând (nod al arborelui) aparține unei singure ramuri, interacțiunea are loc doar între nodurile părinte și cele copil, iar ramuri diferite nu se pot contopi sau face schimb de informații[3]. Cu alte cuvinte, schimbul încrucișat de idei (cross-pollination) între diferite ipoteze în cadrul unei singure soluții este dificil: ramurile arborelui se dezvoltă independent și se reunesc doar la rădăcină, când este ales cel mai bun lanț de raționament[3]. În gândirea creativă sau analitică reală, omul revine adesea la o idee examinată anterior și o combină cu o altă ramură de raționament. Un astfel de entrelacement de gânduri depășește cadrul structurii unui arbore[1].
Aceste observații i-au condus pe cercetători la ideea unei structuri mai flexibile — un graf, unde legăturile dintre gânduri nu sunt limitate și pot forma o rețea complexă. Așa cum se menționează într-o recenzie analitică din 2024, apariția lanțurilor, arborilor și grafurilor de gânduri reflectă nașterea unei noi clase de metode capabile să amplifice semnificativ capacitățile LLM prin structurarea explicită a procesului de raționament[4]. În special, prompturile structurate au permis îmbunătățiri notabile ale rezultatelor LLM în multe domenii — de la rezolvarea problemelor matematice și a puzzle-urilor logice până la planificare și chiar scriere creativă[4]. Pe acest fond general a apărut schema Graph-of-Thoughts ca un pas următor în dezvoltarea metodelor de prompting structurat.
Conceptul Graph-of-Thoughts: structura grafică a gândurilor
Graph-of-Thoughts propune reprezentarea fluxului de execuție a sarcinilor de către modelul lingvistic sub forma unui graf orientat arbitrar. Formal, graful gândurilor în GoT este un ansamblu de vârfuri (gânduri) și muchii (dependențe între gânduri)[1]. Vârful grafului este un gând individual al modelului — prin acest termen se înțelege orice unitate semnificativă dependentă de contextul sarcinii: poate fi o afirmație separată, un pas al soluției, un fragment de text, un paragraf, un bloc de cod etc., generat de model ca răspuns la o interogare[1][1]. O muchie între vârfuri înseamnă că un gând a fost utilizat la generarea altuia — adică în prompt este indicat explicit că modelul trebuie să se bazeze pe un anumit rezultat anterior pentru a obține unul nou[1]. Astfel, muchiile fixează dependențele: de ce date obținute anterior depinde pasul curent de raționament.
Cea mai importantă distincție a GoT față de structurile mai simple este posibilitatea agregării și fuzionării gândurilor. În graf este permis ca un vârf (un gând nou) să aibă mai mulți predecesori[1]. Aceasta corespunde situației în care două sau mai multe lanțuri separate de raționament se reunesc: modelul primește ca intrare mai multe fragmente generate anterior și pe baza lor formează o concluzie sintetizată[1]. De exemplu, rezolvând o problemă, modelul poate examina în paralel două ipoteze, iar apoi să creeze un nou gând care reunește aspectele pozitive ale ambelor ipoteze și elimină dezavantajele lor[1][1]. Astfel de operații de agregare erau imposibile în cadrul schemei arborescente (unde fiecare nod are un singur părinte), dar se realizează în mod natural în cea grafică[1]. Pe lângă fuzionarea ideilor, graful permite introducerea și a legăturilor de feedback (feedback loops): în principiu, structura GoT nu interzice ciclurile, adică modelul poate returna un anumit rezultat la o etapă anterioară de raționament pentru reprelucrare sau rafinare[1]. Autorii asociază aceasta cu analogia conexiunilor recurente din rețelele neuronale ale creierului, unde ieșirea unui grup de neuroni poate acționa înapoi asupra straturilor anterioare, formând circuite închise de gândire[1].
Practic, implementarea Graph-of-Thoughts necesită o organizare specială a dialogului cu modelul. Cercetătorii au dezvoltat un cadru arhitectural modular pentru GoT[1]. În acesta sunt identificate componente pentru: (1) controlul fin al pașilor individuali (gândurilor) — „controlerul" gestionează ordinea și logica generării gândurilor; (2) formarea dinamică a prompturilor — pentru fiecare pas, un modul special formează un prompt pe baza contextului curent și a vârfurilor selectate ale grafului (predecesori); (3) parsarea și evaluarea răspunsurilor modelului — fragmentele primite de la LLM sunt analizate și evaluate în funcție de calitate, utilitate sau conformitate cu criteriile sarcinii[5]. Arhitectura GoT permite astfel construirea interactivă a grafului de raționamente: după fiecare pas se ia decizia privind adăugarea de noi vârfuri, modul de legare a acestora cu precedentele, ce ramuri să continue sau să combine. Datorită modularității, un astfel de framework poate fi extins cu noi tipuri de „transformări ale gândurilor" (de exemplu, operații speciale cu graful) și adaptat pentru diverse modele (autorii au testat cu succes GoT cu LLM din familiile GPT-3.5, GPT-4, LLAMA 2 și altele)[1]. O proprietate importantă constă în faptul că GoT nu necesită modificarea parametrilor modelului lingvistic în sine — toate îmbunătățirile sunt obținute prin construirea mai inteligentă a interogărilor și procesarea răspunsurilor[1]. Aceasta înseamnă că LLM-urile puternice existente pot fi utilizate „ca atare", iar Graph-of-Thoughts joacă rolul unui suprastrat care le gestionează funcționarea.
Trebuie menționat că termenul Graph-of-Thought a apărut și într-o altă dezvoltare independentă, diferită de abordarea lui Besta și colegilor. În 2023, Yao Yao și coautorii au propus o metodă de îmbunătățire a reasoning-ului la LLM printr-un modul suplimentar encoder al grafului de gânduri, care necesita fine-tuning al modelului[6]. Lucrarea lor intitulată „Beyond Chain-of-Thought, Effective Graph-of-Thought Reasoning in Language Models" descrie o arhitectură în două etape: mai întâi se generează un graf de afirmații intermediare interconectate, apoi acesta este transformat de un encoder special și integrat în model printr-un mecanism de gated fusion[6]. Această abordare hibridă cu antrenament a demonstrat o anumită creștere a preciziei în sarcini, de exemplu pe setul multimodal de întrebări ScienceQA precizia a crescut de la 85,2% la 87,6% la utilizarea modelului T5-base[6]. Cu toate acestea, această abordare, deși similară ca denumire, diferă în mod fundamental: necesită modificarea modelului (fine-tuning) și nu reprezintă o schemă de prompt engineering. Autorii abordării GoT originale (AAAI 2024) indică explicit că nu examinează în lucrarea lor modelul lui Yao et al., deoarece se concentrează tocmai pe metodele fără actualizarea parametrilor LLM[1]. Astfel, Graph-of-Thoughts în contextul acestei recenzii este tocmai un framework la nivelul prompturilor, și nu o modificare a arhitecturii rețelei neuronale.
Aplicare și rezultate
Autorii GoT au demonstrat avantajele sale pe o serie de sarcini dificil de rezolvat cu un singur prompt direct (input-output prompting) sau chiar cu un lanț de gânduri. Caracteristica distinctivă a unor astfel de sarcini este că pot fi descompuse în mai multe părți (subsarcini), aceste părți pot fi rezolvate separat, iar apoi răspunsul complet poate fi sintetizat din rezultatele parțiale[1]. Printre exemplele examinate se numără: sortarea unei liste neordonate, numărarea cuvintelor cheie dintr-un text (de exemplu, pentru rezumarea unui document), efectuarea operațiilor pe mulțimi (reuniunea, intersecția listelor etc.), precum și fuzionarea documentelor text (reunirea informațiilor din mai multe surse)[1]. În toate aceste cazuri, Graph-of-Thoughts permite descompunerea naturală a sarcinii. De exemplu, pentru sortare, lista este împărțită în părți, fiecare parte este sortată separat ca ramură independentă de gânduri, după care rezultatele sunt combinate (imitând un algoritm de tipul merge sort); sau la analiza textelor, modelul poate extrage în paralel informații din documente diferite, pentru a le centraliza ulterior.
Rezultatele experimentale confirmă eficiența schemei GoT. Conform raportului lui Besta și colegilor, în sarcina de sortare, graful gândurilor a permis îmbunătățirea semnificativă a calității soluției față de abordările anterioare[1]. Astfel, precizia sortării la utilizarea GoT s-a dovedit a fi cu 70% mai mare decât la utilizarea simplului lanț de gânduri CoT, și cu 62% mai mare decât la utilizarea arborelui de gânduri ToT[1]. Totodată, metoda reduce consumul de resurse computaționale: numărul de apeluri la model (și, respectiv, volumul tokenizat al interogărilor) a scăzut cu 31% față de Tree-of-Thoughts pentru aceeași sarcină[1]. Aceasta înseamnă că organizarea grafică a raționamentelor nu doar a îmbunătățit rezultatul final, ci a și făcut soluția mai economică, evitând calculele redundante prin combinarea inteligentă a concluziilor intermediare. Câștiguri similare au fost obținute și pe alte sarcini de test, în special acolo unde este necesară agregarea unor informații eterogene. Cercetătorii observă că GoT este cel mai eficient tocmai pentru sarcinile compozite, alcătuite din mai multe elemente: „Graph-of-Thoughts este deosebit de potrivit pentru sarcinile care se descompun în mod natural în subsarcini mai mici, rezolvabile separat cu reunirea ulterioară a rezultatelor"[1]. În astfel de cazuri, graful gândurilor este capabil să cuprindă toate aspectele problemei și să sintetizeze o soluție mai completă decât urmând o singură linie de raționament.
Pentru o înțelegere mai nuanțată a motivului pentru care o modalitate de construire a promptului este mai bună decât alta, în lucrarea din 2024 a fost propusă o metrică specială — „volumul unui gând" (volume of a thought)[1]. Volumul este definit pentru fiecare gând individual (vârf al grafului) ca numărul celorlalte gânduri din care se poate ajunge la gândul dat prin muchii orientate (mai simplu spus, câtor pași intermediari îi datorează informația sa)[1]. În Chain-of-Thought, orice gând se bazează pe un singur predecesor, deci volumul său este egal cu 1 (lanț liniar). În arborele gândurilor, volumul poate fi mai mare, dar rămâne totuși limitat de structura ramurii individuale. În graf însă, datorită agregării, un vârf individual poate acumula contribuția multor altora — „volumul" său este semnificativ mai mare[1]. S-a demonstrat că GoT permite concluziilor finale să se bazeze pe un volum semnificativ mai mare de gânduri precedente, reunindu-le conținutul. Acest fapt reflectă o acoperire mai profundă a spațiului de soluții și servește drept explicație cantitativă a avantajelor raționamentului grafic față de schemele mai simple.
Comparație și semnificație
Graph-of-Thoughts reprezintă în prezent forma cea mai generalizată de prompting structurat pentru LLM. În tabelele de comparație ale diverselor scheme (CoT, CoT cu Self-Consistency, ToT și GoT) se subliniază că doar GoT suportă o topologie arbitrară a procesului de gândire[1]. El include capacitățile tuturor abordărilor anterioare: poate funcționa atât ca un singur lanț, cât și ca un arbore cu ramificații, și ca o combinație de multiple lanțuri, dacă aceasta este potrivită pentru rezolvarea sarcinii[1]. Esențialul este că nu există restricții rigide privind legătura dintre pași, ceea ce face teoretic spațiul posibilelor strategii de raționament maximal de larg[1].
Este important de înțeles că flexibilitatea GoT vine cu prețul unei complexități mai mari de control. Implementarea grafului de gânduri necesită un extern algoritm-orchestrator, care va decide când și ce gânduri să genereze, care dintre ele să le selecteze sau să le combine, când să oprească procesul și să furnizeze răspunsul. Într-un simplu CoT nu este nevoie să se ia astfel de decizii — modelul generează el însuși raționamentul liniar până la capăt. În ToT, o parte din gestionare revine algoritmului de căutare în arbore (de exemplu, alegerea nodului pentru extindere). În GoT, gradul de libertate este mai mare, iar eficiența metodei depinde de calitatea euristicilor care evaluează rezultatele intermediare și de construirea corectă a prompturilor la fiecare pas[1]. Astfel, Graph-of-Thoughts poate fi privit nu doar ca un format de interogare, ci ca o structură de raționament aplicată peste procesul de interacțiune cu LLM — un fel de plan dinamic prin care modelul rezolvă sarcina, iar utilizatorul (sau programul-controlor) dirijează acest proces.
Apariția Graph-of-Thoughts reflectă dorința de a face funcționarea modelelor lingvistice mari mai interpretabilă și controlabilă. Prin definirea explicită a structurii soluției, cercetătorii nu numai că obțin o calitate mai bună, dar dobândesc și posibilitatea de a analiza cum a ajuns modelul la o anumită concluzie. Aceasta apropie abordările din NLP de metodele clasice de căutare algoritmică și planificare, dar acum executarea pașilor este încredințată unui model de rețea neuronală. O serie de experți consideră prompturile structurate (lanțuri, arbori, grafuri de gânduri) ca o direcție promițătoare, capabilă să depășească limitările „cutiei negre" în modelele profunde și să sporească fiabilitatea funcționării acestora pe sarcini complexe[4][4].
Metodologia Graph-of-Thoughts continuă să se dezvolte activ. Codul și exemplele pentru implementarea GoT au fost puse de autori la dispoziția publicului[1], ceea ce a permis comunității să experimenteze cu noua abordare. Apar și extensii: de exemplu, versiuni multimodale ale grafului de gânduri, combinând textul cu imagini și alte tipuri de date[3][3], precum și încercări de a integra ideile GoT direct în arhitectura modelelor (ca în lucrarea menționată Yao et al., 2023). În 2025 a apărut o recenzie-taxonomie detaliată a metodelor Chain-of-Thought, Tree-of-Thoughts și Graph-of-Thoughts, care sistematizează cunoștințele acumulate și descrie fundamentele teoretice ale unor astfel de abordări[4][4]. Toate acestea vorbesc despre interesul mare al comunității științifice față de gestionarea structurată a gândirii LLM. Graph-of-Thoughts s-a dovedit deja a fi un instrument eficient pentru rezolvarea sarcinilor complexe și, probabil, va deveni baza pentru inovații ulterioare în domeniul soluțiilor de AI care combină puterea modelelor lingvistice mari cu transparența și logica algoritmilor clasici.
Referințe
- Articolul original „Graph of Thoughts: Solving Elaborate Problems with Large Language Models" pe arXiv
- Versiunea HTML a articolului original
- Recenzia „Demystifying Chains, Trees, and Graphs of Thoughts" pe arXiv
- Articolul „Beyond Chain-of-Thought, Effective Graph-of-Thought Reasoning in Language Models" pe arXiv
- Multimodal Graph-of-Thoughts — articol Deepgram
- LLMs Graph of Thoughts Framework — articol pe Medium
Bibliografie
- Besta, M. et al. (2024). Graph of Thoughts: Solving Elaborate Problems with Large Language Models. arXiv:2308.09687.
- Yao, S. et al. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601.
- Yao, Y. et al. (2023). Beyond Chain-of-Thought: Effective Graph-of-Thought Reasoning in Language Models. arXiv:2305.16582.
- 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.
- Wei, J. et al. (2024). Demystifying Chains, Trees, and Graphs of Thoughts. arXiv:2401.14295.
- Huang, S. et al. (2023). Language Is Not All You Need: Aligning Perception with Language Models (Kosmos-1). arXiv:2302.14045.
- Mitra, C. et al. (2024). Compositional Chain-of-Thought Prompting for Large Multimodal Models. In CVPR 2024. PDF.
- Zheng, G. et al. (2023). DDCoT: Duty-Distinct Chain-of-Thought Prompting for Multimodal Reasoning in Language Models. arXiv:2310.16436.
- Mu, J. et al. (2023). Learning to Compress Prompts with Gist Tokens. arXiv:2304.08467.
Note
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 1.40 1.41 1.42 1.43 Besta, Maciej et al. «Graph of Thoughts: Solving Elaborate Problems with Large Language Models». ar5iv.labs.arxiv.org. [1]
- ↑ Besta, Maciej et al. «Graph of Thoughts: Solving Elaborate Problems with Large Language Models». arXiv. [2]
- ↑ 3.0 3.1 3.2 3.3 3.4 Grygiel, Jacek. «Multimodal Graph-of-Thoughts: How Text, Images, and Graphs Lead to Better Reasoning». Deepgram. [3]
- ↑ 4.0 4.1 4.2 4.3 4.4 4.5 Wei, Jason et al. «Demystifying Chains, Trees, and Graphs of Thoughts». arXiv. [4]
- ↑ Wo, Jacek. «LLMs Graph of Thoughts Framework. Case study». Medium. [5]
- ↑ 6.0 6.1 6.2 Yao, Yuqing et al. «Beyond Chain-of-Thought, Effective Graph-of-Thought Reasoning in Language Models». arXiv. [6]