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.
Megtudhatja, hogyan vehet fel terheléselosztást az alkalmazáshoz, hogy a csevegőalkalmazás az Azure OpenAI Szolgáltatás jogkivonatán és a modellkvóta korlátain túl is kiterjeszthető legyen. Ez a megközelítés az Azure Container Apps használatával három Azure OpenAI-végpontot és egy elsődleges tárolót hoz létre, amelyek a bejövő forgalmat a három végpont egyikére irányítják.
A cikk szerint két önálló mintát kell üzembe helyeznie:
Csevegőalkalmazás
Ha még nem telepítette a csevegőalkalmazást, várjon, amíg a terheléselosztó-minta üzembe lett helyezve.
Ha egyszer már üzembe helyezte a csevegőalkalmazást, módosítsa a környezeti változót úgy, hogy támogassa a terheléselosztó egyéni végpontját, és újból üzembe helyezze azt.
A csevegőalkalmazás az alábbi nyelveken érhető el:
- .NET
- JavaScript
- Python
Terheléselosztó alkalmazás
Feljegyzés
Ez a cikk egy vagy több AI alkalmazássablont használ példái és útmutatásai alapjául. Az AI-alkalmazássablonok könnyen üzembe helyezhető, jól karbantartott referencia-implementációkat biztosítanak. Segítenek magas színvonalú kiindulópontot biztosítani az AI-alkalmazások számára.
Az Azure OpenAI és az Azure Container Apps terheléselosztásának architektúrája
Mivel az Azure OpenAI-erőforráshoz meghatározott jogkivonat- és modellkvótakorlátok tartoznak, az egyetlen Azure OpenAI-erőforrást használó csevegőalkalmazások e korlátok miatt hajlamosak a beszélgetési hibákra.
Ha úgy szeretné használni a csevegőalkalmazást, hogy nem éri el ezeket a korlátokat, használjon terheléselosztásos megoldást a Container Apps használatával. Ez a megoldás zökkenőmentesen elérhetővé tesz egy végpontot a Container Appsből a csevegőalkalmazás-kiszolgálónak.
A tárolóalkalmazás az Azure OpenAI-erőforrások egy készlete előtt helyezkedik el. A tárolóalkalmazás két forgatókönyvet old meg: normál és korlátozott. Egy normál forgatókönyvben, ahol a jogkivonat és a modellkvóta elérhető, az Azure OpenAI-erőforrás egy 200-ás értéket ad vissza a tárolóalkalmazáson és az alkalmazáskiszolgálón keresztül.
Ha egy erőforrás korlátozott helyzetben van a kvótakorlátok miatt, a konténer alkalmazás azonnal megkísérelhet egy másik Azure OpenAI-erőforrást, hogy teljesítse az eredeti csevegőalkalmazás-kérést.
Előfeltételek
Egy Azure-előfizetés. Hozzon létre egyet ingyen
A fejlesztői tárolók mindkét mintához elérhetők, a cikk befejezéséhez szükséges összes függőséggel együtt. A fejlesztői tárolókat futtathatja a GitHub Codespacesben (böngészőben), vagy helyileg a Visual Studio Code használatával.
- Kódterek (ajánlott)
- Visual Studio Code
- Egy GitHub-fiók.
A Container Apps terheléselosztó mintaalkalmazásának megnyitása
- GitHub Codespaces (ajánlott)
- Visual Studio Code
A GitHub Codespaces egy, a GitHub által felügyelt fejlesztői konténert futtat, a Visual Studio Code for the Web-et használva mint felhasználói felületet. A legegyszerűbb fejlesztési környezethez használja a GitHub Codespacest, hogy a megfelelő fejlesztői eszközökkel és függőségekkel rendelkezzen a cikk elvégzéséhez.
Fontos
Minden GitHub-fiók legfeljebb 60 órán át használhatja a GitHub Codespace-eket havonta két alapvető példánnyal. További információért látogasson el a(z) GitHub Codespaces havi tárhely- és óraszámkeretéhez.
Az Azure Container Apps terheléselosztójának üzembe helyezése
Jelentkezzen be az Azure Developer CLI-be, hogy hitelesítést biztosítson a kiépítési és üzembe helyezési lépésekhez:
azd auth login --use-device-codeÁllítson be egy környezeti változót az Azure CLI-hitelesítés használatára a kiépítés utáni lépéshez:
azd config set auth.useAzCliAuth "true"A terheléselosztó alkalmazás üzembe helyezése:
azd upVálasszon ki egy előfizetést és régiót az üzembe helyezéshez. Nem kell ugyanazzal az előfizetéssel és régióval rendelkezniük, mint a csevegőalkalmazásnak.
A folytatás előtt várja meg, amíg az üzembe helyezés befejeződik.
Az üzembehelyezési végpont lekérése
A tárolóalkalmazás üzembe helyezett végpontjának megjelenítéséhez használja az alábbi parancsot:
azd env get-valuesMásolja ki a
CONTAINER_APP_URLértéket. A következő szakaszban használod.
A csevegőalkalmazás ismételt üzembe helyezése a terheléselosztó végpontjával
Ezek a példák a csevegőalkalmazás mintáján fejeződnek be.
- Kezdeti üzembe helyezés
- Átcsoportosítás
Nyissa meg a csevegőalkalmazás-minta fejlesztői tárolóját az alábbi lehetőségek egyikével.
Nyelv GitHub Codespaces Visual Studio Code .NET Megnyitás a GitHub Codespacesben
Megnyitás Fejlesztői Konténerekben
JavaScript Megnyitás a GitHub Codespacesben
Megnyitás Fejlesztői Konténerekben
Python Megnyitás a GitHub Codespacesben
Megnyitás Fejlesztői Konténerekben
Jelentkezzen be az Azure Developer CLI-be (
AZD):azd auth loginFejezze be a bejelentkezési utasításokat.
Hozzon létre egy
AZDkörnyezetet példáulchat-appnévvel:azd env new <name>Adja hozzá a következő környezeti változót, amely arra utasítja a csevegőalkalmazás háttérrendszerét, hogy egyéni URL-címet használjon az Azure OpenAI-kérelmekhez:
azd env set OPENAI_HOST azure_customAdja hozzá a következő környezeti változót. Helyettesítse a
<CONTAINER_APP_URL>-t az előző szakasz URL-címével. Ez a művelet megmutatja a csevegőalkalmazás háttérrendszerének, hogy mi az érték az Azure OpenAI-kérés egyéni URL-címében.azd env set AZURE_OPENAI_CUSTOM_URL <CONTAINER_APP_URL>A csevegőalkalmazás üzembe helyezése:
azd up
Használja a csevegőalkalmazást azzal a magabiztossággal, hogy a kvóta elfogyása nélkül skálázható több felhasználóra.
Naplók streamelése a terheléselosztó eredményeinek megtekintéséhez
Az Azure portálon keressen rá az erőforráscsoportra.
A csoport erőforrásainak listájában válassza ki az Azure Container Apps-erőforrást.
A napló megtekintéséhez válassza a Figyelési>naplófolyam lehetőséget.
A csevegőalkalmazással forgalmat generálhat a naplóban.
Keresse meg az Azure OpenAI-erőforrásokra hivatkozó naplókat. A három erőforrás mindegyike numerikus identitással rendelkezik a napló megjegyzésében, amely
Proxying to https://openai3kezdődik, ahol3a harmadik Azure OpenAI-erőforrást jelöli.
Amikor a terheléselosztó olyan állapotot kap, hogy a kérelem túllépi a kvótát, a terheléselosztó automatikusan egy másik erőforrásra vált.
A TPM-kvóta konfigurálása
Alapértelmezés szerint a terheléselosztóban lévő Összes Azure OpenAI-példány 30 000 token/perc kapacitással (TPM) van üzembe helyezve. A csevegőalkalmazást azzal a magabiztossággal használhatja, hogy a kvóta elfogyása nélkül skálázható több felhasználóra. Módosítsa ezt az értéket a következő esetekben:
- Az üzembehelyezési kapacitás hibáit tapasztalja: Csökkentse az értéket.
- Nagyobb kapacitásra van szüksége: Növelje az értéket.
Az érték módosításához használja a következő parancsot:
azd env set OPENAI_CAPACITY 50A terheléselosztó ismételt üzembe helyezése:
azd up
Az erőforrások tisztítása
Ha végzett a csevegőalkalmazással és a terheléselosztóval, törölje az erőforrásokat. A cikkben létrehozott Azure-erőforrások számlázása az Azure-előfizetésén keresztül történik. Ha a jövőben nem lesz szüksége ezekre az erőforrásokra, törölje őket, hogy elkerülje a további költségek felmerülését.
Csevegőalkalmazás-erőforrások eltávolítása
Térjen vissza a csevegőalkalmazás cikkéhez az erőforrások törléséhez:
- .NET
- JavaScript
- Python
A feltöltési kiegyensúlyozó erőforrásainak tisztítása
Törölje az Azure-erőforrásokat, és távolítsa el a forráskódot:
azd down --purge --force
A kapcsolók a következőt biztosítják:
-
purge: A törölt erőforrások azonnal törlődnek, így percenként újra felhasználhatja az Azure OpenAI szolgáltatás jogkivonatait. -
force: A törlés észrevétlenül, felhasználói hozzájárulás nélkül történik.
A GitHub Codespaces és a Visual Studio Code eltávolítása
- GitHub Codespaces
- Visual Studio Code
A GitHub Codespaces-környezet törlése biztosítja, hogy maximálisan kihasználható legyen a fiókhoz tartozó ingyenes óránkénti jogosultság.
Fontos
A GitHub-fiók jogosultságairól további információt a GitHub Codespaces havonta foglalt tárterületéről és alapóráiról a következő oldalon talál: GitHub Codespaces havi foglalt tárterület és alapórák.
Lépjen be a GitHub Codespaces irányítópultra.
Keresse meg az azure-samples/openai-aca-lb GitHub-adattárból származó jelenleg futó kódtereket.
Nyissa meg a kódtér helyi menüjét, majd válassza a Törléslehetőséget.
Segítség kérése
Ha nem sikerül üzembe helyeznie az Azure Container Apps terheléselosztót, vegye fel a problémát az adattár Problémák weblapjára.
Mintakód
A cikkben használt minták a következők:
Következő lépés
- Az Azure Load Testing segítségével tesztelje a csevegőalkalmazás teljesítményét az Azure Terheléses Tesztelési szolgáltatással.
- További információ az Azure Developer CLI (AZD) használatáról ebben a sablonban: