Mesterséges intelligencia, magyarul.
Az eredeti közleményekből.

A LiveKit hangügynökei munka közben is beszélhetnek

2026. július 7.Forrás: LiveKit
A LiveKit hangügynökei munka közben is beszélhetnek
Kép: LiveKit

A LiveKit olyan aszinkron eszközöket mutatott be hangügynökökhöz, amelyek hosszabb háttérműveletek alatt is fenntartják a beszélgetést. Az ügynök azonnal visszajelezhet, állapotfrissítéseket mondhat, és szükség esetén le is állíthatja a futó feladatot.

A lényeg röviden
  • A livekit-agents 1.6.0 verziója vezette be az aszinkron eszközöket.
  • A ctx.update() azonnali állapotfrissítést ad a lassú műveletekhez.
  • A ctx.with_filler() a köztes csendes szakaszokat fedi le.
  • A CANCELLABLE jelzővel a felhasználó megszakíthatja a futó feladatot.
  • Az on_duplicate="reject" segít elkerülni a visszatérítés ismételt indítását.

A hosszú művelet eddig csendet okozott

A LiveKit július 7-i útmutatója egy visszatérő problémát mutat be: amikor egy ügyfél visszatérítést kér, a hangügynök meghív egy eszközt, amely lekérdezi a rendelési rendszert, majd elindítja a visszatérítést. Ha a háttérrendszer körülbelül tizenöt másodperc alatt válaszol, a hagyományos függvényeszköz a teljes beszélgetést blokkolja.

Ebben az időszakban az ügynök nem mondja, hogy várni kell, és előrehaladást sem jelez. A LiveKit szerint az ügyfél ezt könnyen úgy értelmezheti, hogy megszakadt a hívás, ezért még a visszatérítés befejezése előtt bontja a kapcsolatot. A vállalat szerint a lassú háttérrendszer önmagában nem a probléma, hiszen valós rendszerek időnként lassúak. A gond az, hogy a normál eszköz futása közben a beszélgetés nem haladhat tovább.

A ctx.update() azonnal átadja a vezérlést

A LiveKit megoldásának kulcsa a ctx.update() metódus, amely a livekit-agents 1.6.0 verziójával jelent meg. A kiadás 2026. június 11-én érkezett. A metódus első meghívása az üzenetet ideiglenes eszköz-visszatérési értékként továbbítja a nyelvi modellnek, és nem blokkolóvá teszi a futó eszközt.

Így az ügynök a lassú művelet indulása után rögtön mondhatja például, hogy megkezdte a visszatérítést. A háttérben közben folytatódik a rendelés ellenőrzése és a fizetési művelet. Később újabb állapotfrissítések kerülhetnek a beszélgetés kontextusába, és az ügynök akkor adhatja elő ezeket, amikor ő és az ügyfél is tétlen.

A LiveKit példájában a ctx.with_filler() egy második haladási csatornát ad. Ez közvetlenül hangot játszik le a munkavégzés közbeni csendes szakaszokban, a nyelvi modell megkerülésével. A fejlesztő rögzített mondatot vagy váltakozó üzeneteket adhat meg, valamint beállíthatja a késleltetést, az ismétlések közötti időt és a lépések maximális számát.

A vállalat szerint a példában ugyanaz a háttérrendszer és ugyanazok a késleltetések szerepelnek. A blokkoló változat nagyjából tizennégy másodpercnyi csend után egyetlen zárómondatot ad, az aszinkron változat viszont egy másodpercen belül reagál, majd végig narrálja a folyamatot.

A feladat lemondása és a dupla visszatérítés elkerülése

Az aszinkron műveletek hosszabb futása miatt a felhasználó közben meg is gondolhatja magát. A LiveKit ehhez a ToolFlag.CANCELLABLE jelzőt kínálja. Ha egy regisztrált eszköz lemondható, a keretrendszer automatikusan két kiegészítő eszközt tesz elérhetővé a nyelvi modell számára: a get_running_tasks() felsorolja az éppen futó lemondható feladatokat, a cancel_task(call_id) pedig azonosító alapján megszakítja a kiválasztottat.

A lemondás az eszközben asyncio.CancelledError kivételt vált ki. A funkció külön engedélyezendő, mivel sok írási művelet nem biztonságosan szakítható félbe. A visszatérítés példájában a LiveKit szándékosan két szakaszra bontja a folyamatot: a rendelés ellenőrzése olvasási művelet, a pénzmozgást végző visszatérítés pedig külön lépés.

A példakód az ismételt meghívások kezelésére az on_duplicate="reject" beállítást is használja. Ennek célja, hogy a futó feladat mellett az ügynök ne indítsa el újra ugyanazt a visszatérítést.

A fejlesztők már az 1.6-os verziótól használhatják

Az útmutató a livekit-agents>=1.6 verzióra épül, a beszédfelismeréshez, a nyelvi modellhez és a beszédszintézishez pedig LiveKit Inference szolgáltatást használ. A bemutató determinisztikus, utánzó háttérrendszerrel működik, ezért a példákhoz a LiveKit kulcsain kívül nincs szükség külső szolgáltatásra. A szükséges hitelesítési adatok a LIVEKIT_URL, a LIVEKIT_API_KEY és a LIVEKIT_API_SECRET.

A LiveKit szerint a fejlesztők körülbelül harminc másodperc alatt létrehozhatnak egy működő hangügynök-vázat az lk agent init my-agent --template agent-starter-python paranccsal, majd a leglassabb eszközbe beilleszthetik a ctx.update() hívást. A felhasználói oldalon ez azt jelenti, hogy a hosszú háttérmunka alatt a hívás nem marad magyarázat nélküli csendben, miközben az ügyfél továbbra is beszélhet az ügynökkel.

Kapcsolódó hírek

Hét tanulság a valódi hangalapú ügynökök építéséről
Termékek és eszközök2026. szeptember 30.

Hét tanulság a valódi hangalapú ügynökök építéséről

A bemutatón jól működő hangalapú AI-ügynököt gyorsan össze lehet rakni, éles környezetben azonban a hangposta, a megszakítások, a késleltetés és a bizalom komoly…

A LiveKit 23 ezer dolláros programmal segíti az AI-startupokat
Cégek és üzlet2026. szeptember 16.

A LiveKit 23 ezer dolláros programmal segíti az AI-startupokat

A LiveKit elindította Startup Programját, amely a jogosult korai fázisú startupoknak összesen mintegy 23 ezer dollárnyi támogatást kínál hang-, videó- és fizikai…

A LiveKit nem adja el és engedély nélkül nem tanítja be az adatokat
Biztonság és etika2026. augusztus 13.

A LiveKit nem adja el és engedély nélkül nem tanítja be az adatokat

A LiveKit közölte, hogy nem értékesíti a platformján áthaladó adatokat, és kifejezett engedély nélkül nem használja fel azokat modellek betanítására. A vállalat szerint…