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.
Ez a cikk bemutatja, hogyan helyezheti üzembe és futtathatja a Chatet saját adatmintával .NET. Ez a minta egy csevegőalkalmazást implementál C#, Azure OpenAI Service és Retrieval Augmented Generation (RAG) használatával Azure AI Keresés, hogy választ kapjon egy fiktív vállalat alkalmazotti juttatásairól. Az alkalmazottak juttatásait tartalmazó csevegőalkalmazás pdf-fájlokkal van elszórva, beleértve az alkalmazottak kézikönyvét, az előnyöket tartalmazó dokumentumot, valamint a vállalati szerepkörök és elvárások listáját.
Ebben a cikkben a következőt találja:
- Egy chat alkalmazás üzembe helyezése az Azure platformon.
- Válaszokat kaphat az alkalmazottak juttatásairól.
- A válaszok viselkedésének módosításához módosítsa a beállításokat.
Az eljárás elvégzése után kezdje el módosítani az új projektet az egyéni kóddal.
Ez a cikk egy cikkgyűjtemény része, amely bemutatja, hogyan hozhat létre csevegőalkalmazást Azure OpenAI szolgáltatás és Azure AI Keresés használatával.
A gyűjtemény további cikkei a következők:
Architekturális áttekintés
Ebben a mintaalkalmazásban a Contoso Electronics nevű fiktív vállalat biztosítja a csevegőalkalmazás élményét az alkalmazottaknak, hogy kérdéseket tegyenek fel az előnyökről, a belső szabályzatokról, valamint a munkaköri leírásokról és szerepkörökről.
A csevegőalkalmazás architektúrája az alábbi ábrán látható:
- Felhasználói felület – Az alkalmazás csevegő felülete egy Blazor WebAssembly-alkalmazás . Ez a felület fogadja a felhasználói lekérdezéseket, irányítja a kéréseket az alkalmazás háttérrendszeréhez, és megjeleníti a létrehozott válaszokat.
-
Backend – Az alkalmazás háttérrendszere egy ASP.NET Core Minimális API. A háttérrendszer üzemelteti a Blazor statikus webalkalmazást, és ez vezényli a különböző szolgáltatások közötti interakciókat. Az alkalmazásban használt szolgáltatások a következők:
- Azure AI Keresés – Egy Azure Storage-fiókban tárolt adatokból indexeli a dokumentumokat. Így a dokumentumok vektorkeresési képességekkel kereshetők.
- Azure OpenAI Service – A nagy nyelvi modelleket (LLM) biztosítja a válaszok létrehozásához. Microsoft Agent Framework a Azure OpenAI Service együtt használják az összetettebb AI-munkafolyamatok vezénylésére.
Költség
Az architektúra legtöbb erőforrása alapszintű vagy fogyasztásalapú díjszabást használ. A használati díjszabás a használaton alapul, ami azt jelenti, hogy csak azért kell fizetnie, amit használ. A cikk elvégzéséhez díjat kell fizetnie, de ez minimális. Miután elolvasta a cikket, törölje az erőforrásokat, hogy elkerülje a költségeket.
További információért lásd: Azure példagyűjtemények: Költség a mintatárolóban.
Előfeltételek
A cikk elvégzéséhez szükséges összes függőséget tartalmazó fejlesztői tárolókörnyezet érhető el. A fejlesztési tárolót GitHub Kódterekben (böngészőben) vagy helyileg is futtathatja a Visual Studio Code használatával.
A cikk követéséhez a következő előfeltételekre van szüksége:
- Egy Azure-előfizetés – A előfizetés létrehozása ingyenesen
- Azure fiókengedélyek – Az Azure-fióknak rendelkeznie kell Microsoft.Authorization/szerepkör-hozzárendelések/írási engedélyekkel, például Felhasználói hozzáférés-kezelő vagy Tulajdonos.
- GitHub fiók
Nyílt fejlesztési környezet
Kezdje most a jelen cikk végrehajtásához telepített összes függőséget tartalmazó fejlesztői környezettel.
GitHub Codespaces felhasználói felületként egy GitHub által felügyelt fejlesztési tárolót futtat Visual Studio Code web. A legegyszerűbb fejlesztési környezethez használja a GitHub Codespace-eket, hogy a megfelelő fejlesztői eszközök és függőségek legyenek előre telepítve a cikk elvégzéséhez.
Fontos
Minden GitHub-fiók legfeljebb 60 órán át használhatja a Codespace-eket havonta 2 magpéldánysal. További információért lásd: A GitHub Codespaces havonta tartalmazott tárterületet és alapórákat.
Indítsa el a folyamatot egy új GitHub kódtér létrehozásához a
mainGitHub adattárAzure-Samples/azure-search-openai-demo-csharpágán.A fejlesztési környezet és a dokumentáció párhuzamos használatához kattintson a jobb gombbal az alábbi Open in GitHub Codespaces gombra, és válassza a Hivatkozás megnyitása új ablakban lehetőséget.
A Kódtér létrehozása lapon tekintse át a kódtér konfigurációs beállításait, majd válassza az Új kódtér létrehozása lehetőséget:
Várjon, amíg a codespace elindul. Ez az indítási folyamat eltarthat néhány percig.
A képernyő alján lévő terminálban jelentkezzen be az Azure fejlesztői parancssori felülettel az Azure-ba.
azd auth loginMásolja ki a kódot a terminálból, majd illessze be egy böngészőbe. Kövesse az utasításokat a Azure-fiókjával való hitelesítéshez.
A cikkben szereplő fennmaradó feladatok ennek a fejlesztési tárolónak a kontextusában történnek.
Üzembe helyezés és futtatás
A mintaadattár tartalmazza a csevegőalkalmazás Azure való üzembe helyezéséhez szükséges összes kódot és konfigurációs fájlt. Az alábbi lépések végigvezetik a minta Azure üzembe helyezésének folyamatán.
Csevegőalkalmazás üzembe helyezése az Azure platformon
Fontos
Az ebben a szakaszban létrehozott Azure-erőforrások azonnali költségekkel járnak, elsősorban az Azure AI Keresés erőforrás miatt. Ezek az erőforrások akkor is költségekkel járhatnak, ha a parancsot a teljes végrehajtás előtt megszakítja.
Futtassa a következő Azure Fejlesztői parancssori felület parancsot a Azure erőforrások kiépítéséhez és a forráskód üzembe helyezéséhez:
azd upAmikor a rendszer kéri, hogy adjon meg egy környezetnevet, tartsa rövid és kisbetűsként. Például:
myenv. Az erőforráscsoport nevének részeként használják.Amikor a rendszer kéri, válasszon ki egy előfizetést az erőforrások létrehozásához.
Amikor a rendszer első alkalommal kéri egy hely kiválasztását, válasszon ki egy Önhöz közeli helyet. Ezt a helyet használják a legtöbb erőforráshoz, beleértve az üzemeltetést is.
Ha a rendszer az OpenAI-modell helyét kéri, válasszon egy Önhöz közeli helyet. Ha ugyanaz a hely érhető el, mint az első hely, válassza ezt.
Várja meg az alkalmazás üzembe helyezését. Az üzembe helyezés akár 20 percet is igénybe vehet.
Az alkalmazás sikeres üzembe helyezése után megjelenik egy URL-cím a terminálban.
Válassza ki a címkével ellátott URL-címet
Deploying service weba csevegőalkalmazás böngészőben való megnyitásához.
A csevegőalkalmazás használata a PDF-fájlokból való válaszok lekéréséhez
A csevegőalkalmazás előre be van töltve a PDF-fájlokból származó alkalmazottak juttatási adataival. A csevegőalkalmazással kérdéseket tehet fel az előnyökről. Az alábbi lépések végigvezetik a csevegőalkalmazás használatának folyamatán.
A böngészőben lépjen a Csevegés lapra a bal oldali navigációs sávon.
Válassza vagy írja be a "Mi szerepel a Northwind Health Plus csomagomban, amely nem szabványos?" szöveget a csevegés szövegmezőjében. A válasz hasonló az alábbi képhez.
A válaszból válasszon ki egy idézetet. Ekkor megnyílik egy előugró ablak, amely megjeleníti az információ forrását.
A válaszmező tetején található fülek között navigálva megtudhatja, hogyan jött létre a válasz.
Fül Leírás Gondolkodási folyamat Ez a csevegésben lévő interakciók szkriptje. Megtekintheti a rendszerkérést ( content) és a felhasználói kérdést (content).Támogató tartalom Ez magában foglalja a kérdés megválaszolásához szükséges információkat és a forrásanyagot. A forrásanyag-idézetek számát a fejlesztői beállításokban jegyezzük fel. Az alapértelmezett érték 3. Hivatkozás Ekkor megjelenik az idézetet tartalmazó forráslap. Ha elkészült, lépjen vissza a válasz lapra.
A csevegőalkalmazás beállításainak használata a válaszok viselkedésének módosításához
A csevegés intelligenciáját az OpenAI-modell és a modell használatához használt beállítások határozzák meg.
| Beállítás | Leírás |
|---|---|
| Prompt sablon felülbírálása | Ez az a prompt, amelyet a válasz generálásához használnak. |
| Ennyi keresési eredmény lekérése | Ez a válasz létrehozásához használt keresési eredmények száma. Ezeket a forrásokat a Gondolkodási folyamat és Támogató tartalom fülekben tekintheti meg az idézetnél. |
| Kategória kizárása | Ez a dokumentumkategória, amely nem szerepel a keresési eredmények között. |
| Szemantikai rangsoroló használata lekéréshez | Ez a Azure AI Keresés olyan funkciója, amely gépi tanulással javítja a keresési eredmények relevanciáját. |
| Lekérési mód | A vektorok + szöveg azt jelenti, hogy a keresési eredmények a dokumentumok szövegén és a dokumentumok beágyazásán alapulnak. A vektorok azt jelentik , hogy a keresési eredmények a dokumentumok beágyazásán alapulnak. A szöveg azt jelenti, hogy a keresési eredmények a dokumentumok szövegén alapulnak. |
| Lekérdezéskörnyezeti összegzések használata a teljes dokumentumok helyett | Ha a rendszer mindkettőt Use semantic rankerUse query-contextual summaries ellenőrzi, az LLM a legfontosabb szakaszokból kinyert feliratokat használja az összes szakasz helyett a legmagasabb rangsorolt dokumentumokban. |
| Nyomon követési kérdések ajánlása | A csevegőalkalmazás a válasz alapján javasoljon további kérdéseket. |
Az alábbi lépések végigvezetik a beállítások módosításának folyamatán.
A böngészőben válassza a fogaskerék ikont az oldal jobb felső sarkában.
Ha nincs bejelölve, jelölje be a Következő kérdések javasolása jelölőnégyzetet, és tegye fel újra ugyanezt a kérdést.
What is included in my Northwind Health Plus plan that is not in standard?Előfordulhat, hogy a csevegés a következő kérdésekre vonatkozó javaslatokkal tér vissza.
A Beállítások lapon törölje a Szemantikai rangsoroló használata lekéréshez jelölést.
Tegye fel újra ugyanezt a kérdést.
What is my deductible?Mi a különbség a válaszokban?
A szemantikai rangsorolót használó válasz egyetlen választ adott. A szemantikai rangsorolás nélküli válasz kevésbé közvetlen választ adott.
Erőforrások takarítása
A befejezéshez törölje a használt Azure és GitHub CodeSpaces-erőforrásokat.
Azure erőforrások törlése
A cikkben létrehozott Azure erőforrások számlázása az Azure-előfizetésére 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.
Futtassa a következő Azure fejlesztői parancssori felület parancsot a Azure erőforrások törléséhez és a forráskód eltávolításához:
azd down --purge
GitHub kódterek takarítása
A GitHub Codespaces-környezet törlése biztosítja, hogy maximálisan kihasználható legyen a fiókhoz tartozó ingyenes óraszámra vonatkozó jogosultság.
Fontos
A GitHub-fiók jogosultságairól további információt a GitHub Codespaces havi rendelkezésre álló tárhely és magóra című témakörben talál.
Jelentkezzen be a GitHub Codespaces irányítópultjára (https://github.com/codespaces).
Keresse meg a jelenleg futó kódtereket a
Azure-Samples/azure-search-openai-demo-csharpGitHub adattárból.
Nyissa meg a kódtér helyi menüjét, majd válassza a Törlés lehetőséget.
Segítség kérése
Ez a mintaadattár hibaelhárítási információkat kínál.
Ha a problémát nem oldják meg, jelentse be az adattár Issues részébe.
Következő lépések
- A cikkben használt minta forráskódjának létrehozása
- Csevegőalkalmazás létrehozása Azure OpenAI ajánlott eljárás megoldásarchitektúrájával
- Hozzáférés-ellenőrzés generatív MI alkalmazásokban az Azure AI Kereséssel
Vállalati használatra kész OpenAI-megoldás létrehozása Azure API Management - A vektorkeresés túllépése hibrid lekérési és rangsorolási képességekkel