Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A nagy nyelvi modellek (LLM-ek) hatékonyak, de korlátaik vannak. Tudnia kell, hogy az LLM-ek alapértelmezés szerint mit tehetnek, és hogyan módosíthatja őket, hogy a legjobb eredményeket érjék el a generatív AI-alkalmazásokhoz. Ez a cikk bemutatja az LLM-ekkel kapcsolatos fő kihívásokat, és egyszerű megoldási módszereket mutat be, és javítja a tartalom létrehozásának módját, függetlenül attól, hogy milyen generatív AI-funkciókat hoz létre.
Mérnöki kihívások az LLM-ekkel való munka során
Az alábbiakban a legfontosabb kihívásokat és korlátozásokat érdemes szem előtt tartani az LLM-ekkel való munka során:
Tudáscsökkentés: Az LLM-ek csak egy bizonyos dátumig tudják, mire képezték ki őket. Külső adatkapcsolatok nélkül nem férnek hozzá valós idejű vagy személyes adatokhoz.
Hallucináció: Az LLM-ek pontatlan vagy félrevezető információkat eredményezhetnek. A Microsoft Foundry földiesség-észlelési funkciója segít meghatározni, hogy az LLM válaszai az Ön által megadott forrásanyagokon alapulnak-e. A nem megalapozott válaszok olyan információkat tartalmaznak, amelyeket az adatok nem támogatnak. Ismerje meg, hogyan használhatja a megalapozottság észlelését ebben a gyors útmutatóban.
Átlátszóság: A létrehozott tartalom forrását vagy pontosságát nem mindig követheti nyomon, és nincs beépített ellenőrzési lépés.
Nincs tartományspecifikus tudás: az LLM-ek csak akkor ismerik a belső vagy a védett adatokat, ha integrálják azokat.
Nem lehet tanulni az interakciókból: az LLM-eknek nincs memóriájuk vagy tudomásuk a múltbeli interakciókról, így nem tudnak időben alkalmazkodni vagy javítani a felhasználói visszajelzések alapján. Ezeknek a kihívásoknak a leküzdéséhez és a legjobb eredmények eléréséhez egészítse ki az LLM tudását saját adataival, és használjon érvényesítési eszközöket.
Hol kapják meg az LLM-ek az adataikat?
Az LLM-eket könyvekből, cikkekből, webhelyekről és más forrásokból származó nagy adathalmazokra tanítják be. A válaszok az adatok mintáit tükrözik, de a betanítási leépítés után történtek nem szerepelnek benne. Külső kapcsolatok nélkül az LLM-ek nem férnek hozzá a valós idejű információkhoz, és nem böngészhetnek az interneten, ami elavult vagy hiányos válaszokhoz vezethet.
A következtetés működését befolyásoló tényezők
Ha LLM-et használ, az úgy tűnhet, mintha a modell a teljes beszélgetésre emlékezne. A valóságban minden elküldött új kérés tartalmazza az összes korábbi kérést és a modell válaszait. Az LLM ezt a teljes előzményt használja kontextusként a következő válasz létrehozásához. Ez a futó előzmény az környezetablak.
Minden LLM maximális környezeti ablakmérettel rendelkezik, amely modell és verzió szerint változik. Ha a beszélgetés túllépi ezt a korlátot, a modell elveti a legrégebbi részeket, és figyelmen kívül hagyja őket a válaszában.
A hosszabb környezeti ablakok azt jelentik, hogy a modellnek több adatot kell feldolgoznia, ami lelassíthatja a dolgokat, és több költséggel jár.
A kontextusablak mérete tokeneket használ, nem szavakat. A tokenek a modell által kezelhető legkisebb szövegrészek – ezek a részek lehetnek teljes szavak, szavak részei vagy egyetlen karakterek, a nyelvtől és a tokenizálótól függően.
A fejlesztők számára a jogkivonat-használat közvetlenül hatással van a következőre:
- A modell által figyelembe veendő beszélgetési előzmények maximális száma (környezeti ablak)
- Az egyes promptok és befejezések költsége, mivel a számlázás a feldolgozott tokenek számán alapul
Mi az a tokenizálás?
A tokenizálás a szöveg tokénekre való lebontásának folyamata – ezek a modell által feldolgozható legkisebb egységek. A tokenizálás elengedhetetlen mind a betanításhoz, mind az LLM-ekkel való következtetéshez. A nyelvtől és a tokenizertől függően a tokenek lehetnek egész szavak, szóelemek vagy akár egyetlen karakterek is. A tokenizálás lehet olyan egyszerű, mint a szóközök és írásjelek mentén történő felosztás, vagy olyan összetett, mint a nyelvi struktúrát és morfológiát figyelembe vevő algoritmusok használata.
Az OpenAI tokenizer oldal részletesen ismerteti a tokenizálást, és tartalmaz egy számológépet, amely bemutatja a mondatok tokenekre való felosztását.
A tipikus angol szövegben egy token körülbelül négy karakterből áll. Átlagosan 100 token nagyjából 75 szó.
A fejlesztők számára a következő könyvtárak segítenek megbecsülni a tokenek számát a előugró ablakok és lezárások esetében, ami hasznos lehet a kontextusablak korlátainak és költségeinek kezeléséhez.
- a tiktoken kódtár (Python és JavaScript)
- a Microsoft.ML.Tokenizers könyvtár (.NET)
A tokenek használata hatással van a számlázásra
Minden Azure OpenAI API más számlázási módszertannal rendelkezik. A Responses vagy Chat Completions API-val történő szövegfeldolgozásnál és -generálásnál a számlázás az üzenetként beküldött tokenek száma és az eredményként létrehozott tokenek száma (befejezés) alapján történik.
Minden LLM-modellnek (például GPT-5.2 vagy GPT-5.2-mini) általában más az ára, amely tükrözi a tokenek feldolgozásához és létrehozásához szükséges számítások mennyiségét. Az ár sokszor "1000 jogkivonatonkénti ár" vagy "1 millió jogkivonatonkénti ár" néven jelenik meg.
Ez a tarifamodell jelentős hatással van a felhasználói interakciók tervezésére, valamint a hozzáadott előfeldolgozási és utófeldolgozási mennyiségre.
Rendszerkérések és felhasználói kérések
Ez a cikk eddig a felhasználói kéréseket tárgyalta. A felhasználói kérés az, amit a modellnek küld, és amire a modell válaszol.
Az OpenAI a rendszerkérést (vagy egyéni utasításokat) is hozzáadta. A rendszerfeladat egy szabálykészlet, amelyet minden csevegéshez hozzáadnak. Megadhatja például az LLM-nek, hogy "mindig haiku formában válaszoljon". Ezután minden válasz egy haiku lesz.
Ez a haiku-példa bemutatja, hogyan módosíthatja az LLM válaszait az üzenet módosításával.
Miért változtatná meg a felhasználó kérését? Ha generatív AI-alkalmazást hoz létre munkahelyi, ügyfelek vagy partnerek számára, érdemes lehet olyan szabályokat hozzáadnia, amelyek korlátozzák a modell válaszát.
A felhasználói kérés módosítása azonban csak egy módja annak, hogy jobb legyen a szöveggeneráció.
Módszerek a felhasználók szöveggenerálási élményének javítására
A szöveggenerálási eredmények javítása érdekében a fejlesztők csupán a parancssor javítására vannak korlátozva, és számos gyorstervezési technika segíthet. Ha azonban saját generatív AI-alkalmazást hoz létre, többféleképpen is javíthatja a szöveggenerálási élményt a felhasználók számára, és érdemes lehet kísérletezni az összes implementálásával:
- Programozott módon módosítsa a felhasználói kéréseket.
- Következtetési folyamat implementálása.
- Retrieval-Augmented Generáció (más cikkekben tárgyalt).
- Finomhangolás (más cikkekben tárgyalt).
Felhasználói kérések programozott módosítása
Ha rendszerkérést szeretne hozzáadni egy felhasználói beszélgetéshez, nem használ speciális API-t. Csak szükség szerint fűzze hozzá az utasításokat a parancssorhoz.
De használhat néhány technikát a felhasználói kérések javításához:
- Kontextuális előkészítés: Készítsen rendszerutasításokat, amelyek kifejezetten meghatározzák a beszélgetés kontextusát a beszélgetés témáján belül. Ez a megközelítés magában foglalja az egyes interakciók elején egy rövid leírást vagy utasításkészletet. Az utasítások útmutatást adnak az AI-nek a problémás tartományon belüli tartózkodáshoz.
- Példaalapú útmutató: A kezdeti parancssorban példákat talál a tartománya szempontjából releváns kérdések és válaszok típusaira. Ez a megközelítés segít az AI-nek megérteni, hogy milyen válaszok várhatók.
Bármilyen gyorstervezési technikát használhat. Ha programozott módon el tudja végezni, javíthatja a felhasználói kérést a nevükben.
Ennek a megközelítésnek az a kikötése, hogy minél hosszabb a kérés, annál magasabb a LLM-hez irányuló hívások költsége. Ennek ellenére ez a megközelítés valószínűleg a legkevésbé költséges megközelítés, amelyet ez a cikk ír le.
Következtetési folyamat implementálása
A felhasználó kérésének továbbfejlesztése után a következő lépés egy következtetési folyamat létrehozása.
A következtetési folyamat olyan folyamat, amely:
- Tisztítja a nyers bemenetet (például szöveget vagy képeket)
- Elküldi a modellnek (előfeldolgozás)
- A modell válaszát ellenőrzi, hogy megfelel-e a felhasználó igényeinek, mielőtt megjelenítené (utófeldolgozás).
Az előfeldolgozás magában foglalhatja a kulcsszavak ellenőrzését, a relevancia pontozását, vagy a lekérdezés módosítását, hogy jobban illeszkedjen a tartományához. Tekintse meg például a felhasználó első üzenetét. Kérdezze meg az LLM-et, hogy van-e értelme a kérésnek, követi-e a szabályokat, helyes ötleten alapul-e, vagy újraírásra van szüksége a torzítás elkerülése érdekében. Ha az LLM problémákat talál, megkérheti, hogy írja át a kérdést, hogy jobb választ kapjon.
A postprocessing azt jelentheti, hogy ellenőrzi, hogy a válasz megfelel-e a tartománynak, és megfelel-e a szabványoknak. Eltávolíthatja vagy megjelölheti a szabályoknak nem megfelelő válaszokat. Ellenőrizze például az LLM válaszát, hogy megfelel-e az Ön minőségi és biztonsági igényeinek. Megkérheti az LLM-et, hogy tekintse át a válaszát, és szükség esetén módosítsa. Ismételje meg ezt a folyamatot, amíg jó eredményt nem kap.
Ne feledje: minden alkalommal, amikor meghív egy LLM-et a függvénycsővezetékben, hosszabb ideig tart a válaszadás, és növekednek a költségek. Ezeket a kompromisszumokat ki kell egyensúlyoznia a költségvetésével, a sebességével és a rendszer működésével.
A következtetési folyamat létrehozásának konkrét lépéseiről további információt a Fejlett lekéréses bővített generációs rendszer létrehozásacímű témakörben talál.
Egyéb tényezők, amelyek befolyásolják a befejezéseket
A programozott prompt módosításon, a következtetési folyamat létrehozásán és más technikákon túl további részleteket A nagy nyelvi modell kibővítése lekérés-alapú generációval és finomhangolássaltárgyalnak. Emellett módosíthatja a paramétereket az Azure OpenAI API-ra irányuló hívások során.
Íme néhány kulcsfontosságú paraméter, amelyeket módosíthatja a modell kimenetének befolyásolásához:
Temperature: A modell által létrehozott kimenet véletlenszerűségének szabályozása. Nullánál a modell determinisztikussá válik, és következetesen kiválasztja a betanítási adatok közül a legvalószínűbb következő tokent. 1 hőmérsékleten a modell egyensúlyban van a nagy valószínűségű tokenek kiválasztása és a véletlenszerűség bevezetése között a kimenetben.Max Tokens: A válasz maximális hosszát szabályozza. A magasabb vagy alacsonyabb korlát beállítása hatással lehet a létrehozott tartalom részletességére és hatókörére.Top P(magmintavétel):Temperaturea válasz véletlenszerűségének szabályozására szolgál.Top Pkorlátozza az AI-t, hogy csak a valószínűségi tömeg felső százalékát (P) vegye figyelembe az egyes tokenek létrehozásakor. Az alacsonyabb értékek koncentráltabb és kiszámíthatóbb szöveget eredményeznek. A magasabb értékek nagyobb változatosságot teszik lehetővé.Frequency Penalty: Csökkenti annak valószínűségét, hogy a modell ugyanazt a sort vagy kifejezést ismételje meg. Az érték növelésével elkerülhető a redundancia a létrehozott szövegben.Presence Penalty: Arra ösztönzi a modellt, hogy új fogalmakat és kifejezéseket vezessen be a befejezés során.Presence Penaltyhasznos a változatosabb és kreatívabb kimenetek létrehozásához.Stop Sequences: Megadhat egy vagy több szekvenciát, amelyek arra utasítják az API-t, hogy ne generáljon több tokenet.Store Sequencesa kimenet szerkezetének szabályozására szolgálnak, például hogy egy mondat vagy bekezdés végén lezárják a befejezést.Logit Bias: Lehetővé teszi a megadott tokenek megjelenésének valószínűségének módosítását a kiegészítésben.Logit Biashasználható a befejezés bizonyos irányban történő irányítására vagy adott tartalom letiltására.
Microsoft Azure OpenAI-védelem
Amellett, hogy az LLM válaszait egy adott témához vagy tartományhoz köti, valószínűleg az is aggasztja, hogy a felhasználók milyen típusú kérdéseket tehetnek fel az LLM-ről. Fontos megfontolni, hogy milyen válaszokat hoz létre.
Először is, a Microsoft Foundryben Microsoft Azure OpenAI-modellekre irányuló API-hívások automatikusan szűrik az API által esetleg sértőnek talált tartalmakat, és ezt számos szűrési kategóriában jelentik vissza Önnek.
A Tartalommoderálás API-val közvetlenül ellenőrizheti a potenciálisan káros tartalmakat.
Ezután a Azure AI Content Safety használatával segíthet a szövegmoderálásban, a képmoderálásban, a jailbreak kockázatészlelésében és a védett anyagészlelésben. Ez a szolgáltatás egy portálbeállítást, konfigurációt és jelentéskészítési felületet kombinál az alkalmazáshoz hozzáadható kóddal a káros tartalmak azonosításához.
AI-ügynökök
Az AI-ügynökök új módszert jelentenek az önállóan működő, generatív AI-alkalmazások létrehozására. LlM-eket használnak a szövegek olvasására és írására, és külső rendszerekhez, API-khoz és adatforrásokhoz is csatlakozhatnak. Az AI-ügynökök kezelhetik az összetett feladatokat, valós idejű adatokkal hozhatnak döntéseket, és megtudhatják, hogyan használják őket a felhasználók. További információ az AI-ügynökökről : Rövid útmutató: Új ügynök létrehozása.
Eszközhívási funkció
Az AI-ügynökök külső eszközöket és API-kat használhatnak információk lekérésére, műveletek végrehajtására vagy más szolgáltatásokkal való kapcsolódásra. Ez a funkció lehetővé teszi számukra, hogy ne csak szövegeket generáljanak, és összetettebb feladatokat kezeljenek.
Az AI-ügynökök például valós idejű időjárási frissítéseket kaphatnak egy időjárási API-ból, vagy adatokat kérhetnek le egy adatbázisból a felhasználó kérése alapján. Az eszközhívással kapcsolatos további információkért tekintse meg az Eszközök felfedezése és kezelése az Foundry eszközkatalógusában (előzetes verzió) című témakört.
Model Kontextus Protokoll (MCP)
A Model Context Protocol (MCP) lehetővé teszi, hogy az alkalmazások képességeket és kontextust biztosítsanak egy nagy nyelvi modellnek. Az MCP egyik fő funkciója az AI-ügynökök által a feladatok elvégzéséhez használt eszközök meghatározása. Az MCP-kiszolgálók helyileg is futtathatók, de a távoli MCP-kiszolgálók kulcsfontosságúak a felhőalapú eszközök megosztásához. További információért lásd: Ügynökök létrehozása a Model Context Protocol használatával az Azure-on.
Az alkalmazástervezés végső szempontjai
A tokenizáció, a díjszabás, a kontextusablakok és a felhasználói szöveggenerálási élmény javítására irányuló programozott fejlesztések megértése befolyásolja a generatív AI-rendszer kialakítását.
Az alábbiakban felsoroljuk azokat a szempontokat és egyéb szempontokat, amelyek hatással lehetnek az alkalmazástervezési döntésekre:
- Értékelje ki a legújabb AI-modell használatának szükségességét a költség szempontjai alapján. A kevésbé költséges modellek elegendőek lehetnek az alkalmazás igényeihez. A teljesítmény és a költségvetés korlátozásai közötti egyensúly.
- Fontolja meg a környezeti ablak hosszának optimalizálását a költségek kezeléséhez anélkül, hogy jelentősen befolyásolná a felhasználói élményt. A beszélgetés szükségtelen részeinek levágása csökkentheti a feldolgozási díjakat, miközben fenntartja a minőségi interakciókat.
- Mérje fel, hogy a tokenizálás és a bemenetek és kimenetek részletessége milyen hatással van a teljesítményre. Az LLM által választott tokenizálás kezelésének megértése segíthet az API-hívások hatékonyságának optimalizálásában, ami csökkentheti a költségeket és javíthatja a válaszidőket.
Ha azonnal kísérletezni szeretne egy generatív AI-megoldás létrehozásával, javasoljuk, hogy tekintse meg a A csevegés elindítása saját adatmintájának felhasználásával Pythonban című útmutatót. Az oktatóanyag .NET, Java és JavaScript is elérhető.