← Nieuwste papers
💻 computer science

Holmes: Multimodal Agentic Diagnosis for Mixed-Language Mobile Crashes at Industrial Scale

Holmes is een multi-agent systeem dat de oorzaakanalyse automatiseert voor crashes in mobiele applicaties met gemengde talen in ultra-grote schaaltoepassingen door multimodale runtime-signalen te synthetiseren om foutcontexten te reconstrueren zonder reproductie, waarbij een nauwkeurigheid van 87,6% bij foutlokalisatie wordt bereikt en de onderzoekstijd op echte WeChat-data met meer dan 98% wordt verminderd.

Oorspronkelijke auteurs: Jia Li, Wenyuan Ma, Ting Peng, Haibin Zheng, Yuetang Deng

Gepubliceerd 2026-06-23
📖 5 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Jia Li, Wenyuan Ma, Ting Peng, Haibin Zheng, Yuetang Deng

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Stel je voor dat jij de hoofdetective bent van een enorme, bruisende stad genaamd WeChat. Deze stad heeft miljarden inwoners en miljoenen gebouwen (regels code). Elke dag storten duizenden gebouwen plotseling in (crashes).

In het verleden, wanneer een gebouw instortte, moest een team menselijke detectives uren of zelfs dagen besteden aan het uitzoeken waarom. Ze moesten door bergen papierwerk (logs) bladeren, blauwdrukken (broncode) bestuderen en proberen het exacte moment van de instorting te reconstrueren, vaak zonder de ongelukken in een testlab te kunnen nabootsen.

Holmes is een nieuw, superkrachtig detective-team dat ontworpen is om deze mysteries in seconden op te lossen. Zo werkt het, met behulp van eenvoudige analogieën:

1. Het Probleem: Het "Black Box"-mysterie

Wanneer een mobiele app crasht, is dat alsof er een gebouw instort midden in een drukke straat. Je kunt niet terug in de tijd om precies te zien wat er is gebeurd. Je hebt alleen:

  • Het puin: Een lijst van de laatste dingen die het gebouw aan het doen was (de "stack trace").
  • De getuigen: Een logboek van wat mensen zeiden vlak voordat de crash plaatsvond.
  • De blauwdrukken: De enorme instructiehandleiding van de stad (70 miljoen regels code).

Oude methoden waren alsof je de hele 70 miljoen pagina's tellende handleiding moest lezen om één typefout te vinden. Dat was te traag. Andere methoden probeerden AI te gebruiken, maar die hadden nodig om de crash in een testlab na te bootsen, wat onmogelijk is omdat elke telefoon van een gebruiker anders en privé is.

2. De Oplossing: Het Holmes Detective-team

In plaats van één detective die alles probeert te doen, gebruikt Holmes een team van gespecialiseerde agenten die samenwerken, als een hoogtechnologisch politiebureau. Ze gebruiken een driestappenproces:

Stap 1: Aanwijzingen verzamelen (Het Retrieval-team)

Voordat er geprobeerd wordt een zaak op te lossen, verzamelt het team onmiddellijk de meest relevante bewijslast.

  • De Stack Code Retriever: Kijkt naar het "puin" (de crashlijst) en pakt direct de specifieke pagina's van de blauwdruk waar het gebouw instortte.
  • De Log Miner: In plaats van het volledere uur aan getuigenverklaringen te lezen, gebruikt het een slimme filter om alleen de 5 minuten aan gesprekken te vinden die daadwerkelijk tot de crash leidden.
  • De Thread Inspector: Controleert of andere delen van de stad (andere threads) met het gebouw in interferentie waren. Heeft een bouwploeg op de 5e verdieping per ongeluk een steunbalk uit de 10e verdieping getrokken?

Stap 2: De Diepte in (Het Exploration-team)

Soms gebeurt een crash door een fout die eerder is gemaakt of in een ander deel van het gebouw.

  • De Code Explorer: Deze agent werkt als een detective die niet alleen naar de crashlocatie kijkt, maar het spoor van aanwijzingen volgt. Hij vraagt: "Wie riep deze functie aan?" en "Wat gebeurde er hiervoor?". Hij graaft dynamisch door de enorme codebibliotheek en haalt alleen de specifieke pagina's op die hij nodig heeft, in plaats van de hele bibliotheek tegelijk te laden. Dit stelt hem in staat om "niet-lokale" defecten te vinden (fouten die ver weg van de plek waar de crash gebeurde).

Stap 3: Het Vonnis (Het Reasoning-team)

Dit is de leidende detective die alles samenbrengt.

  • De Synthesis Agent: Deze neemt het puin, de gefilterde getuigenverslagen, de blauwdrukpagina's en de interferentierapporten. Het gebruikt een speciale truc: het kijkt naar laagniveau-aanwijzingen (zoals CPU-registers, die als de interne drukmeters van het gebouw fungeren) om de kloof te overbruggen tussen de business logica (wat de app moet doen) en het systeemframework (het besturingssysteem).
  • Het genereert vervolgens een eindrapport: "De crash gebeurde omdat twee werkers tegelijkertijd hetzelfde gereedschap probeerden te gebruiken (een race condition). De oplossing is om een lock toe te voegen."

3. Waarom het een Game Changer is

Het paper testte Holmes op echte crashes van WeChat (de Chinese sociale media-reus). Dit is wat ze vonden:

  • Snelheid: In plaats van dat een mens 2 tot 3 uur nodig heeft om een complexe crash op te lossen, doet Holmes het in ongeveer 77 seconden. Dat is een reductie van 98% in tijd.
  • Nauwkeurigheid: Het identificeerde de specifieke functie (de specifieke kamer in het gebouw) waar de fout optrad in 87,6% van de gevallen.
  • Kosten: Het is ongelooflijk goedkoop om te draaien. De kosten om Holmes op een crash te draaien zijn ongeveer 13 cent, vergeleken met de kosten van een senior engineer die er uren aan besteedt (wat meer dan $70 zou kosten).

4. Hoe het de "Mixed-Language" puzzel oplost

Moderne apps zijn gebouwd als een huis van verschillende materialen: sommige muren zijn van hout (Swift/Objective-C), sommige van baksteen (C++) en sommige van beton (System Frameworks).

  • De Uitdaging: Wanneer een crash plaatsvindt in het "beton"-gedeelte, kan het "hout"-gedeelte vaak niet zien wat er mis is, omdat de instructies in een andere taal zijn.
  • De Truc van Holmes: Het gebruikt laagniveau-artefacten (zoals assembly code en geheugensnapshots) als een universele vertaler. Het kan het probleem traceren van de high-level app-logica helemaal tot aan het systeemniveau, zelfs als de broncode van het systeemgedeelte verborgen is (closed-source).

5. De Kern van het Verhaal

Holmes transformeert de taak van een ontwikkelaar van een detective (die urenlang naar aanwijzingen moet zoeken) naar een verifieerder (die simpelweg het rapport van de AI controleert).

  • Vóór: "Ik heb geen idee waarom dit is gecrasht. Laat me 50.000 regels code lezen en gokken."
  • Ná: "Holmes zegt dat de crash werd veroorzaakt door een race condition in bestand X, regel 149. Laat mij dat controleren."

Het paper concludeert dat dit systeem effectief werkt op industriële schaal en een arbeidsintensief, traag proces verandert in een snelle, efficiënte workflow, waardoor bedrijven miljoenen dollars en uren aan ontwikkeltijd besparen.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →