AI viðtalsspurning tvö: Hvernig á að tryggja að stór málmódel (LLM) kalli á verkfæri á áreiðanlegan hátt
AI viðtalsspurning tvö: Hvernig á að tryggja að stór málmódel (LLM) kalli á verkfæri á áreiðanlegan hátt
Hvernig á að tryggja að stór málmódel (LLM) vinni áreiðanlega og stjórnað þegar það kallar á verkfæri, ekki bara treysta á leiðbeiningar til að „sannfæra“ módel. Þarf að gefa kerfisbundið marglaga þvingunarramma.
Eins og dæmið um að spyrja um veður, þrjár algengar „uppspuna“ hegðanir módel við verkfærakall:
1. Ekki kalla á verkfæri, búa til svar beint.
2. Kalla á verkfæri með röngu sniði á breytum (t.d. verkfæri styður ekki „eftir tvo daga“, en sendir breytu date="eftir tvo daga").
3. Breyta sniði breytu að eigin frumkvæði (t.d. breyta „eftir tvo daga“ í ákveðna dagsetningu), jafnvel þótt verkfæri krefjist þess ekki.
Rót vandans er að framleiðsla módel er í eðli sínu líkindabundin, leiðbeiningar eru aðeins „mjúk þvingun“ á líkindadreifingu, ekki þvingunarbúnaður sem tryggir að módel fylgi stranglega. Í flóknum aðstæðum geta þessar „mjúku þvinganir“ auðveldlega mistekist.
Til að leysa þetta vandamál þarf marglaga verkfræðilega lausn:
-
Fyrsta lag: Fínstilla leiðbeiningar (mjúk þvingun)
- Staðsetning er upphaf þvingunarkerfisins, en alls ekki endir.
- Líta á leiðbeiningar sem „rekstrarsamning“, skýra tilgang verkfæris, gerð hvers breytu, mörk, og telja upp dæmi um ógild gildi.
- Bæta við Few-shot dæmum, með því að sýna dæmi um „rétt inntak → rétt kall“, nota samhengisnám til að festa hegðunarmynstur módel.
-
Annað lag: Kynna JSON Schema (hörð þvingun)
- Þetta er lykilskref frá „að rökræða“ til „að setja handrið“.
- Nota vélrænt læsilega og staðfesta skipulagða skilgreiningu (JSON Schema) í stað náttúrulegs máls til að lýsa breytum. Getur stranglega skilgreint gerð svæðis, hvort það sé nauðsynlegt, svið upptalningar, og getur bannað módel að framleiða óskilgreind svæði með því að stilla
additionalProperties: false. - Helstu API vettvangar styðja þessa skipulögðu framleiðsluþvingun á afkóðunarstigi módel, forðast sniðbrot frá uppruna.
-
Þriðja lag: Koma á staðfestingar-viðgerðar-endurtöku lykkju (framkvæmdaröryggi)
- Jafnvel með Schema, þarf samt að framkvæma málfræði- og Schema staðfestingu eftir að fá framleiðslu módel.
- Þegar staðfesting mistekst, ætti að hanna sjálfvirka hreinsun og endurtökuvél (með hámarki), senda villuskilaboð til módel til að leiðrétta framleiðslu. Eftir að hámarksfjölda endurtaka er náð, þarf að hafa niðurfærslu- eða handvirkar lausnir.
-
Arkitektúrlag: Aðskilnaður ábyrgðar
- Ætti að aðskilja ákvörðun og framkvæmd, mynda þriggja laga arkitektúr:
- Módellag: Einungis ábyrgt fyrir ákvörðun (ákveða hvaða verkfæri á að kalla á, hvaða breytur á að búa til).
- Rammlag: Ábyrgt fyrir framkvæmdaramma, þar með talið Schema staðfestingu, kalla á verkfæri, meðhöndla endurtökur og sameina niðurstöður. Þetta tryggir að villur módel hafi ekki bein áhrif á öryggi verkfæris, og breytingar á verkfærum krefjast ekki tíðra leiðréttinga á leiðbeiningum.
- Verkfæralag: Ákveðin viðskiptaleg geta.
- LangChain, LlamaIndex o.fl. rammar eru að gera þetta.
- Ætti að aðskilja ákvörðun og framkvæmd, mynda þriggja laga arkitektúr:
Takmarkanir núverandi lausnar: Getur vel meðhöndlað snið breytu vandamál, en staðfesting á merkingu breytu (eins og jafngildi „Shanghai“ og „沪“) er enn ófullnægjandi. Þetta verður verkfræðileg áskorun í framtíðinni.
Kjarni niðurstaða: Að láta LLM kalla á verkfæri á áreiðanlegan hátt er í eðli sínu hugbúnaðarverkfræðilegt vandamál, sem krefst þess að byggja upp kerfisbundið verkfræðilegt kerfi frá mjúkum þvingunum, hörðum þvingunum, framkvæmdaröryggi til arkitektúrhönnunar, ekki bara treysta á að fínstilla leiðbeiningar.
评论
暂无已展示的评论。
发表评论(匿名)