====== LangGraph ====== 🗂️ [[start|Terug naar start]]\\ ⛓️ [[longchain_home|LangChain start]] ♻️🧩 [[langgraph-basis|LangGraph Basis principes]]\\ ♻️💫 [[langgraph-tests|LangGraph Tests]] [[https://chatgpt.com/g/g-iE0BwwI97-ai-agent-assistent-nl|GPT: A3D AI Agent Assistent (nl)]] **Simpelste Graph mogelijk met uitleg over State!**\\ [[https://www.youtube.com/watch?v=BDFP6VSOARk|LangGraph State in Less Than 10 Minutes]]💥 💥\\ [[https://github.com/aidev9/tuts/tree/main/langgraph/state/tutorial-1|Bijbehoorende bestanden op GtHub]] [[https://academy.langchain.com/courses/take/intro-to-langgraph/lessons/58238107-course-overview|Cursus LangGraph]]💥 💥 [[https://youtu.be/w_HeP0A2MF8?si=kzOxp18UbHWtsbQV|basis opzet LangGraph met 3 Py bestanden - LangGraph FULL Guide]] met streamlit GUI💥 💥\\ [[https://github.com/coleam00/ai-agents-masterclass/tree/main/7-langgraph-agent|GitHub code best tool...]] ===== Over LangGraph ===== > [[https://langchain-ai.github.io/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. [[https://langchain-ai.github.io/langgraph/tutorials/introduction/|LangGraph documentatie]] pip install --quiet -U langgraph **Wat wil ik bouwen:**\\ Een applicatie voor therapeuten die een account op kwaliteitsteem.nl hebben die taken kan uitvoeren, gegevens op kan halen en aanpassen d.m.v. Natuurlijke Taal. Verder heeft de applicatie al een AI-Chatbot (CATja) waarmee de therapeut kan chatten. Mogelijk moet ook deze Chatbot in de CAT Agent worden geïntegreerd. 🔹 De applicaties die ik bouw zijn opgebouwd ut Classes\\ 🔹 De applicaties zijn gemaakt met Streamlit GUI //(gebruikersinterface)// **Voorafgaand aan deze //(de huidige)//pagina heb ik twee onderzoek pagina's gemaakt:**\\ 1️⃣ [[langgraph-basis|"LangGraph Basis principes" pagina]] met diverse tutorial en video's waarin basis principes van LangGraph worden uitgelegd en door mij wat verder uitgewerkt.\\ 2️⃣ [[langgraph-tests|"LangGraph Tests" pagina]] waar ik de tutorials van de [[langgraph-basis|"LangGraph Basis principes" pagina]] verder uitwerk en aanpas voor eigen gebruik:\\ 🔸 Ik werk zo veel mogelijk met **Classes** in mijn projecten\\ 🔸 Ik gebruik **[[steamlit_home|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 [[https://langchain-ai.github.io/langgraph/tutorials/memory/long_term_memory_agent/|geheugen]] van de Graph State. ===== Geheugen ===== **[[https://langchain-ai.github.io/langgraph/tutorials/memory/long_term_memory_agent/|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.// **[[https://langchain-ai.github.io/langgraph/concepts/persistence/|Kortetermijn geheugen]]**\\ Dit soort geheugen is 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/gesprek)//** **[[https://langchain-ai.github.io/langgraph/concepts/persistence/|Document m.b.t. Kortetermijn geheugen gebruik LangGraph]]**\\ **[[https://langchain-ai.github.io/langgraph/how-tos/persistence/|Hoe je persistentie ("geheugen") aan uw Graph (grafiek) kunt toevoegen]]** ---- ===== Links ===== [[https://langchain-ai.github.io/langgraph/|LangGraph Home]]\\ [[https://langchain-ai.github.io/langgraph/tutorials/introduction/|LangGraph Documentatie]]\\ [[https://academy.langchain.com/courses/intro-to-langgraph|LangChain Academy]]\\ **[[https://academy.langchain.com/courses/take/intro-to-langgraph/lessons/58238107-course-overview|Cursus LangGraph]]** 🔗 **[[langgraph-basis#links|Meer Links]]** ---- ===== LangGraph Schema ===== {{ LangGraph_basis.png?1000 }} ----