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 adhat hozzá nagyvállalati szintű 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 API Management használatával intelligensen irányítja a forgalmat három Azure OpenAI-erőforrás között.
A cikk szerint két különálló mintát kell üzembe helyeznie:
- Csevegőalkalmazás:
- Várja meg a csevegőalkalmazás üzembe helyezését a terheléselosztó-minta üzembe helyezéséig.
- 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.
- Terheléselosztó az Azure API Managementtel.
Feljegyzés
Ez a cikk egy vagy több AI-alkalmazássablont használ a példák és útmutatók 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 API Management 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 az API Managementtel. Ez a megoldás zökkenőmentesen elérhetővé tesz egy végpontot az API Managementből a csevegőalkalmazás-kiszolgáló számára.
Az API Management-erőforrás API-rétegként az Azure OpenAI-erőforrások egy készlete előtt helyezkedik el. Az API-réteg két forgatókönyvre vonatkozik: normál működés és korlátozott. Egy olyan normál forgatókönyvben, amelyben a jogkivonat és a modellkvóta elérhető, az Azure OpenAI-erőforrás egy 200-ás értéket ad vissza az API-rétegen és a háttéralkalmazás-kiszolgálón keresztül.
Ha egy erőforrást kvótakorlátok miatt szabályozni kell, az API-réteg azonnal megpróbálhat egy másik Azure OpenAI-erőforrást az eredeti csevegőalkalmazás-kérés teljesítésére.
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 folytatásához szükséges minden függőséggel. A fejlesztői tárolókat futtathatja a GitHub Codespacesben (böngészőben), vagy helyileg a Visual Studio Code használatával.
Az Azure API Management helyi kiegyensúlyozó mintaalkalmazásának megnyitása
A GitHub Codespaces egy, a GitHub által felügyelt fejlesztői konténert futtat a Visual Studio Code for the Web felhasználói felületként. 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ásd: GitHub Codespaces havi tárterület és alapóra tartalma.
Az Azure API Management terheléselosztó üzembe helyezése
A terheléselosztó Azure-ban való üzembe helyezéséhez jelentkezzen be az Azure Developer CLI-be (
AZD
):azd auth login
Fejezze be a bejelentkezési utasításokat.
A terheléselosztó alkalmazás üzembe helyezése:
azd up
Vá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. Ez a folyamat akár 30 percet is igénybe vehet.
A terheléselosztó végpontjának lekérése
Futtassa a következő Bash-parancsot az üzembe helyezés környezeti változóinak megtekintéséhez. Később szüksége lesz ezekre az információkra.
azd env get-values | grep APIM_GATEWAY_URL
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.
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 Codespaces alkalmazásban
Megnyitás a Fejlesztői konténerekben
JavaScript Megnyitás a GitHub Codespaces alkalmazásban
Megnyitás a Fejlesztői konténerekben
Piton Megnyitás a GitHub Codespaces alkalmazásban
Megnyitás a Fejlesztői konténerekben
Jelentkezzen be az Azure Developer CLI-be (
AZD
):azd auth login
Fejezze be a bejelentkezési utasításokat.
Hozzon létre egy
AZD
környezetet, nevezze el achat-app
néven: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_custom
Adja hozzá ezt a környezeti változót, amely közli a csevegőalkalmazás háttérrendszerével az Azure OpenAI-kérés egyéni URL-címét:
azd env set AZURE_OPENAI_CUSTOM_URL <APIM_GATEWAY_URL>
A csevegőalkalmazás üzembe helyezése:
azd up
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 50
A terheléselosztó ismételt üzembe helyezése:
azd up
Az erőforrások felszabadí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ásokat az Ön Azure-előfizetésére terheljük. 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.
A csevegőalkalmazás erőforrásainak törlése
Menjen vissza a csevegőalkalmazás cikkéhez az erőforrások megtisztítása érdekében.
- .NET
- JavaScript
- Piton
A terheléselosztó erőforrásainak törlése
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 megsemmisítésre kerülnek. Az Azure OpenAI-jogkivonatokat percenként újra felhasználhatja. - : A törlés csendesen, felhasználói hozzájárulás nélkül történik.
Az erőforrások felszabadítása
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 biztosított tárhelyéről és alapóráiról talál.
Lépjen be a GitHub Codespaces irányítópultra.
Keresse meg a
azure-samples/openai-apim-lb
GitHub-adattárból származó jelenleg futó kódtereket.Nyissa meg a GitHub Codespaces elem 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 API Management 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ések
- Az Azure API Management diagnosztikai adatainak áttekintése az Azure Monitorban
- Az Azure Load Testing használatával végezze el a csevegőalkalmazás terheléses tesztelését az Azure Load Testing szolgáltatással.
- További információ az AZD használatáról ebben a sablonban: