Ismerkedés a Python vállalati csevegési mintával a RAG használatával
Ez a cikk bemutatja, hogyan helyezheti üzembe és futtathatja a Vállalati csevegőalkalmazás-mintát Pythonhoz. Ez a minta egy csevegőalkalmazást implementál a Python, 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.
Az eljárás elvégzé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ú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és Rendszergazda istrator 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.
Indítsa el az új GitHub Codespace létrehozásának folyamatát a
main
Azure-Samples/azure-search-openai-demo
GitHub-adattár ágán.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.
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árja meg, amíg a kódtér elindul. Ez az indítási folyamat eltarthat néhány percig.
A képernyő alján lévő terminálon jelentkezzen be az Azure-ba az Azure Developer CLI használatával.
azd auth login
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.
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.
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
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.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 vagy a Dokumentumintelligencia-erőforrás helyét kéri, válassza ki az Önhöz legközelebbi helyet. Ha ugyanaz a hely érhető el, mint az első hely, válassza ezt.
A folytatás előtt várjon 5 vagy 10 percet az alkalmazás üzembe helyezése után.
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
(✓) Done: Deploying service webapp
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ó 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 válaszok a mögöttes modellek frissítésekor változhatnak.
A böngészőben válassza ki vagy írja be a Mi történik a teljesítményértékelésben? lehetőséget a csevegés szövegmezőjében.
A válaszból válasszon ki egy idézetet.
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. 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. Idézés Ekkor megjelenik az idézetet tartalmazó eredeti oldal. 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é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 |
---|---|
Parancssori sablon felülbírálása | Ez az a kérdés, amely a válasz létrehozásához használatos. |
Hőmérséklet | Az utolsó Chat Completion API-híváshoz használt hőmérséklet, egy 0 és 1 közötti szám, amely szabályozza a modell "kreativitását". |
Minimális keresési pontszám | A válasz létrehozásához használt keresési eredmények minimális pontszáma. A tartomány a használt keresési módtól függ. |
Reranker-pontszám minimális értéke | A válasz létrehozásához használt keresési eredmények szemantikai rangsorolójának minimális pontszáma. 0 és 4 közötti tartomány. |
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 mindkettőt Use semantic ranker Use query-contextual summaries ellenőrzi, az LLM a legfontosabb szakaszokból kinyert képaláírás használja a legmagasabb rangsorolt dokumentumokban az összes rész 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á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.
A böngészőben válassza a Fejlesztői Gépház lapot.
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 happens in a performance review?
A csevegés az alábbihoz hasonló javasolt követési kérdéseket adott vissza:
1. What is the frequency of performance reviews? 2. How can employees prepare for a performance review? 3. Can employees dispute the feedback received during the performance review?
A Gépház lapon törölje a jelölést: Szemantikai rangsoroló használata a lekéréshez.
Újra felteheti ugyanezt a kérdést?
What happens in a performance review?
Mi a különbség a válaszokban?
A Szemantikai rangsorolóval: A Contoso Electronics teljesítményértékelése során az alkalmazottaknak lehetőségük lesz megvitatni a munkahelyi sikereiket és kihívásaikat (1). A felülvizsgálat pozitív és konstruktív visszajelzést ad az alkalmazottaknak a szerepkörük fejlesztéséhez és növekedéséhez (1). Az alkalmazott írásos összefoglalót kap a teljesítményértékelésről, amely tartalmazza a következő évre vonatkozó teljesítményértékelést, visszajelzést, célokat és célkitűzéseket (1). A teljesítményértékelés kétirányú párbeszéd a vezetők és az alkalmazottak között (1).
A Szemantikai rangsoroló nélkül: A Contoso Electronics teljesítményértékelése során az alkalmazottaknak lehetőségük van megvitatni a munkahelyi sikereiket és kihívásaikat. Pozitív és konstruktív visszajelzések segítik az alkalmazottakat abban, hogy fejlődjenek és növekedjenek a szerepköreik. Írásos összegzést kap a teljesítményértékelésről, beleértve a teljesítményértékelést, a visszajelzéseket és a közelgő évre vonatkozó célokat. A felülvizsgálat kétirányú párbeszéd a vezetők és az alkalmazottak között (1).
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 --force
A kapcsolók a következőt biztosítják:
purge
: A törölt erőforrások azonnal törlődnek. Ez lehetővé teszi az Azure OpenAI TPM újrafelhasználását.force
: A törlés csendesen, felhasználói hozzájárulás nélkül történik.
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.
Jelentkezzen be a GitHub Codespaces irányítópultjára (https://github.com/codespaces).
Keresse meg a Jelenleg futó, a
Azure-Samples/azure-search-openai-demo
GitHub-adattárból származó kódtereket.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 nyújt.
Ha a probléma nem oldja meg a problémát, jelentkezzen be az adattár problémáiba.
Következő lépések
- Vállalati csevegőalkalmazás GitHub-adattára
- Csevegőalkalmazás létrehozása az Azure OpenAI ajánlott eljárású megoldásarchitektúrájával
- Hozzáférés-vezérlés a Generative AI-alkalmazásokban az Azure AI Search használatával
- Nagyvállalati használatra kész OpenAI-megoldás létrehozása az Azure API Management használatával
- A vektorkeresés túllépése hibrid lekérési és rangsorolási képességekkel
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: