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 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ő 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 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ó:

Diagram showing architecture from client to backend app.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 elolvasásának befejezéséhez díj fizetése szükséges, de az minimális. 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:

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 két alapvető példánnyal. 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.

    Open in GitHub CodespacesMegnyitá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.

    Screenshot of the confirmation screen before creating a new codespace.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. Az Azure-erőforrások kiépítése és a forráskód üzembe helyezése az alábbi parancs futtatásával:

    azd up
    
  2. Ha a rendszer kéri, hogy adjon meg egy környezetnevet, tartsa rövid és kisbetűs, 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, ami 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.

    A csevegőalkalmazás képernyőképe a böngészőben, amely számos javaslatot jelenít meg a csevegési bevitelhez, valamint azt a csevegőablakot, ahol kérdést ad meg.

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

    Screenshot of chat app's first answer.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.

    Screenshot of chat app's first answer with its citation highlighted in a red box.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 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.
    Idézés Megjeleníti az idézetet tartalmazó PDF-lapot.
  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

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.

Screenshot of chat developer settings.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 az idézet Gondolat folyamata és A tartalom támogatása lapján 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 Search 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 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?
    
  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. 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 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 vezérlőpultjára.

  2. Keresse meg a jelenleg futó, az Azure-Samples/azure-search-openai-demo-java GitHub-adattárból származó kódtereket.

    Screenshot of all the running Codespaces including their status and templates.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.

    Screenshot of the context menu for a single codespace with the delete option highlighted.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: 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é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. 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