Dit is een oude revisie van het document!
Inhoud
LangGraph
ποΈ Terug naar start
βοΈ LangChain start
π« LangGraph Tests
β»οΈ LangGraph Basis principes
Over LangGraph
LangGraph is een bibliotheek voor het bouwen van stateful, multi-actor applicaties met LLM's, gebruikt om agent en multi-agent workflows te creΓ«ren. Vergeleken met andere LLM frameworks, biedt het deze kernvoordelen: cycles, controlability en persistence. Met LangGraph kunt u flows definiΓ«ren die cycles omvatten, essentieel voor de meeste agentische architecturen, wat het onderscheidt van DAG-gebaseerde oplossingen. Als een heel low-level framework, biedt het fijnmazige controle over zowel de flow als de status van uw applicatie, cruciaal voor het creΓ«ren van betrouwbare agents. Bovendien bevat LangGraph ingebouwde persistence, wat geavanceerde human-in-the-loop en geheugenfuncties mogelijk maakt.
Voorafgaand aan deze (de huidige pagina) heb ik twee onderzoek pagina's gemaakt:
1οΈβ£ "LangGraph Basis principes" pagina met diverse tutorial en video's waarin basis prncipes van LangGraph worden uitgelegd en door mij wat verder uitgewerkt.
2οΈβ£ "LangGraph Tests" pagina waar ik de tutorials van de "LangGraph Basis principes" pagina verder uitwerk en aanpas voor eigen gebruik:
πΈ Ik werk zo veel mogelijk met Classes in mijn projecten
πΈ Ik gebruik Streamlit om de GUI te bouwen
Bovenstaande maakt dat mijn gewenste manier van werken eerst nog wat oplossingen vraagt voor ik zo maar even een applicatie kan bouwen die opgebouwd is met Classes en een Streamlit GUI heeft.
πΈ Online zijn bijna geen voorbeelden te vinden die opgebouwd zijn met Classes
πΈ Bij een Streamlit applicatie wordt het script telkens opnieuw uitgevoerd wat een speciale behandeling vraagt m.b.t. het geheugen van de Graph State.
Geheugen
A Long-Term Memory Agent
Dit soort geheugen is bedoeld om eerdere βgesprekkenβ te kunnen herinneren. Voor dit stoort geheugen is een Database nodig en het is niet het geheugen waar ik naar op zoek ben.
Kortetermijn geheugen
Dit soort geheugen in bedoeld om de eerdere stappen in een conversatie te herinneren en dit is het soort geheugen dat ik nodig heb om LangGraph in een streamlit applicatie te laten werken. Dit soort geheugen is ingebouwd in LangGraph. In dit geheugen worden State updates uitgevoerd en terug gehaald d.m.v. een mee te geven βthread_idβ. Om deze thread_id te kunnen gebruiken moet deze opgeslagen worden in een Streamlit session_state zodat deze bij iedere re-run van Streamlit kan worden opgehaald door deze in de configuratie mee te geven:
config = {"configurable": {"thread_id": "123456"}}
β οΈ De thread_id moet een unieke ID (string) zijn voor iedere thread (daad)
Document m.b.t. Kortetermijn geheugen gebruik LangGraph
Hoe je persistentie ("geheugen") aan uw grafiek kunt toevoegen