Conversatiecontinuïteit
- • Berichthistorie opgebouwd door LangGraph
- • Agent- en toolstappen weergegeven in graph state
- • Aanvullende runtimevelden die door orchestration worden gebruikt
AI-tool
Een gesprek moet genoeg onthouden voor de volgende vraag. Het model heeft niet iedere eerdere toolcall en ieder resultaat nodig in de volgende prompt.
Een implementatieblik op LangGraph-checkpoints, thread-scoped conversatiehistorie, het vormgeven van tijdelijke messages en oversized tooloutputs.
Het engineeringprobleem
Een enterprise-assistent kan een vraag beantwoorden via een SQL-tool, Power BI-semantisch model of documentretriever. Een vervolgvraag moet genoeg van die uitwisseling behouden om “die klanten” of “vorige maand” te interpreteren. Maar iedere toolrequest en het volledige resultaat opnieuw afspelen in iedere volgende modelcall maakt de prompt steeds groter.
Het ontwerpprobleem heeft twee verschillende levensduren: duurzame conversatiestate en de tijdelijke context die voor één inference-stap wordt samengesteld. Het beheren van het ene beheert niet automatisch het andere.
Iedere afgeronde tooluitwisseling wordt opnieuw verstuurd, zelfs wanneer alleen het definitieve antwoord relevant is voor de nieuwe vraag.
Gebruik thread-scoped checkpoints voor conversatiecontinuïteit en bereid direct vóór het aanroepen van het model een kleinere berichtenlijst voor.
Twee lagen · verschillende verantwoordelijkheden
De LangGraph-state legt de werkconversatie vast, inclusief messageobjects die door agent- en toolnodes worden geschreven. Een aparte message-buildingstap kiest de vorige turns en actieve exchange die voor de huidige modelinvocation worden gebruikt. Dat onderscheid is bewust en geen automatisch gevolg van MongoDB.
AI-tool
Deze view wordt samengesteld voor inference. Minder berichten selecteren verwijdert oudere checkpoints niet vanzelf.
Dit artikel gebruikt context om de message/instruction-payload voor een modelcall te bedoelen. Deel 4 gebruikt businesscontext om de semantische betekenis van bedrijfsdata te bedoelen. Beide zijn vormen van context engineering, maar lossen verschillende problemen op.
State persistence
Ask Titan start zijn LangGraph-orchestrator met een conversatiespecifieke threadidentifier en compileert de graph met een MongoDB-backed asynchrone checkpointer. Wanneer een vervolgvraag dezelfde thread gebruikt, kan LangGraph de bestaande state laden voordat het nieuwe gebruikersbericht wordt verwerkt.
Er is ook een aparte, applicatiegerichte conversation record die gebruikers- en assistentberichten presenteert. Die moet niet worden verward met LangGraph's technische checkpoint- en intermediate-write-records. Beide bestaan voor verschillende consumers.
Conversatielifecycle
De applicatie wijst een conversation ID toe dat ook als LangGraph thread-boundary wordt gebruikt.
De graph verwerkt berichten en toolresponses en slaat daarna zijn technische state op via de MongoDB-backed checkpointer.
Wanneer een vervolgvraag in dezelfde thread binnenkomt, kan LangGraph eerst de opgeslagen checkpoint-state laden. De modelweergave voor de volgende beurt wordt daarna afzonderlijk samengesteld.
Gebruikersgericht gespreksrecord waarmee berichten en antwoorden worden weergegeven.
Technologie
De applicatieconversatiehistorie en LangGraph-checkpoints zijn afzonderlijke persisted representaties. Ze dienen verschillende runtime- en UI-doelen.
Promptassembly
Ask Titan zoekt het meest recente gebruikersbericht. Eerdere, afgeronde turns worden een beperkte reeks van gebruikersvraag- en definitieve assistent-antwoordparen. Tussentijdse tool calls en hun responses worden voor die afgeronde turns niet opnieuw afgespeeld. De actieve turn behoudt zijn tool-call-uitwisseling zodat het model kan doorredeneren met de toolrespons die het net heeft ontvangen.
Waarom daalde de marge?
Roep Power BI-tool aan
Gedetailleerd resultaat + metadata
Margedaling verklaard
Welke klanten veroorzaakten dit?
Roep specialistische tool aan
Huidig resultaat
Context
vormgeven
Selecteer berichten, verwijder geen state
Waarom daalde de marge?
Margedaling verklaard
Eerdere tool calls en resultaten worden in deze modelpass niet opnieuw afgespeeld.
Welke klanten veroorzaakten dit?
Roep specialistische tool aan
Huidig resultaat of korte melding
State wordt bewaard. Modelcontext wordt geselecteerd. Afgeronde turns dragen hun vraag en definitieve antwoord bij. De actieve turn houdt de assistant-tool-call gekoppeld aan de response zodat het model de uitwisseling kan voortzetten.
Eén conversatie · twee turns
Een vervolgvraag gaat verder in dezelfde LangGraph-thread. Ask Titan herstelt de opgeslagen checkpoint-state en bouwt een nieuwe modelweergave op uit geselecteerde eerdere beurten en de huidige vraag.
Als de agent een toegestane specialist aanroept, komt het resultaat terug voor een volgende modelpass voordat het definitieve antwoord wordt geproduceerd. Het nieuwe antwoord wordt onderdeel van de opgeslagen state, terwijl eerdere tooluitwisselingen niet opnieuw aan het model hoeven te worden aangeboden.
Grote toolresultaten
AI-assisted planning
Dat is een prompt-view-substitutie. Het oorspronkelijke toolbericht wordt door deze specifieke shapingfunctie niet herschreven. Het betekent ook niet dat de volledige data automatisch wordt samengevat of dat ieder resultaat altijd via een aparte retrieval API beschikbaar is.
Eén toolresultaat · twee representaties
Gedetailleerde rijen · metadata · tussentijds bewijs
“Deze tooloutput was te groot om volledig op te nemen. Vraag om een smallere of samengevatte weergave.”
Het model ontvangt de melding, niet de weggelaten rijen.
Dit mechanisme schat individuele toolberichten. Het garandeert niet dat de complete modelcontext binnen een totale tokenbudget blijft.
Operationele beslissingen
Context shaping is nuttig, maar geen vervanging voor lifecycle-, security- en quality-controls. Deze verschillen zijn belangrijk wanneer je een werkende assistent omzet in een productieservice.
| Aandachtspunt | Huidig Ask Titan-mechanisme | Grens / engineeringoverweging |
|---|---|---|
| Threadcontinuïteit | LangGraph graph state ondersteund door MongoDB-checkpoints. | Een gedeelde thread moet nog steeds worden benaderd via autorisatie op applicatieniveau voor gebruiker en conversatie. |
| Modelinputgrootte | Selectie van afgeronde turns en benadering van de omvang per tool-payload. | Dit bewijst niet dat iedere mogelijke request binnen het totale context window van een model past. |
| Memoryretentie | Afgeronde turns worden uit een promptview weggelaten wanneer ze niet zijn geselecteerd. | Prompt-omissie is geen deletion, retention control of garantie dat checkpointdata is gewist. |
| Samenvattingen | Afgeronde turns bewaren vraag-/antwoordparen in plaats van door het LLM gegenereerde samenvattingen. | Hier wordt geen general-purpose automatische conversatiesamenvatter geclaimd. |
| Herstarten en replayen | Checkpoints ondersteunen het laden van eerdere graph-state. | Externe side effects en idempotency vereisen eigen afhandeling; checkpointing alleen is onvoldoende. |
| Gevoelige content | Applicatiegerichte conversatierecords en technische checkpoints zijn afzonderlijke stores/representaties. | Elk vereist een expliciete review van access, encryption, logging en retention; het ene beveiligt het andere niet automatisch. |
De orchestrator registreert benaderende aantallen voor volledige state en de samengestelde modelview en verzamelt gerapporteerde model-usage-metadata waar beschikbaar. Die metingen helpen contextgroei te herkennen; benaderend tellen is geen contractuele tokenlimiet of performancebenchmark.
Engineeringconclusie
LangGraph en MongoDB bewaren conversatiecontinuïteit. Ask Titan stelt daarna voor iedere model-call een nieuwe message view samen: recente afgeronde gebruiker/final-answer-paren, de actieve tooluitwisseling en begrensde representaties van te grote tooloutputs.
De architecturale winst is niet 'oneindig geheugen'. Het is een expliciete boundary tussen duurzame state en de informatie die een model op dit moment nodig heeft. Die boundary kan onafhankelijk worden getest, geobserveerd en ontwikkeld.
Het ontwerp in één zin
Bewaar genoeg om door te kunnen gaan.
Stuur alleen wat helpt om te antwoorden.
Volgende in de serie · Deel 6 van 7
Hoe Ask Titan relevante informatie uit bedrijfsdocumenten ophaalt en toevoegt aan de context die wordt gebruikt om een antwoord te genereren.
Lees deel 6FAQ
Praktische antwoorden over checkpointing, threadcontinuïteit, promptselectie, toolmessages en contextgroei.
State is de verzamelde werkdata van de graph, via checkpoints in een thread bewaard. LLM-context bestaat uit de geselecteerde berichten en instructies die aan één modelcall worden meegegeven; Ask Titan construeert die vanuit state zonder de twee gelijk te stellen.
De orchestrator gebruikt het conversation ID als LangGraph threadidentifier en een asynchrone MongoDB-backed checkpointer. Hergebruik van dezelfde thread laat de volgende invocation doorgaan vanuit de opgeslagen graphstate.
Nee. In afgeronde turns houdt de prompt-view recente gebruikersberichten en definitieve assistant-antwoorden. De actieve turn behoudt de tooluitwisseling, onder voorbehoud van substitutie voor oversized output.
De geïnspecteerde orchestrator condenseert afgeronde turns door question/final-answer-paren te selecteren; hij gebruikt geen algemene LLM-gegenereerde conversatiesamenvatting in het geobserveerde pad.
Nee. Prompt-view-selectie verwijdert niet automatisch berichten of checkpoints. Retention en deletion vereisen aparte lifecycle-controls.
De runtime schat de grootte van individuele toolberichten. Als die boven de prompt-view-threshold uitkomt, ontvangt het model een korte uitlegmelding in plaats van de volledige payload. De shapingoperatie wijzigt het oorspronkelijke opgeslagen toolbericht zelf niet.
Nee. Checkpointing ondersteunt opgeslagen graph state en hervatting. Idempotency en externe side-effect-handling vereisen aanvullend application-level ontwerp.
Nee. Context management gaat hier over welke conversatieberichten de LLM bereiken. In deel 4 gaat business-context engineering over bedrijfsspecifieke definities, metadata en betekenis die een Power BI-specialist gebruikt.
Stateful AI-architectuur
Ask Titan combineert stateful orchestration, specialistische capabilities en beheerde datatoegang. Bespreek hoe je een LangGraph-prototype omzet in een assistent die je teams bij echte businessvragen kunnen blijven gebruiken.
Vier afzonderlijke engineeringverantwoordelijkheden
Technische runtimestate en tijdelijke writes die worden gebruikt om de thread voort te zetten.
Productspecifieke observaties zijn gebaseerd op de aangeleverde Ask Titan-repository. Deze primaire bronnen leggen LangGraph-persistence, message selection en het verschil tussen tijdelijke modelcontext en duurzame state uit. De pseudocode en diagrammen zijn bewust vereenvoudigd.