Megosztás a következőn keresztül:


Ismerkedés a csevegéssel a Java-hoz készült saját adatmintával

Ez a cikk bemutatja, hogyan helyezheti üzembe és futtathatja a csevegést a Java-adatmintával. Ez a minta egy csevegőalkalmazást implementál a Java, az Azure OpenAI Service és a Retrieveal Augmented Generation (RAG) használatával az Azure AI Searchben, hogy válaszokat kapjon egy fiktív vállalat alkalmazotti juttatásairól. Az alkalmazás pdf-fájlokkal van elszórva, beleértve az alkalmazotti kézikönyvet, az előnyöket tartalmazó dokumentumot, valamint a vállalati szerepkörök és elvárások listáját.

A cikkben található utasításokat követve a következőket fogja követni:

  • 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 Service és az Azure AI Search használatával. A gyűjtemény további cikkei a következők:

Feljegyzés

Ez a cikk egy vagy több AI-alkalmazássablont használ a cikkben szereplő példák és útmutatók 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

A csevegőalkalmazás egyszerű architektúrája az alábbi ábrán látható:

Az architektúrát ábrázoló ábra az ügyféltől a háttéralkalmazásig.

Az architektúra fő összetevői a következők:

  • Egy webalkalmazás, amely az interaktív csevegési élményt üzemelteti.
  • Egy Azure AI Search-erőforrás, amely válaszokat kaphat saját adataiból.
  • Egy Azure OpenAI-szolgáltatás, amely a következőt nyújtja:
    • Kulcsszavak, amelyek javítják a keresést a saját adatain.
    • Válaszok az OpenAI-modellből.
    • Beágyazások az ada-modellből

Költség

Az architektúra legtöbb erőforrása alapszintű vagy használati tarifacsomagot 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 számítunk fel, de minimális lesz. Ha végzett a cikkel, törölheti az erőforrásokat, hogy ne keletkezhessenek díjak.

További információ a költségekről a mintaadattárban.

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ői tárolót a GitHub Codespacesben (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:

  • Azure-előfizetés – Ingyenes létrehozás
  • Azure-fiókengedélyek – Az Azure-fióknak Microsoft.Authorization/roleAssignments/write engedélyekkel kell rendelkeznie, például felhasználói hozzáférési rendszergazda vagy tulajdonos.
  • A hozzáférést az Azure OpenAI a kívánt Azure-előfizetésen belül kapja meg. Ezen szolgáltatáshoz jelenleg csak alkalmazás útján kapható hozzáférés. Az Azure OpenAI-hoz való hozzáférésre a következő https://aka.ms/oai/accessűrlap kitöltésével jelentkezhet: . Ha probléma merül fel, nyisson meg egy hibát az adattárban, és lépjen velünk kapcsolatba.
  • 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.

A GitHub Codespaces egy, a GitHub által felügyelt fejlesztői tárolót futtat a Webes Visual Studio Code-tal 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 2 magpéldánysal. További információ: GitHub Codespaces havonta tartalmazza a tárterületet és az alapórákat.

  1. Kattintson a jobb gombbal a következő gombra, és válassza a Megnyitás hivatkozást az új ablakokban , hogy egyszerre legyen elérhető a fejlesztési környezet és a dokumentáció is.

    Megnyitás a GitHub Codespacesben

  2. A Kódtér létrehozása lapon 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.

  3. Várja meg, amíg a kódtér elindul. Ez az indítási folyamat eltarthat néhány percig.

  4. A képernyő alján lévő terminálon jelentkezzen be az Azure-ba az Azure Developer CLI használatával.

    azd auth login
    
  5. Másolja ki a kódot a terminálból, majd illessze be egy böngészőbe. Kövesse az utasításokat az Azure-fiókkal való hitelesítéshez.

  6. 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 azonnali költségekkel járnak, elsősorban az Azure AI Search-erőforrásból. Ezek az erőforrások akkor is költségekkel járhatnak, ha a parancsot a teljes végrehajtás előtt megszakítja.

  1. Futtassa a következő Azure Developer CLI-parancsot az Azure-erőforrások kiépítéséhez és a forráskód üzembe helyezéséhez:

    azd up
    
  2. Ha 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.

  3. Amikor a rendszer kéri, válasszon ki egy előfizetést az erőforrások létrehozásához.

  4. 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.

  5. 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.

  6. Várja meg az alkalmazás üzembe helyezését. Az üzembe helyezés befejezése 5–10 percet is igénybe vehet.

  7. Az alkalmazás sikeres üzembe helyezése után megjelenik egy URL-cím a terminálban.

  8. Válassza ki a címkével ellátott URL-címet Deploying service web a csevegőalkalmazás böngészőben való megnyitásához. Képernyőkép a csevegőalkalmazásról a böngészőben, amelyen számos javaslat látható a csevegés bemenetére, valamint a kérdés megadására szolgáló csevegő szövegmező.

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.

  1. A böngészőben 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.

    Képernyőkép a csevegőalkalmazás első válaszáról.

  2. 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.

  3. 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 Ez a csevegésben lévő interakciók szkriptje.
    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.
    Idézés Ekkor megjelenik az idézetet tartalmazó PDF-oldal.
  4. 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

A csevegőalkalmazás intelligenciáját az OpenAI-modell és a modell használatához használt beállítások határozzák meg.

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 Ez az a kérdés, amely a válasz létrehozásához használatos.
Ennyi találat lekérése Ez a válasz létrehozásához használt keresési eredmények száma. Ezeket a forrásokat az idézet Gondolat folyamata és A tartalom támogatása lapján tekintheti meg.
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 az Azure AI Search egyik funkciója, amely gépi tanulással javítja a keresési eredmények relevanciáját.
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.
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árja, amíg a teljes válasz el nem érhető a válaszhoz.

Az alábbi lépések végigvezetik a beállítások módosításának folyamatán.

  1. A böngészőben válassza a Fejlesztői beállítások lapot.

  2. 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 my deductible?
    

    A csevegés az alábbihoz hasonló javasolt követési kérdéseket adott 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?
    
  3. 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.

  4. Újra felteheti ugyanezt a kérdést?

    What is my deductible?
    
  5. 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 szemantikai rangsorolás nélküli válasz egy választ adott vissza, ami több munkát igényelt a válasz lekéréséhez: 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 eltávolítása

Azure-erőforrások tisztítása

A cikkben létrehozott Azure-erőforrások számlázása az Azure-előfizetésbe kerül. 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 Developer CLI-parancsot az Azure-erőforrások törléséhez és a forráskód eltávolításához:

azd down --purge

GitHub-kódterek eltávolí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 havi tartalmazza a tárterületet és az alapórákat.

  1. Jelentkezzen be a GitHub Codespaces irányítópultjára (https://github.com/codespaces).
  2. Keresse meg a Jelenleg futó, a Azure-Samples/azure-search-openai-demo-java GitHub-adattárból származó kódtereket. Képernyőkép az összes futó kódtérről, beleértve azok állapotát és sablonjait.
  3. 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 elválasztva:

  • Egy előtérbeli JavaScript-alkalmazás a React-keretrendszer és a Vite buildelési eszköz használatával.
  • Egy háttérbeli Java-alkalmazás választ ad a kérdésre.

A háttér /chat API végigvezeti a válasz beszerzésének folyamatán:

  • RAG-beállítások létrehozása: Hozzon létre egy olyan beállításkészletet, amely a válasz létrehozásához lesz felhasználva.
  • 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éssel: A megközelítés és a RAG beállításokkal az előző beszélgetés alapján 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.

Ha a kibocsátott probléma nem oldja meg a problémát, jelentkezzen be az adattár problémáiba.

Következő lépések