[{"data":1,"prerenderedAt":743},["ShallowReactive",2],{"blog-langgraph-hu":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":22,"sources":31,"cover":50,"og":51,"expertise":52,"locales":53,"lang":56,"title":57,"description":58,"coverAlt":59,"metaTitle":60,"takeaways":61,"faq":67,"toc":80,"blocks":105,"others":472},"langgraph","2026-07-17",10,"agents",[9,10,11,12,13],"LangGraph","Agent orchestration","Durable execution","Human-in-the-loop","State machines",[4,15,16,17,18,19,20,21],"langgraph vs langchain","langgraph checkpointer","durable execution agents","langgraph postgres checkpointer","langsmith pricing","langgraph human in the loop","agent framework comparison",[23,25,28],{"name":9,"url":24},"https:\u002F\u002Fwww.langchain.com\u002Flanggraph",{"name":26,"url":27},"Workflow engine","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWorkflow_engine",{"name":29,"url":30},"Apache Beam","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FApache_Beam",[32,35,38,41,44,47],{"title":33,"url":34},"LangGraph documentation: overview","https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flanggraph\u002Foverview",{"title":36,"url":37},"LangGraph documentation: checkpointers and durability modes","https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flanggraph\u002Fcheckpointers",{"title":39,"url":40},"LangGraph documentation: interrupts and the rules of interrupts","https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flanggraph\u002Finterrupts",{"title":42,"url":43},"langchain-ai\u002Flanggraph on GitHub","https:\u002F\u002Fgithub.com\u002Flangchain-ai\u002Flanggraph",{"title":45,"url":46},"LangSmith pricing","https:\u002F\u002Fwww.langchain.com\u002Fpricing",{"title":48,"url":49},"Temporal: LangGraph integration for Python reaches public preview (16 July 2026)","https:\u002F\u002Ftemporal.io\u002Fblog\u002Ftemporal-langgraph-plugin-durable-execution","\u002Fimages\u002Fblog\u002Flanggraph\u002Fcover.webp","\u002Fimages\u002Fblog\u002Flanggraph\u002Fog.jpg","ai-engineer",[54,55,56],"en","de","hu","LangGraph: alacsony szintű futtatókör állapottartó ügynökökhöz","Mit ad a LangGraph egy éles ügynöknek: mentett superstep-ek, megszakítások és streaming, továbbá a tartóssági modell határa és a LangSmith ára.","Négy négyzetes csomópont áll kétrétegű blokkokon, az utolsó előtt hézag.","LangGraph: alacsony szintű ügynök-futtató · Balázs Csorba",[62,63,64,65,66],"A LangGraph orchestrációs futtatókör, nem ügynökkeretrendszer: egy ellenőrzőpontokkal rendelkező állapotgép és semmi más. Az 1.2-es sor szálankénti időkorlátot, hibakezelést, egy kisebb overhead-ű csatornatípust és egy harmadik verziójú streaming API-t ad.","A tartósság a folyamat határánál véget ér. A checkpointer helyreállítja az állapotot egy összeomlás után, de a könyvtáron kívüli valaminek észlelnie kell az összeomlást, és a megfelelő thread_id-del újra be kell lépnie a gráfba.","Az interrupt() az egész csomópontot visszatekri, nem a sort. A megszakítás előtti minden mellékhatás minden folytatáskor újra lefut, így az idempotencia tervezési feltétellé válik, nem csak kívánatos tulajdonsággá.","A könyvtár a GitHubon MIT-licenc alatt áll, 2026 októberében a PyPI-n az 1.2.14 volt aktuális; a pénz a LangSmithben van, ahol a Developer havi 5000 alap-traces ingyenes, a Plus havi 39 dollár ülékenként.","A három tartóssági mód valódi teljesítményleverő: a sync minden checkpointot a következő lépés előtt ír, az exit csak a futás végén.",[68,71,74,77],{"q":69,"a":70},"Ingyenes-e a LangGraph éles használatra?","A könyvtár MIT-licenc alatt áll, és a külön csomagban szállított checkpointerek is azok. A LangSmith opcionális: a Developer csomag egy ülésen havi 5000 alap-traces ingyenesen, a Plus havi 39 dollár ülékenként 10000 traces mellett. Semmi a LangGraphban nem követeli LangSmith-fiókot, bár több csomópontos futás traces nélküli hibakeresése közel a találgatás.",{"q":72,"a":73},"Kell-e LangGraph egy egyszerű ügynökhurokhoz?","Valószínűleg nem. Az eszközhívó hurok egy while ciklus egy modellhívás körül, körülbelül húsz sor. A LangGraph akkor érdemli ki a helyét, ha egy futásnak túl kell élnie egy újraindítást, emberre kell várnia, vagy egy megnevezett lépésből kell folytatnia, mert egy egyszerű hurok ezek egyikét sem tudja leírni.",{"q":75,"a":76},"Mit jelent, hogy az ellenőrzőpont mentés nem tartós végrehajtás?","A checkpointer minden superstepnél kiírja a gráf állapotát; a tartós végrehajtás azt jelenti, hogy maga a futás tovább megy. A könyvtárban semmi nem indítja újra a halott futást, és semmi nem verhindert, hogy két folyamat ugyanazt a szálat egyszerre folytassa. A Temporal 2026 júliusában public preview-ba tette a LangGraph pluginját, amely a gráfot Temporal workflow-ként futtatja, és pontosan ezt a rést zárja.",{"q":78,"a":79},"Mibe kerül valójában az ellenőrzőpontok írása?","Egy adatbázis-írásba csomópontonként és superstepenként, az állapot méretével együtt. Az írási késleltetés a tartóssági módtól függ, de a tárhely a nagyobb probléma: a dokumentáció ütemezett feladatot javasol, amely törli a megőrzési ablaknál régebbi checkpointokat, mert azok korlátlanul nőnek.",[81,84,87,90,93,96,99,102],{"id":82,"title":83},"what-it-is","Mi ez",{"id":85,"title":86},"how-it-works","Hogyan működik",{"id":88,"title":89},"getting-started","Első lépések",{"id":91,"title":92},"persistence","Perzisztencia és tartósság",{"id":94,"title":95},"where-it-falls-short","Hol gyengébb",{"id":97,"title":98},"pricing","Mibe kerül",{"id":100,"title":101},"verdict","Ítélet",{"id":103,"title":104},"sources","Források",[106,110,113,116,119,155,169,170,173,179,182,185,186,189,191,202,215,216,219,234,289,292,305,309,315,335,340,341,347,393,396,399,400,403,411,414,415,418,432,444,445],{"type":107,"content":108},"paragraph",[109],"A LangGraph a LangChain halmaz azon része, amelyik az ügynököt végrehajtja. A csomópontokat és éleket egy közös állapotobjekten deklarálják, a futtatókör pedig superstepenként halad végig a gráfon, és mindegyik után checkpointot ír, hogy a futás megállítható, folytatható és átvizsgálható legyen. Ez az egész termék, és ebből következik az ítélet: ez a legjobb nyílt forráskódú válasz egy szűk kérdésre, és akinek ezt a szűk kérdést jóval kell megválaszolni, annak érdemes ezt választania.",{"type":107,"content":111},[112],"Az ügönök alatt és a modell felett helyezkedik el. A LangChain ügynökabsztrakciói és az újabb deepagents csomag erre épülnek; a CrewAI, a LlamaIndex és az OpenAI Agents SDK ugyanezt a feladatot a másik oldalról közelíti, több beépített véleménnyel. Ahhoz képest, amit saját hurkkal ír az ember, a hozzájárulás a perzisztenciánál számít, nem az orchestrációnál.",{"type":114,"level":115,"id":82,"text":83},"heading",2,{"type":107,"content":117},[118],"A jelenlegi kiadási sor a langgraph 1.2.x. A 1.2.14-es verzió 2026 októberében volt a PyPI-n, és Python 3.10-es vagy újabb verzióját igényli. A repository a Pregelt és az Apache Beamet nevezi meg ihletnek, a NetworkXet pedig a nyilvános interfész mintájául, és kimondja, hogy a könyvtár LangChain nélkül is használható.",{"type":120,"ordered":121,"items":122},"list",false,[123,125,132,134,139,149],[124],"Csomópontok-gráf egy állapotobjekten. A csomópontok részleges frissítéseket adnak vissza, a csatorna-redukerek pedig eldöntik, hogy két párhuzamos írás ugyanahhoz a kulcshoz hogyan egyesül.",[126,127,131],"Checkpointerek, amelyek superstepenként mentik az állapot snapshotját, és szálakba rendezik a futásokat a ",{"tag":128,"children":129},"code",[130],"thread_id"," alapján.",[133],"Store-ok, külön, szálakon átívelő kulcs-érték réteg a hosszú távú memóriához, például felhasználói preferenciákhoz és megosztott referenciaadatokhoz.",[135,138],{"tag":128,"children":136},[137],"interrupt()",", amely a gráf bármely pontján felfüggeszti a csomópontot, és visszaadja a vezérlést a hívónak, amíg a gráfot nem folytatják.",[140,141,144,145,148],"exit, ",{"tag":128,"children":142},[143],"async"," és ",{"tag":128,"children":146},[147],"sync"," tartóssági módok, amelyek hívásonként állíthatók.",[150,151,154],"Típusos streaming. Az 1.2-től a ",{"tag":128,"children":152},[153],"stream_events(..., version=\"v3\")"," külön projekciókat ad az üzenetekhez, értékekhez, megszakításokhoz és a végső kimenethez.",{"type":107,"content":156},[157,158,161,162,144,165,168],"Két API éri el ugyanazt a futtatókört. A gráf API a ",{"tag":128,"children":159},[160],"StateGraph","-re épül, és élekben fejezi ki a vezérlési folyamatot. A funkcionális API szokásos Pythonként adja ezt meg, ",{"tag":128,"children":163},[164],"@entrypoint",{"tag":128,"children":166},[167],"@task"," dekorátorokkal. A funkcionális jobban olvas egy pull requestben; a gráfos képen rajzolódik ki, és ez fontosabb annál, mint amennyire hangzik, ha egy üzemeltető csapatnak hajnali háromkor kell eldöntenie, mit fog tenni az ügynök.",{"type":114,"level":115,"id":85,"text":86},{"type":107,"content":171},[172],"A végrehajtás a Pregel modelljét követi. A futásra kész összes csomópont egy superstepben indul el; amikor mind befejeződik, az írásaik egyetlen checkpointként rögzülnek, és a következő superstep a frissített állapotból ütemeződik. Ezért érdemes törődni a függőben maradó írásokkal: ha egy csomópont hibát dob a superstepben, a sikeres testvéreinek írásai már tartósak, és az újrafuttatás nem ismétli meg őket. A fan-outban futó drága modellhívásokat így csak egyszer fizetik meg.",{"type":174,"src":175,"alt":176,"wide":177,"caption":178},"image","\u002Fimages\u002Fblog\u002Flanggraph\u002Fdiagram-8.webp","Egy LangGraph superstep és a checkpointja A csomópontok egy superstepen belül párhuzamosan futnak, a checkpointer a superstep végén rögzíti az állapotot, az újrafuttatás pedig ugyanazzal a thread_idvel lép be újra a gráfba. Három tartóssági mód határozza meg, mikor történik az írás: a futás végén, a következő lépés közben, vagy a következő lépés előtt.",true,"A rögzítés superstep-határra esik, nem minden csomópont után. Ezért egy hibás csomópont nem kényszeríti újrafuttatásra ugyanannak a superstepnek sikeres tagjait, és ezért a tartóssági mód egy késleltetési állító, nem helyességi kapcsoló.",{"type":107,"content":180},[181],"A párhuzamosság a hely, ahol az élek élnek. Két csomópont, amely ugyanabba az állapotszámba ír ugyanabban a superstepben, reducert igényel. A LangGraph szállítja az add és egy last-value alapértelmezett reducert, a többit kézzel kell megírni. A hiba itt nem dob semmit: az egyik írás csendben eltűnik, és a tünet sokkal később mutatkozik meg olyan döntésként, amelyet az ügynök nem tud megmagyarázni.",{"type":107,"content":183},[184],"Az állapot egyben a tárhelyszámla is. Minden superstep újraírja a teljes állapotobjektumot, így az a kulcs, amely lekért dokumentumokat halmoz fel, minden lépést teljes payload-írássá tesz. Vékonyítsd az állapotot a csomópont határán, és tartsd a tartós artefaktumokat a gráfon kívül.",{"type":114,"level":115,"id":88,"text":89},{"type":107,"content":187},[188],"A legkisebb érdemi gráf egy jóváhagyási folyamat, mert a futtatókör erre való. Ez megáll emberre, ugyanazon a szálon folytat, és a mellékhatást a megszakítás után tartja, így pontosan egyszer fut le.",{"type":128,"code":190},"from typing import Literal, TypedDict\nfrom langgraph.checkpoint.postgres import PostgresSaver\nfrom langgraph.graph import END, START, StateGraph\nfrom langgraph.types import Command, interrupt\n\nclass State(TypedDict):\n    request: str\n    decision: str | None\n\ndef ask(state: State) -> Command[Literal[\"send\", \"cancel\"]]:\n    if interrupt({\"question\": \"Send this?\", \"details\": state[\"request\"]}):\n        return Command(goto=\"send\")\n    return Command(goto=\"cancel\")\n\nbuilder = StateGraph(State)\nbuilder.add_node(\"ask\", ask)\nbuilder.add_node(\"send\", lambda s: {\"decision\": \"sent\"})\nbuilder.add_node(\"cancel\", lambda s: {\"decision\": \"cancelled\"})\nbuilder.add_edge(START, \"ask\")\nbuilder.add_edge(\"send\", END)\nbuilder.add_edge(\"cancel\", END)\n\nwith PostgresSaver.from_conn_string(\"postgresql:\u002F\u002F…\") as saver:\n    saver.setup()\n    graph = builder.compile(checkpointer=saver)\n    config = {\"configurable\": {\"thread_id\": \"req-42\"}}\n    print(graph.invoke({\"request\": \"refund 8891\"}, config, durability=\"sync\")[\"__interrupt__\"])\n    print(graph.invoke(Command(resume=True), config, durability=\"sync\")[\"decision\"])",{"type":107,"content":192},[193,194,197,198,201],"Ebben a részletben két dolog fontosabb a többinél. A ",{"tag":128,"children":195},[196],"PostgresSaver.setup()"," egyszer hozza létre a checkpoint-táblákat, telepítéskor, nem folyamatonként. És a ",{"tag":128,"children":199},[200],"durability=\"sync\""," jóváhagyási folyamathoz a helyes választás: az írás befejeződik a következő lépés előtt, így a döntést követő két másodpercben bekövetkező összeomlás nem veszítheti el az éppen hozott döntést.",{"type":203,"variant":204,"title":205,"body":206},"callout","note","Egy futtatókör, két API",[207],[208,209,211,212,214],"A funkcionális API ugyanazt a checkpoint-formátumot éri el. Dekoráld a munkafolyamatot ",{"tag":128,"children":210},[164],"-tel, a munkaegységeket ",{"tag":128,"children":213},[167],"-kal, és hagyd, hogy a LangGraph levezesse a gráfot a vezérlési folyamatból. A kettő vegyítése egy kódalapon működik, és éppen ez teszi lehetővé, hogy egyszerűen indulj, és csak ott legyel explicitebb, ahol a trace nehezen olvasható.",{"type":114,"level":115,"id":91,"text":92},{"type":107,"content":217},[218],"A perzisztencia a framework bevezetésének oka, és egyben az a hely, ahol a marketingnyelv elkenődik. A checkpointer snapshotot ír. A tartós végrehajtás azt jelenti, hogy a futás folytatódik. A LangGraph az elsőt megcsinálja; a második annál marad, aki a folyamatot üzemelteti.",{"type":120,"ordered":121,"items":220},[221,226,230],[222,225],{"tag":128,"children":223},[224],"exit"," — semmi nem íródik, amíg a futás be nem fejeződik, meg nem hibázik vagy meg nem szakad. A leggyorsabb, és folyamat-összeomlásnál a futás elveszik.",[227,229],{"tag":128,"children":228},[143]," — az írások a következő lépés végrehajtása közben futnak. Az alap kompromisszum: jó késleltetés, és egy kis ablak, amelyben összeomlás állapotot veszít.",[231,233],{"tag":128,"children":232},[147]," — minden checkpoint rögzül, mielőtt a következő lépés elkezdődik. Legmagasabb tartósság, az írás a kritikus úton van.",{"type":235,"head":236,"rows":243},"table",[237,239,241],[238],"Csomag",[240],"Backend",[242],"Hová illik",[244,253,262,271,280],[245,249,251],[246],{"tag":128,"children":247},[248],"langgraph-checkpoint",[250],"Memóriában",[252],"Tesztek és kísérletek; a langgraph csomag része",[254,258,260],[255],{"tag":128,"children":256},[257],"langgraph-checkpoint-sqlite",[259],"SQLite",[261],"Helyi folyamatok és egyprocesszos alkalmazások",[263,267,269],[264],{"tag":128,"children":265},[266],"langgraph-checkpoint-postgres",[268],"PostgreSQL",[270],"Éles környezet; ezen fut a LangSmith Deployment is",[272,276,278],[273],{"tag":128,"children":274},[275],"langgraph-checkpoint-mongodb",[277],"MongoDB",[279],"Csapatok, akiknél a MongoDB a standard",[281,285,287],[282],{"tag":128,"children":283},[284],"langchain-azure-cosmosdb",[286],"Cosmos DB",[288],"Azure-környezetek, Entra ID-hitelesítéssel",{"type":107,"content":290},[291],"A checkpointok korlátlanul nőnek. A perzisztenciadokumentáció ezt kimondja, és ütemezett feladatot javasol, amely törli a megőrzési ablaknál régebbi checkpointokat. Aki ezt kihagyja, egy olyan adatbázison ébred, amely csendben a legnagyobb komponenssé vált, és ez rossz délután.",{"type":203,"variant":293,"title":294,"body":295},"warn","A folytatás a hívó feladata",[296],[297,298,300,301,304],"Ha a folyamat meghal, a checkpoint túléli, a futás nem. Valaminek fel kell ismernie a hibát, el kell döntenie, hol kell újra belépni, és a megfelelő ",{"tag":128,"children":299},[130],"-vel meg kell hívnia az ",{"tag":128,"children":302},[303],"invoke(None, config)","-ot. A könyvtárban semmi sem teszi ezt, és semmi sem akadályozza meg, hogy két folyamat ugyanazt a szálat egyszerre folytassa.",{"type":114,"level":306,"id":307,"text":308},3,"interrupts","Megszakítások és a visszajátszási szabályok",{"type":107,"content":310},[311,312,314],"Az ",{"tag":128,"children":313},[137]," a legtöbbet használt funkció és egyben a leggyakrabban félreértett. Nem sornál áll meg. Kivételt dob, visszatekeredik a futtatókörig, checkpointot ír, és korlátlanul vár. Amikor a gráf folytatódik, a futtatókör a teljes csomópontot elölről újraindítja, és a folytatási értékeket szigorúan index szerint rendeli az interrupt-hívásokhoz. E terület minden éles hibája abból fakad, hogy valaki figyelmen kívül hagyta e kettő valamelyik mondatát.",{"type":120,"ordered":121,"items":316},[317,325,327,329],[311,318,320,321,324],{"tag":128,"children":319},[137],"-hívást soha ne tedd egy nyers ",{"tag":128,"children":322},[323],"try\u002Fexcept","-be. A megállás egy dobott kivétel, és a széles handler elnyeli, így a gráf egyáltalán nem áll meg.",[326],"Ne ugráld át feltételesen a megszakításokat egy csomóponton belül, és ne rendezd át őket. A hozzárendelés index alapú, így a megváltozott sorrend hibaüzenet nélkül fogyasztja el a rossz folytatási értéket.",[328],"Minden megszakítás előtti mellékhatást tedd idempotensé, vagy mozdítsd a megállás után, vagy külön csomópontba. A dokumentáció kifejezetten kimondja, hogy a megszakítás előtt létrehozott rekord minden folytatáskor újra létrejön.",[330,331,334],"Kerüld a ",{"tag":128,"children":332},[333],"while True","-ciklust egy megszakítás körül egyetlen csomópontban. Minden folytatás újrajátszza a korábbi iterációkat, így a ciklusban lévő munka exponenciálisan nő.",{"type":203,"variant":293,"title":336,"body":337},"A dupla terhelés hibamódja",[338],[339],"Az a csomópont, amely audit-sort ír, majd jóváhagyást kér, majd egy újraindítás után folytatódik, újra megírja ezt a sort. Az ügynök nem téved, a tesztcsomag zöld, és a második bejegyzés az élesben jelenik meg. Tedd a mellékhatást külön csomópontba a megszakítás mögé, és a checkpointot hagyja állapotot hordozni, ne hatást.",{"type":114,"level":115,"id":94,"text":95},{"type":107,"content":342},[343,344,346],"A gyengeségek jönnek először, mert ők döntik el, hogy illik-e a framework. Egy futás egy folyamatban él. A nyílt forráskódú könyvtárban nincs felügyelő, nincs feladatsor és nincs worker-készlet, így ha a folyamat meghal, a futás halott, amíg egy, a LangGraphen kívüli rendszer észre nem veszi és újra nem belép. Az emberi ellenőrzés ugyanez a forma: az ",{"tag":128,"children":345},[137]," megállítja a futást, és az a dolog, hogy a jóváhagyás megérkezését észrevehessük és a megfelelő szálat felébresszük, mostantól a te problémád.",{"type":235,"head":348,"rows":356},[349,351,352,354],[350],"",[9],[353],"CrewAI",[355],"LlamaIndex",[357,366,375,384],[358,360,362,364],[359],"Vezérlési modell",[361],"Explicit gráf vagy funkcionális API",[363],"Szerepek és feladatok",[365],"Összekomponálható pipeline-ok és indexek",[367,369,371,373],[368],"Perzisztencia",[370],"Superstepenkénti checkpointok, a folyamatot te futtatod",[372],"Memória- és tudásabsztrakciók",[374],"Checkpointing a workflow- és indexcsomópontokban",[376,378,380,382],[377],"Miben a legerősebb",[379],"Hosszú, folytatható, auditálható futások",[381],"Gyors többügynökös prototípusok",[383],"Visszakeresésre épülő alkalmazások",[385,387,389,391],[386],"Mit hagy rád",[388],"Promptok, eszközhurok, retry-k, felügyelet",[390],"Finomabb kontroll maga felett a futás",[392],"Orchestráció a visszakereséshez kötve",{"type":107,"content":394},[395],"A második gyengeség az ergonomia. A LangGraph nem absztrahál semmit a promptokról vagy az architektúráról, ami előny, ha az ügynök a termék, és akadály, ha nem. A framework nem mondja meg, hogyan építsd fel a promptot, mikor hagyd abba az eszközhívásokat, vagy hány retry-t érdemel egy lépés. A legtöbb csapat a LangGraph-projekt első heteiben az eszközhúkot találja fel újra, vagyis pontosan azt, amit egy magasabb absztrakció átadott volna.",{"type":107,"content":397},[398],"A harmadik a vendorhoz való kötődés, és enyhébb, mint általában állítják. A futtatókör MIT-licenc alatt áll, a saját folyamatodban fut, és a saját adatbázisodba ír, tehát nincs túszadott adat. A valódi függés akkor jelenik meg, amikor a gráfokat a LangSmithen keresztül telepíted: a deployment, az assistants API és a cron ütemezés LangChain felületek, és a későbbi átállás valódi munka.",{"type":114,"level":115,"id":97,"text":98},{"type":107,"content":401},[402],"A LangGraph ingyenes. A LangSmithnél van a pénz, ülévenkénti díjjal és metrikai fogyasításon felüli elszámolással: a Developer egy ülésre havi 5000 alap-traces ingyenes, a Plus havi 39 dollár ülékenként 10000 alap-traces mellett, hozzáféréssel a deploymenthez, az Engine-hez és a sandboxokhoz, az Enterprise pedig egyedi áron, hibrid vagy teljesen saját üzemeltetésű telepítéssel.",{"type":120,"ordered":121,"items":404},[405,407,409],[406],"A fogyasást LangChain Standard Unitokban számítják, 1 dollár egységenként, a szerverless deployment pedig futásidő, memória, adatbázis-számítás és adatbázis-memória, valamint az adatbázis élő ideje alapján.",[408],"A trace-ek megőrzése 14 nap az alap trace-re, 180 nap a kiterjesztett trace-re, amely külön számítanak.",[410],"A LangSmith kijelenti, hogy nem képez modellt az ügyféladatokon, és az Enterprise szinten saját üzemeltetésű adatréteget kínál azoknak a csapatoknak, akiknek ezt a saját kontrolljaik megkövetelik.",{"type":107,"content":412},[413],"A trace-kvóta az a szám, amire figyelni kell. Egy ügönökfutás egy trace, és egy olyan futás, amely tíz csomóponton át öt eszközt hív, spánok gráfját hozza létre. Az összes éles kérést trace-elni meglepően gyorsan felemeli az 5000 vagy 10000 trace-et, és ekkor a számla már nem lekerekítő tétel. A környezet szerinti sampling a legolcsóbb enyhítés.",{"type":114,"level":115,"id":100,"text":101},{"type":107,"content":416},[417],"A LangGraph jó válasz egy kérdésre: hogyan tartsuk életben egy hosszú ügönökfutást egy összeomláson, egy telepítésen vagy egy emberi jóváhagyáson keresztül. Ezen a határon belül a munka gondos: a checkpoint-formátum dokumentált, a függőben maradó írások valóban jó ötlet, az interrupt szemantika pedig elég őszintén le van írva ahhoz, hogy tervet lehessen körülötte építeni. Ezen kívül a könyvtár vélemény nélküli futtatókör, és minden, amit nem dönt el, hajnali házkor az olvasó munkája lesz.",{"type":120,"ordered":177,"items":419},[420,422,424,426,428,430],[421],"Vedd fel, ha egy futásnak túl kell élnie egy újraindítást: jóváhagyási várólista, órákig futó kutatási feladat, olyan ügynök, aki emberre vár.",[423],"Vedd fel, ha a futásnak auditálhatónak kell lennie. A csomópontok és élek a legolcsóbb módja annak megmutatására egy nem mérnöknek, hogy pontosan mit fog tenni az ügynök.",[425],"Vedd fel, ha számít a determinisztikus és a modellvezérelt lépések összekeverése, és a köztük lévő határnak pontosnak és tesztelhetőnek kell lennie.",[427],"Hagyd ki három lépés alatt befejeződő eszközhurokhoz. A húsz sor Python olcsóbban tulajdonolható és gyorsabban hibakereshető.",[429],"Ne tekintsd tartóssági rétegnek. Ha egy csendesen meghalt futás rendeléseket veszteséggel jár, vegyél felügyelőt, vagy futtasd a gráfot Temporalon, amelynek LangGraph pluginje 2026 júliusában public preview-ba került.",[431],"Ne vezesd be anélkül, hogy egyszer elolvastad volna az interrupt szabályokat. A visszajátszási szemantika az, ami élesben dupla mellékhatásokat termel.",{"type":433,"content":434},"quote",[435,439,440],{"tag":436,"children":437},"em",[438],"A LangGraph egyszerű, hatékony módja egy ügynök kifejezésének: a gráfmodell világos, az ökoszisztéma gazdag, és a prototípusok gyorsan összeállnak. De nem teljes termelési történet."," ",{"tag":441,"children":442},"strong",[443],"Temporal, a LangGraph pluginjéről, 2026. július",{"type":114,"level":115,"id":103,"text":104},{"type":120,"ordered":177,"items":446},[447,452,456,460,464,468],[448],{"tag":449,"href":34,"children":450},"a",[451],"LangGraph dokumentáció: áttekintés",[453],{"tag":449,"href":37,"children":454},[455],"LangGraph dokumentáció: checkpointer-ek és tartóssági módok",[457],{"tag":449,"href":40,"children":458},[459],"LangGraph dokumentáció: megszakítások és a szabályok",[461],{"tag":449,"href":43,"children":462},[463],"langchain-ai\u002Flanggraph a GitHubon",[465],{"tag":449,"href":46,"children":466},[467],"LangSmith árazás",[469],{"tag":449,"href":49,"children":470},[471],"Temporal: a Python LangGraph integráció public preview-ba került (2026. július 16.)",[473,532,605,675],{"slug":474,"published":475,"minutes":476,"category":7,"tags":477,"keywords":483,"about":494,"sources":504,"cover":526,"og":527,"expertise":52,"locales":528,"lang":56,"title":529,"description":530,"coverAlt":531},"agent-tool-design-descriptions-errors","2026-10-17",11,[478,479,480,481,482],"AI agents","Tool use","Function calling","MCP","Agent design",[484,485,486,487,488,489,490,491,492,493],"agent tool design","writing tool descriptions for llm","function calling best practices","tool use error handling","mcp tool design","tool calling is_error","how many tools should an agent have","tool search defer_loading","agent computer interface","llm tool schema design",[495,498,501],{"name":496,"url":497},"Intelligent agent","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FIntelligent_agent",{"name":499,"url":500},"Model Context Protocol","https:\u002F\u002Fmodelcontextprotocol.io\u002F",{"name":502,"url":503},"Poka-yoke","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPoka-yoke",[505,508,511,514,517,520,523],{"title":506,"url":507},"Anthropic Engineering: Writing effective tools for agents, with agents (Sep 2025)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fwriting-tools-for-agents",{"title":509,"url":510},"Anthropic Engineering: Building effective agents (Dec 2024)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fbuilding-effective-agents",{"title":512,"url":513},"Claude Platform Docs: Define tools","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Fdefine-tools",{"title":515,"url":516},"Claude Platform Docs: Handle tool calls","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Fhandle-tool-calls",{"title":518,"url":519},"Claude Platform Docs: Tool search tool","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Ftool-search-tool",{"title":521,"url":522},"Model Context Protocol specification 2025-11-25: Tools","https:\u002F\u002Fmodelcontextprotocol.io\u002Fspecification\u002F2025-11-25\u002Fserver\u002Ftools",{"title":524,"url":525},"OpenAI API Docs: Function calling","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ffunction-calling","\u002Fimages\u002Fblog\u002Fagent-tool-design-descriptions-errors\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fagent-tool-design-descriptions-errors\u002Fog.jpg",[54,55,56],"Eszközök tervezése AI-ágenseknek: nevek, leírások, sémák és hibaüzenetek","Ágenseszközök, amelyeket jól választ és hív a modell: feladatra szabott eszközök, leírások, sémák, tömör válaszok és használható hibaüzenetek.","Három réssel ellátott alapzat; a középső rés fölött pontosan illeszkedő blokk áll, mellette két rossz szélességű blokk.",{"slug":533,"published":475,"minutes":476,"category":7,"tags":534,"keywords":540,"about":553,"sources":563,"cover":599,"og":600,"expertise":52,"locales":601,"lang":56,"title":602,"description":603,"coverAlt":604},"coding-agents-legacy-codebase-migration",[535,536,537,538,539],"Legacy migration","Coding agents","Strangler fig","Testing","Code review",[541,542,543,544,545,546,547,548,549,550,551,552],"legacy code migration ai","coding agent legacy codebase","strangler fig pattern ai","characterization tests legacy code","ai code migration review","agent assisted refactoring","legacy modernization coding agent","differential testing migration","shadow traffic migration","ai code review gate","test harness before migration","llm code migration",[554,557,560],{"name":555,"url":556},"Legacy code","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLegacy_code",{"name":558,"url":559},"Characterization test","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCharacterization_test",{"name":561,"url":562},"Strangler fig pattern","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FStrangler_fig_pattern",[564,567,569,572,575,578,581,584,587,590,593,596],{"title":565,"url":566},"Martin Fowler: Strangler Fig (2024)","https:\u002F\u002Fmartinfowler.com\u002Fbliki\u002FStranglerFigApplication.html",{"title":568,"url":559},"Wikipedia: Characterization test",{"title":570,"url":571},"Google Research: Accelerating code migrations with AI (2024)","https:\u002F\u002Fresearch.google\u002Fblog\u002Faccelerating-code-migrations-with-ai\u002F",{"title":573,"url":574},"Ziftci et al.: Migrating Code At Scale With LLMs At Google (arXiv 2504.09691)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2504.09691",{"title":576,"url":577},"Anthropic: Effective harnesses for long-running agents (2025)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Feffective-harnesses-for-long-running-agents",{"title":579,"url":580},"Anthropic: Redesigning source control at Anthropic (2026)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fredesigning-source-control",{"title":582,"url":583},"METR: Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity","https:\u002F\u002Fmetr.org\u002Fblog\u002F2025-07-10-early-2025-ai-experienced-os-dev-study\u002F",{"title":585,"url":586},"Chand et al.: Why Industry Migrates and When It Trusts LLMs (ESEM 2026)","https:\u002F\u002Fdrops.dagstuhl.de\u002Fentities\u002Fdocument\u002F10.4230\u002FLIPIcs.ESEM.2026.85",{"title":588,"url":589},"Li et al.: Environment-in-the-Loop: Rethinking Code Migration with LLM-based Agents (arXiv 2602.09944)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2602.09944",{"title":591,"url":592},"AWS: Amazon Q Developer just reached a $260 million dollar milestone (2024)","https:\u002F\u002Faws.amazon.com\u002Fblogs\u002Fdevops\u002Famazon-q-developer-just-reached-a-260-million-dollar-milestone\u002F",{"title":594,"url":595},"OpenAI: Why SWE-bench Verified no longer measures frontier coding capabilities (2026)","https:\u002F\u002Fopenai.com\u002Findex\u002Fwhy-we-no-longer-evaluate-swe-bench-verified\u002F",{"title":597,"url":598},"GitHub Docs: About GitHub Copilot cloud agent","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcopilot\u002Fconcepts\u002Fagents\u002Fcoding-agent\u002Fabout-coding-agent","\u002Fimages\u002Fblog\u002Fcoding-agents-legacy-codebase-migration\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcoding-agents-legacy-codebase-migration\u002Fog.jpg",[54,55,56],"Legacy kódbázis migrálása coding agentekkel: strangler fig playbook","Hogyan dolgozik coding agent egy legacy migráción: characterization tesztek először, egy seam feladatonként, review gate-ek és differenciális ellenőrzés.","Rétegek halmaza, a felső kettőt újak váltják, mellettük varrat és pipa.",{"slug":606,"published":475,"minutes":607,"category":7,"tags":608,"keywords":612,"about":624,"sources":634,"cover":669,"og":670,"expertise":52,"locales":671,"lang":56,"title":672,"description":673,"coverAlt":674},"background-agents-async-pr-workflow",12,[536,609,610,539,611],"Pull requests","CI","Automation",[613,614,615,616,617,618,619,620,621,622,623],"background coding agent","async coding agent","cloud coding agent pull request","copilot coding agent limits","codex cloud tasks","claude code cloud sessions","jules coding agent limits","agent pull request review","coding agent sandbox","agent CI gating","cost per merged pull request",[625,628,631],{"name":626,"url":627},"Software agent","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSoftware_agent",{"name":629,"url":630},"Pull request","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FDistributed_version_control",{"name":632,"url":633},"Continuous integration","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FContinuous_integration",[635,636,639,642,645,648,651,654,657,660,663,666],{"title":597,"url":598},{"title":637,"url":638},"GitHub Docs: Risks and mitigations for Copilot cloud agent","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcopilot\u002Fconcepts\u002Fagents\u002Fcloud-agent\u002Frisks-and-mitigations",{"title":640,"url":641},"OpenAI Developers: Codex cloud environments","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fcloud\u002Fenvironments",{"title":643,"url":644},"Anthropic: Use Claude Code in the cloud","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fclaude-code-on-the-web",{"title":646,"url":647},"Google Jules: Limits and plans","https:\u002F\u002Fjules.google\u002Fdocs\u002Fusage-limits\u002F",{"title":649,"url":650},"Google Jules: Getting started","https:\u002F\u002Fjules.google\u002Fdocs\u002F",{"title":652,"url":653},"GitHub Docs: About protected branches","https:\u002F\u002Fdocs.github.com\u002Fen\u002Frepositories\u002Fconfiguring-branches-and-merges-in-your-repository\u002Fmanaging-protected-branches\u002Fabout-protected-branches",{"title":655,"url":656},"GitHub Docs: Models and pricing for GitHub Copilot","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcopilot\u002Freference\u002Fcopilot-billing\u002Fmodels-and-pricing",{"title":658,"url":659},"OpenAI Developers: Codex pricing","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fpricing",{"title":661,"url":662},"Ehsani et al.: Where Do AI Coding Agents Fail? An Empirical Study of Failed Agentic Pull Requests in GitHub (MSR 2026, arXiv 2601.15195)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2601.15195",{"title":664,"url":665},"Peralta et al.: Why Are Agentic Pull Requests Merged or Rejected? An Empirical Study (MSR 2026, arXiv 2605.22534)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2605.22534",{"title":667,"url":668},"DORA: State of AI-assisted Software Development 2025","https:\u002F\u002Fdora.dev\u002Fdora-report-2025","\u002Fimages\u002Fblog\u002Fbackground-agents-async-pr-workflow\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fbackground-agents-async-pr-workflow\u002Fog.jpg",[54,55,56],"Háttérben futó kódoló ügynökök: PR-ek, sorok és review","Hogyan sorakoztatnak feladatokba az aszinkron kódoló ügynökök, hogyan futnak sandboxban, nyitnak draft PR-t és mennek át a CI-n. Limitek, költségek, review.","Egy kártya a tálcán öt mezőre ágazik, a nyilak egy kapu mögötti laphoz vezetnek.",{"slug":676,"published":677,"minutes":6,"category":7,"tags":678,"keywords":684,"about":696,"sources":704,"cover":737,"og":738,"expertise":52,"locales":739,"lang":56,"title":740,"description":741,"coverAlt":742},"context-rot-compaction-long-running-agents","2026-10-16",[679,680,681,682,683],"Context rot","Compaction","Context engineering","Long-running agents","Agent memory",[685,686,687,688,689,690,691,692,693,694,695],"context rot","context rot LLM","compaction AI agents","context engineering","long-running agents context window","Claude compaction API","context editing clear tool results","OpenAI responses compaction","lost in the middle LLM","agent context management","sub-agents context isolation",[697,700,703],{"name":698,"url":699},"Context window","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLarge_language_model#Context_window",{"name":701,"url":702},"Attention (machine learning)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FAttention_(machine_learning)",{"name":496,"url":497},[705,708,711,714,717,719,722,725,728,731,734],{"title":706,"url":707},"Chroma: Context Rot: How Increasing Input Tokens Impacts LLM Performance (Jul 2025)","https:\u002F\u002Fresearch.trychroma.com\u002Fcontext-rot",{"title":709,"url":710},"Liu et al.: Lost in the Middle: How Language Models Use Long Contexts (2023)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2307.03172",{"title":712,"url":713},"Modarressi et al.: NoLiMa: Long-Context Evaluation Beyond Literal Matching (2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2502.05167",{"title":715,"url":716},"Anthropic: Effective context engineering for AI agents (Sep 2025)","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Feffective-context-engineering-for-ai-agents",{"title":718,"url":577},"Anthropic: Effective harnesses for long-running agents (Nov 2025)",{"title":720,"url":721},"Claude API docs: Compaction at a token threshold","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcompaction-threshold",{"title":723,"url":724},"Claude API docs: Compaction on demand","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcompaction-on-demand",{"title":726,"url":727},"Claude API docs: Context editing","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fcontext-editing",{"title":729,"url":730},"Claude API docs: Memory tool","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fagents-and-tools\u002Ftool-use\u002Fmemory-tool",{"title":732,"url":733},"OpenAI API docs: Compaction","https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fcompaction",{"title":735,"url":736},"Cognition: Don't Build Multi-Agents","https:\u002F\u002Fcognition.ai\u002Fblog\u002Fdont-build-multi-agents","\u002Fimages\u002Fblog\u002Fcontext-rot-compaction-long-running-agents\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcontext-rot-compaction-long-running-agents\u002Fog.jpg",[54,55,56],"Kontextusromlás hosszan futó ügynököknél: törlés, tömörítés, memória és al-ügynökök","Miért romlik az LLM pontossága a kontextus növekedésével, és hogyan tartja pályán a hosszú ügynökfutást a törlés, a tömörítés, a jegyzet és az al-ügynök.","Egy kis négyzetes prés magas lappköteget nyom rövidre, közben két jegyzet ágazik le.",1792261159597]