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 telepítheti és futtathatja a Chat with your data Java-adatminta alkalmazást. Ez a minta egy csevegőalkalmazást implementál Java nyelven az Azure OpenAI-modellek Microsoft Foundrybeli változatával, és az Azure AI Keresés-ben elérhető Retrieval Augmented Generation (RAG) használatával, hogy választ adjon egy fiktív vállalat alkalmazotti juttatásaival kapcsolatos kérdésekre. Az 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.
Bemutató videó
Ebben a cikkben a következő feladatokat hajtja végre:
- Csevegőalkalmazás üzembe helyezése az Azure-ban.
- 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.
A cikk befejezése után megkezdheti az új projekt módosítását az egyéni kóddal.
Ez a cikk egy cikkgyűjtemény része, amely bemutatja, hogyan hozhat létre csevegőalkalmazást az Azure OpenAI-modellek használatával a Microsoft Foundryben és az Azure AI Keresésben. A gyűjtemény további cikkei a következők:
- .NET
- JavaScript
- Python
Megjegyzés
Ez a cikk egy vagy több AI-alkalmazássablonokat használ a cikkben szereplő példák és útmutatások alapjául. Az AI-alkalmazássablonok jól karbantartott, könnyen üzembe helyezhető referencia-implementációkat biztosítanak, amelyek segítenek magas színvonalú kiindulópontot biztosítani az AI-alkalmazások számára.
Architekturális áttekintés
Az alábbi ábra a csevegőalkalmazás egyszerű architektúráját mutatja be:
Az ügyféltől a háttéralkalmazásig terjedő architektúrát ábrázoló diagram.
Az architektúra fő összetevői a következők:
- Egy webalkalmazás, amely az interaktív csevegési felületet üzemelteti.
- Egy Azure AI Keresés erőforrás, amely válaszokat kap a saját adataiból.
- Egy Azure OpenAI Service, amely a következőt biztosítja:
- Kulcsszavak, amelyek javítják az ön adatainak keresését.
- Válaszok az OpenAI-modellből.
- Beágyazások az ada-modellből.
Költség
Az architektúrában használt erőforrások többsége alapszintű vagy használatalapú tarifacsomagok alá tartozik. Ez a díjszabási modell azt jelenti, hogy csak azért kell fizetnie, amit használ, és a költségek általában minimálisak a fejlesztés vagy a tesztelés során.
A minta elvégzéséhez előfordulhat, hogy kis költséggel jár az olyan szolgáltatások használata, mint az Azure OpenAI, az AI Search és a Storage. Ha végzett az alkalmazás kiértékelésével vagy üzembe helyezésével, törölje az összes kiépített erőforrást a folyamatos költségek elkerülése érdekében.
További információ a költségekről a példatárhelyben.
Előfeltételek
A cikk elvégzéséhez szükséges összes függőséget tartalmazó fejlesztői tárolókörnyezetre van szüksége. 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 használatához a következő előfeltételekre van szüksége:
- Codespaces (ajánlott)
- Visual Studio Code
- Azure-előfizetés – Hozzon létre egyet ingyenes.
- Azure-fiókengedélyek – Az Azure-fióknak
Microsoft.Authorization/roleAssignments/writeengedélyekkel kell rendelkeznie, például felhasználói hozzáférés-rendszergazdai vagy tulajdonosi. - Egy GitHub-fiók.
Nyílt fejlesztési környezet
Állítson be egy olyan fejlesztői környezetet, amely a jelen cikk végrehajtásához minden függőséget telepítve van.
- GitHub Codespaces (ajánlott)
- Visual Studio Code
GitHub Codespaces egy, a GitHub által felügyelt fejlesztői konténert futtat a Visual Studio Code for the Web-et használva 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 Codespace-eket havonta két alapvető példánnyal. További információért lásd: GitHub Codespaces havonta tartalmazott tárhely és processzoridő.
Kattintson a jobb gombbal a következő gombra, és válassza a Hivatkozás megnyitása új ablakban lehetőséget, hogy egyszerre legyen elérhető a fejlesztési környezet és a dokumentáció is.
`Megnyitás a GitHub Codespacesben`
A Kódtér létrehozása területen tekintse át a kódtér konfigurációs beállításait, majd válassza a Kódtér létrehozása lehetőséget.
Képernyőkép a megerősítést kérő képernyőről egy új kódtér létrehozása előtt.
Várja meg, amíg a Codespace elindul. Ez az indítási folyamat eltarthat néhány percig.
A képernyő alján található terminálban jelentkezzen be az Azure-ba az Azure Developer CLI használatával.
azd auth login --use-device-codeMásolja ki a kódot a terminálból, majd illessze be egy böngészőbe. Kövesse az utasításokat a hitelesítéshez a Azure-fiókjával.
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-ban 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-ban való üzembe helyezésének folyamatán.
Csevegőalkalmazás üzembe helyezése az Azure-ban
Fontos
Az ebben a szakaszban létrehozott Azure-erőforrások – különösen az Azure AI Keresés – amint üzembe helyezik őket, azonnal díjkötelessé válhatnak, még akkor is, ha az üzembe helyezés a befejezés előtt megszakad. A váratlan költségek elkerülése érdekében monitorozza az Azure-használatot, és a tesztelés után azonnal törölje a nem használt erőforrásokat.
Futtassa a következő parancsot a Azure erőforrások kiépítéséhez és a forráskód üzembe helyezéséhez:
azd upHa a rendszer kéri, hogy adjon meg egy környezetnevet, tartsa rövid és kisbetűs, például
myenv. A környezet nevét az erőforráscsoport nevének részeként használja a rendszer.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. Ez a hely a legtöbb erőforráshoz használható, 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 ki ezt a helyet.
Várja meg az alkalmazás üzembe helyezését, ami 5–10 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
Deploying service webcímkével ellátott URL-címet a 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ó alkalmazotti juttatási adatokkal. 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 válassza ki vagy írja be a csevegés szövegmezőjébe a következőt: Mi különbözik a standard csomagoktól a Northwind Health Plus csomagomban?.
A válaszból válassza ki az idézetek egyikét.
Képernyőkép a csevegőalkalmazás első válaszáról egy piros mezőben kiemelt idézettel.
A jobb oldali panelen a lapok segítségével megtudhatja, hogyan jött létre a válasz.
Lap Leírás Gondolkodási folyamat A csevegésben lévő interakciók szkriptje. Támogató tartalom Tartalmazza a kérdés megválaszolásához szükséges információkat és a forrásanyagot. Hivatkozás Megjeleníti az idézetet tartalmazó PDF-lapot. Ha elkészült, a kijelölt lap ismételt kiválasztásával zárja be a panelt.
A csevegőalkalmazás beállításainak használata a válaszok viselkedésének módosításához
Az OpenAI-modell és a modell használatához használt beállítások határozzák meg a csevegőalkalmazás intelligenciáját.
Képernyőkép a csevegés fejlesztői beállításairól.
| Beállítás | Leírás |
|---|---|
| Parancssori sablon felülbírálása | A válasz létrehozásához használt üzenet. |
| Ennyi találat lekérése | A válasz létrehozásához használt keresési eredmények száma. Ezeket a forrásokat a Gondolatfolyamat és Támogató tartalom fülein tekintheti meg. |
| Kategória kizárása | A keresési eredményekből kizárt dokumentumok kategóriája. |
| Szemantikai rangsoroló használata lekéréshez | Az Azure AI Keresés |
| Lekérdezéskörnyezeti összegzések használata a teljes dokumentumok helyett | Amikor mind a Use semantic ranker és a Use query-contextual summaries be van jelölve, az LLM a legmagasabb rangsorolt dokumentumokban kulcsfontosságú szakaszokból kinyert képaláírásokat használ az összes szakasz helyett. |
| 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. |
| 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. |
| Csevegés befejezésére adott válaszok streamelése | Válasz streamelése, ahelyett, hogy megvárnánk, amíg a teljes válasz elérhetővé válik. |
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 Fejlesztői beállítások lapot.
Jelölje be a Következő kérdések ajánlása jelölőnégyzetet, és tegye fel újra ugyanezt a kérdést.
What is my deductible?A csevegés az alábbihoz hasonló javasolt követési kérdéseket ad vissza:
1. What is the cost sharing for out-of-network services? 2. Are preventive care services subject to the deductible? 3. How does the prescription drug deductible work?A Beállítások lapon törölje a jelölést a Szemantikai rangsoroló használata lekéréshez jelölőnégyzetből.
Újra felteheti 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 például egyetlen választ adott:
The deductible for the Northwind Health Plus plan is $2,000 per year.A válasz szemantikai rangsorolás nélkül is adott egy választ, amelyhez több munka kellett ahhoz, hogy megkapjuk a választ:
Based on the information provided, it is unclear what your specific deductible is. The Northwind Health Plus plan has different deductible amounts for in-network and out-of-network services, and there is also a separate prescription drug deductible. I would recommend checking with your provider or referring to the specific benefits details for your plan to determine your deductible amount.
Az erőforrások felfrissítése
A gyakorlat elvégzése után távolítsa el azokat az erőforrásokat, amelyekre már nincs szüksége.
Azure-erőforrások tisztítása
Az ebben a cikkben létrehozott Azure-erőforrások az Azure-előfizetésére lesznek számlázva. 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. Az azure-erőforrások törléséhez és a forráskód eltávolításához használja a következő parancsot:
azd down --purge
GitHub kódterek tisztí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óért olvassa el a GitHub Codespaces havi tárhely és magóra kvóták dokumentációt.
Jelentkezzen be a GitHub Codespaces irányítópultba.
Keresse meg a jelenleg futó kódtereket, amelyek a Azure-Samples/azure-search-openai-demo-java GitHub adattárból származnak.
Képernyőkép az összes futó kódtérről, beleértve azok állapotát és sablonjait.
Nyissa meg a kódtér helyi menüjét, majd válassza a Törlés lehetőséget.
Képernyőkép egyetlen kódtér helyi menüjéről a törlési lehetőség kiemelésével.
Hogyan ad választ a kérdésre?
Az alkalmazás két alkalmazásra van osztva:
- Egy előtérbeli JavaScript-alkalmazás, amely a React-keretrendszert használja a Vite buildelési eszközzel.
- Egy háttéralkalmazás Java, amely választ ad a kérdésre.
A háttér /chat API lépésről lépésre elmagyarázza a válasz megszerzésének folyamatát:
- RAG-beállítások létrehozása: Válasz létrehozásához használt beállítások készletének létrehozása.
- Megközelítés létrehozása RAG-beállításokkal: A lekéréses és a generatív alapú modellek kombinációjával pontos és természetes hangzású választ hozhat létre.
- Futtassa a megközelítést a RAG beállításokkal és az előző beszélgetést felhasználva: Az előző beszélgetés alapján a megközelítéssel és a RAG beállításokkal hozhat létre választ. A válasz tartalmazza a válasz létrehozásához használt dokumentumokra vonatkozó információkat.
Segítség kérése
Ez a mintaadattár hibaelhárítási információkat nyújt. Amennyiben a problémáját nem orvosolják, rögzítse azt az adattár Problémákrészében.
Következő lépések
- A cikkben használt minta forráskódjának lekérése
- Az Azure OpenAI chatalkalmazás ajánlott megoldásarchitektúrája
- Hozzáférés-vezérlés generatív AI alkalmazásokban az Azure AI Keresés használatával
- Vállalati szintű OpenAI megoldás készítése az Azure API Managementtel
- A vektorkeresés teljesítményének javítása hibrid lekérési és rangsorolási képességekkel
- További Azure AI teljes körű sablonok
Képernyőkép a csevegőalkalmazás első válaszáról.
Képernyőkép a Parancssor paletta lehetőségéről, amely lehetővé teszi az aktuális mappa újbóli megnyitását a helyi környezetben.