{"id":27155861,"url":"https://github.com/cloudsteak/trn-azure-ai","last_synced_at":"2025-04-08T19:57:08.344Z","repository":{"id":231089857,"uuid":"780790751","full_name":"cloudsteak/trn-azure-ai","owner":"cloudsteak","description":"Alap AI példa Azure-ban","archived":false,"fork":false,"pushed_at":"2025-03-30T13:48:07.000Z","size":2140,"stargazers_count":0,"open_issues_count":0,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-03-30T14:31:06.230Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloudsteak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-02T06:59:40.000Z","updated_at":"2025-03-30T13:48:11.000Z","dependencies_parsed_at":"2024-04-02T12:44:38.744Z","dependency_job_id":"188e8ae2-1e3a-470a-9be8-8d39fb3af22c","html_url":"https://github.com/cloudsteak/trn-azure-ai","commit_stats":null,"previous_names":["cloudsteak/trn-azure-ai"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudsteak%2Ftrn-azure-ai","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudsteak%2Ftrn-azure-ai/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudsteak%2Ftrn-azure-ai/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudsteak%2Ftrn-azure-ai/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloudsteak","download_url":"https://codeload.github.com/cloudsteak/trn-azure-ai/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247918923,"owners_count":21018044,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-08T19:57:07.690Z","updated_at":"2025-04-08T19:57:08.332Z","avatar_url":"https://github.com/cloudsteak.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Alap AI példa Azure-ban\n\nManapság a Mesterséges Intelligencia az egyik legfelkapottabb témakör. Emellett minden felhőszolgáltató igyekszik a saját AI szolgáltatásait minél jobban népszerűsíteni. Az Azure is ezen cégek közé tartozik, így én is úgy gondoltam, hogy érdemes lenne egy kis bevezetőt írni az Azure AI szolgáltatásairól.\n\n## Azure AI\n\nAz Azure AI egy olyan felhőalapú szolgáltatás, amely lehetővé teszi a fejlesztők számára, hogy könnyedén integrálják az AI-t a saját alkalmazásaikba. Az Azure AI szolgáltatások között megtalálhatóak a következők:\n\n- Azure Cognitive Services\n- Azure Machine Learning\n- Azure Bot Service\n- Azure Databricks\n- Azure OpenAI\n- Azure OpenAI Studio\n\nEzen szolgáltatások segítségével a fejlesztők képesek lehetnek például beszéd- és képfelismerésre, valamint gépi tanulásra alapozott alkalmazásokat készíteni.\n\nMi jelenleg az Azure OpenAI-t fogjuk megvizsgálni. Ez az amivel a leggyorsabban és legkönnyebben lehet elkezdeni.\n\n## Azure Cognitive Services\n\nAz Azure Cognitive Services egy olyan felhőalapú szolgáltatás, amely lehetővé teszi a fejlesztők számára, hogy könnyedén integrálják az AI-t a saját alkalmazásaikba. Az Azure Cognitive Services szolgáltatások között megtalálhatóak a következők:\n\n- Vision\n- Speech\n- Language\n- Decision\n- Web Search\n\nEzen szolgáltatások segítségével a fejlesztők képesek lehetnek például beszéd- és képfelismerésre, valamint gépi tanulásra alapozott alkalmazásokat készíteni.\n\n## Hogyan kezdjük el?\n\nAzure-ban a legegyszerűbb eszközünk, ahol el tudjuk kezdeni, az [Azure OpenAI Studio](https://oai.azure.com/).\n\nAz Azure OpenAI Studio egy olyan felhőalapú szolgáltatás, amely lehetővé teszi a fejlesztők számára, hogy könnyedén integrálják az AI-t a saját alkalmazásaikba. Az Azure OpenAI Studio szolgáltatások.\n\nEz az Azure AI Foundry része, amely egy olyan platform, amely lehetővé teszi a cégek számára, hogy könnyedén integrálják az AI-t a saját alkalmazásaikba. Itt találunk nagy nyelvi modelleket (LLM) és egyéb AI eszközöket, amelyek segítségével a fejlesztők képesek lehetnek például beszéd- és képfelismerésre, valamint gépi tanulásra alapozott alkalmazásokat készíteni.\n\nA teljes felület már magyarul is elérhető, így könnyedén navigálhatunk rajta.\n\nItt néhány egyszerű beállítást követően már el is kezdhetjük az AI modellek fejlesztését. Az Azure OpenAI Studio egy teljesen ingyenes eszköz, amely lehetővé teszi a fejlesztők számára, hogy könnyedén készítsenek és teszteljenek AI modelleket.\n\nMegjegyzés: Az AI stúdióban hasznélt erőforrások és szolgáltatások naghyrésze fizetsetős, így figyeljün kazok áraira és használatára.\n\nTehát az Azure OpenAI Studio-ban találjuk a különböző OpenAI modelleket, amelyeket az Azure Cognitive Services nyújt. Az egyes modellek használatához csak egy kattintásra van szükség, és már használhatjuk is azokat.\n\nAhhoz, hogy ezeket a modelleket használni tudjiuk, létre kell hoznunk egy Deployment-et. Ezt a Deployment-et aztán egy API-n keresztül tudjuk elérni, és használni a kiválasztott modelleket.\n\n### Deployment (üzemelő példányok) létrehozása\n\n1. Az Azure OpenAI Studio-ban kattintsunk a Üzemelő példányok menüpontra.\n2. Kattintsunk a **+ Modell üzembe helyezése**, majd a **Alapmodell üzembe helyezése** gombra.\n3. Válasszuk ki a kívánt modelt (pl.: gpt-4o), majd kattintsunk a **Megerősítése** gombra.\n\n![Deployment létrehozása 1](./images/deploy-model.png)\n\n4. Adjunk neki egy nevet.\n5. Állítsuk be az egyéb paramétereket.\n6. Kattintsunk a **Üzembe helyezés** gombra.\n\n![Deployment létrehozása 2](./images/create-deployment.png)\n\n![Minden Deployment](./images/all-deployment.png)\n\n### Chat játszótér\n\nHa van egy Deploymentünk, akkor már használhatjuk is az adott modelt. Az Azure OpenAI Studio-ban található egy Chat játszótér, ahol kipróbálhatjuk az adott modelleket.\n\nEz így használhatjuk:\n\n1. Az Azure OpenAI Studio-ban kattintsunk a Chat menüpontra.\n2. Jobb oldalon, a **Üzembe helyezés** részben válasszuk ki a a modellt.\n3. A képernyő közepén lévő chat ablakban írjuk be a kérdéseinket.\n\n![Chat játszótér](./images/chat-playground.png)\n\n#### Több stílusú beszélgetés\n\nTöbb beszélgetési stílusban is kommunikálhatunk az AI-val. Ehhez a **Give the model instructions and context** részben adnunk kell instrukciókat a nyelvi modell számára. Ez esetben ugyanazon kérdésre különböző válaszokat kaphatunk.\n\n**Kérdés:** Hogyan kezdjem el az Azure tanulást?\n\n**Stílus lerások**\n\n- Te egy tapasztalt informatikai szakértő vagy. Csak a tényekre támaszkodj.\n- Te egy egyetemi hallgató vagy, aki szinte csak szlengekben válaszol.\n- Te egy pesszimista ember vagy, aki már nem hajlandó újat tanulni.\n\nMost próbáljuk ki!\n\n## Saját adatforrás használata\n\nAz Azure Cognitive Services lehetőséget ad arra, hogy saját adatforrásokat is használjunk. Ehhez az Azure OpenAI Studio-ban a **Data** menüpontra kell kattintanunk, és ott tudjuk hozzáadni a saját adatforrásainkat. Ez azért lehet nekünk hasznos, mivel ez esetben nem kell 100%-ban az AI által talált adatokra hagyatkoznunk, illetve egyéb előnyei is vannak:\n\n- Az AI a mi adatainkon dolgozik, így nem kell aggódnunk a biztonság miatt.\n- Az AI a mi adatainkon dolgozik. (Ez lehet a saját dokumentációnk, vagy akár a saját képeink.)\n- Csökkenthetjük az AI-ra jellemző hallucinációt.\n- Az AI válaszai a mi adatainkon alapulnak, így pontosabbak lehetnek.\n\nEz lehet akár md fájl is, ami a kódunk, alkalmazásunk dokumentációját tartalmazza. Az AI így könnyedén válaszolhat a felhasználó kérdéseire.\n\n## Példa Azure OpenAI használatára\n\nAz alábbi példában egy egyszerű chatbotot fogunk készíteni, amely képes válaszolni a felhasználó kérdéseire.\n\nEhhez az alábbi erőforrások szükségesek:\n\n- Azure OpenAI\n- Azure tárfiók (Azure Storage account)\n- Azure AI keresőszolgáltatás (Azure AI Search)\n\n### 1. Azure OpenAI létrehozása\n\n1. Lépjünk be az Azure Portalba.\n2. Kattintsunk a **Erőforrás létrehozása** gombra.\n3. Keressük ráa az **Azure OpenAI** lehetőségre.\n4. Kattintsunk a **Létrehozás** gombra.\n5. Töltsük ki a szükséges mezőket.\n   - Tarifacsomag: Standard S0\n6. A **Felülvizsgálat és létrehozás** oldalon kattintsunk a **Létrehozás** gombra kattintva hozzuk létre az erőforrást.\n\n### 2. Azure tárfiók létrehozása\n\n1. Lépjünk be az Azure Portalba.\n2. Kattintsunk a **Erőforrás létrehozása** gombra.\n3. Keressük meg az **Tárolás** kategóriát.\n4. Válasszuk ki a **Tárfiók** lehetőséget.\n5. Kattintsunk a **Létrehozás** gombra.\n6. Töltsük ki a szükséges mezőket.\n   - Redundancia: LRS\n7. A **Felülvizsgálat és létrehozás** oldalon kattintsunk a **Létrehozás** gombra kattintva hozzuk létre az erőforrást.\n8. Nyissuk meg a tárfiókunkat, és kattintsunk a **Tárolók** menüpontra.\n9. Hozzunk létre egy új tárolót.\n   - Név: ai-forras\n   - Névtelen hozzáférés: Privát\n10. Kattintsunk az `ai-forras` tárolóra, majd töltsük fel a jsonl fájlt, amelyet az AI szolgáltatásunknak szeretnénk használni, mint adatforrás.\n\n### 3. Azure AI keresőszolgáltatás létrehozása\n\n1. Lépjünk be az Azure Portalba.\n2. Kattintsunk a **Erőforrás létrehozása** gombra.\n3. Keressünk rá a **Azure AI Search** lehetőségre.\n4. Kattints a **Létrehozás** gombra.\n5. Töltsük ki a szükséges mezőket.\n   - Név: mentor-ai-search\n   - Hely legyen ugyanaz, mint a tárfiókunknak\n   - Tarifacsomag: B (Alap)\n6. Megjegyzés: Az AI Search ezen tarifa csomagja nagyjából **havi 27 000 Forint**ba kerül. (Ezért csak akkor érdemes használni, ha valóban szükségünk van rá.)\n7. A **Felülvizsgálat és létrehozás** oldalon kattintsunk a **Létrehozás** gombra kattintva hozzuk létre az erőforrást.\n\n### 4. Saját adatforrás használata Chatbothoz Azure OpenAI Studio-ban\n\n1. Lépjünk be az Azure OpenAI Studio-ba.\n2. Kattintsunk a **Csevegés** menüpontra.\n3. A jobb oldalon, a **Beállítás** részben válasszuk ki a Modellt.\n4. A bal olalon, a **Beállítás** részben válasszuk ki a **Saját adatok hozzáadása** lehetőséget.\n5. Kattintsunk az **Adatforrás hozzáadása** gombra.\n6. Select a data source: **Azure Blob Storage**\n7. Blob storage account: Válasszuk ki az előbb létrehozott tárfiókunkat.\n8. Container: Válasszuk ki az `ai-forras` tárolót.\n9. Azure AI Search-nél válasszuk ki a **mentor-ai-search**-t.\n10. Enter the index name: dokumentum\n11. Indexelő ütemezése: **Hourly**\n12. Vektor keresés hozzáadása ehhez a keresési erőforráshoz:\n\n- **Igen**\n- Modell beágyazása: **text-embedding-ada-002**\n\n13. Kattintsunk a **Következő** gombra.\n14. Keresés típusa: **Vektor**\n15. Válasszon méretet: **1024**\n16. Kattintsunk a **Következő** gombra.\n17. A **Azure-erőforrás hitelesítésének típusa** résznél válasszuk az **API Key** lehetőséget.\n18. Kattintsunk a **Következő** gombra.\n19. Várjuk meg amíg a beállítások ellenőrzésre kerülnek.\n20. Összegző képernyőn kattintsunk a **Mentés és bezárás** gombra.\n21. Pár perc múlva az adatforrásunk elérhető lesz a Chatben.\n\n### 5. Webalkalmazás létrehozása Chatbothoz Azure-ban\n\n1. Az előző pontban létrehozott Chat játszótérben kattintsunk a **Üzembe helyezés** gombra.\n2. Válasszuk a **...webalkalmazásként** lehetőséget.\n3. Töltsük ki a szükséges mezőket.\n   - Name: mentor-chatbot\n   - Subscription: Válasszuk ki a megfelelő előfizetésünket.\n   - Resource group: Válasszuk ki a megfelelő erőforrás csoportunkat.\n   - Location: Válasszuk ki a megfelelő régiót.\n   - Pricing plan: B1\n   - Csevegési előzmények engedélyezése a webalkalmazásban: Igen (Ekkor egy Cosmos DB is létrejön a háttérben, amelyben tárolni fogjuk a csevegési előzményeket. - Ez költséges lehet, így ha nem szeretnénk, akkor válasszuk a **Nem** lehetőséget.)\n4. Kattintsunk a **Üzembe helyezés** gombra. (nagyjából 10-15 perc alatt elkészül)\n   ![Webalkalmazás üzembe helyezése](./images/webalkalmazas-deploy.png)\n\n### 6. Felhasználói azonosítás beállítása\n\nAmíg a webalkalmazásunk készül, addig beállíthatjuk a felhasználói azonosítást. Ez azért fontos, mert így csak azok férhetnek hozzá a webalkalmazásunkhoz, akiknek engedélyeztük.\n\n1. Lépjünk be az Azure Portalba.\n2. Kattintsunk a **Webalkalmazások** menüpontra.\n3. Kattintsunk a **mentor-chatbot** webalkalmazásunkra.\n4. A bal oldalon válasszuk a **Beállítások** menüpontot.\n5. Kattintsunk a **Hitelesítés** menüpontra.\n6. Kattintsunk a **Identitásszolgáltató hozzáadása** gombra.\n7. Válasszuk ki a **Microsoft** lehetőséget.\n8. Itt az alábbi beállításokat kell megadnunk:\n   - Munkaerő-konfiguráció (aktuális bérlő) Alkalmazottak és üzleti vendégek kezelése\n   - Alkalmazásregisztráció típusa: **Adja meg egy meglévő alkalmazás-regisztráció részleteit**\n   - Client ID: Adjuk meg a megfeleő alkalmazás Client ID-ját.\n   - Client Secret: Adjuk meg a megfeleő alkalmazás Client Secret-jét.\n   - Kiállító URL-címe: https://sts.windows.net/{tenant id}/v2.0\n   - Ügyfélalkalmazási követelmény: Csak magából az alkalmazásból érkező kérelmek engedélyezése\n   - Identitáskövetelmény: Bármely identitásból érkező kérelmek engedélyezése\n   - Bérlői követelmény: Csak a kibocsátó bérlőről érkező kérelmek engedélyezése\n   - Hozzáférés korlátozása: Hitelesítés megkövetelése\n   - Nem hitelesített kérelmek: HTTP 302 Found átirányítása: webhelyek esetén ajánlott\n   - Jogkivonat-tároló: Igen\n9. Kattintsunk a **Következő: Engedélyek** gombra.\n\n### 7. Alkalmazás tesztelése\n\n1. Lépjünk be az Azure Portalba.\n2. Kattintsunk a **Webalkalmazások** menüpontra.\n3. Kattintsunk a **mentor-chatbot** webalkalmazásunkra.\n4. Kattintsunk a **Webalkalmazás URL** linkre.\n5. A megnyíló ablakban kattintsunk a **Sign in with Microsoft** gombra.\n6. Kezdjünk el beszélgetni az AI-val.\n\n![AI Chat Webapp](./images/ai-chat-webapp.png)\n\n### 8. Példa kérdések 'prompt'\n\n1. Ma már minden a mesterséges intelligenciáról (AI) szól: Mit jelent ez számunkra?\n2. Hogyan telepítek NodeJs 20-at Linuxra?\n3. Hogyan telepítek Python3-at Windowsra?\n4. Mi az LLM és milyen LLM-eket ismerünk?\n5. Milyen eszközöket használhatunk LLM-alapú megoldások fejlesztésére?\n6. Mi a Webhook alkalmazási területei?\n7. Hogyan néz ki egy Cloud Administrator első napja?\n8. Milyen segédanyagokat találok az Azure témájú képzésekhez?\n9. Hogyan tudok kapcsolatot létesíteni az Azure Pipeline és a GitHub között?\n10. Hasonlítsd össze a következő eszközöket: Azure DevOps és GitHub?\n\n## Asszisztens létrehozása saját adatforrással\n\nAzure OpenAI Studio-ban lehetőségünk van saját adatforrások használatára. Ezt az előző pontokban már részleteztük, most pedig egy példán keresztül mutatjuk be, hogyan hozhatunk létre egy chat alkalmazást, amely képes válaszolni a felhasználó kérdéseire.\n\nA jelenleg nagyon divatos asszisztenst it is létrehozhatjuk, amely képes válaszolni a felhasználó kérdéseire. Ezt még egyszerűbben is megtehetjük, mint a Chat esetében. Ráadásul dokumentumainkat is felhasználhatjuk az AI válaszainak kialakításához. Ezeket a dokumentumokat az Azure OpenAI Studio-ban a **Data Files** menüpontban tudjuk feltölteni. Majd egy vektor adatbázist hozhatunk létre, amelyben az AI keresni fogja a válaszokat.\n\nMost nézzük ennek lépéseit:\n\n1. Lépjünk be az Azure OpenAI Studio-ba. https://oai.azure.com/\n2. Kattintsunk a **Assistant** menüpontra.\n3. A jobb oldalon, a **Configuration** részben válasszuk ki a Deploymentet. (Pl.: alap-gpt35-turbo)\n4. Majd kattintsunk a **+ Create an assistant** gombra.\n5. Adjunk neki egy nevet. (Pl.: mentor-asszisztens)\n6. Instructions részben adhatunk instrukciókat az AI-nek. (Pl.: Te egy tapasztalt informatikai szakértő vagy. Csak a tényekre támaszkodj.)\n7. Tools részben kapcsoljuk be a **File search** lehetőséget.\n8. Kattintsunk a **+ Add vector store** gombra.\n9. Adjunk neki egy nevet. (Pl.: mentor-vektor)\n10. görgessünk lejjebb és kapcsoljuk be a **Select local files** lehetőséget.\n11. Keressük meg a dokumentációinkat, és jelöljük ki azokat. Majd kezdjük meg a feltöltést.\n12. Kattintsunk a **Upload and add** gombra.\n13. Várjuk meg amíg a feltöltés befejeződik.\n14. Vektor adatbázis állapotának ellnőrzése: A bal oldalon, a **Vector stores** részben ellenőrizzük, hogy a vektor adatbázisunk állapota **Completed**-re változott-e.\n15. Navigéljunk vissza az **Assistant** menüpontra.\n16. Teszteljük az asszisztenst.\n\n**Példa kérdések 'prompt'**\n\n1. Ma már minden a mesterséges intelligenciáról (AI) szól: Mit jelent ez számunkra?\n2. Hogyan telepítek NodeJs 20-at Linuxra?\n3. Hogyan telepítek Python3-at Windowsra?\n4. Mi az LLM és milyen LLM-eket ismerünk?\n5. Milyen eszközöket használhatunk LLM-alapú megoldások fejlesztésére?\n6. Mi a Webhook alkalmazási területei?\n7. Hogyan néz ki egy Cloud Administrator első napja?\n8. Milyen segédanyagokat találok az Azure témájú képzésekhez?\n9. Hogyan tudok kapcsolatot létesíteni az Azure Pipeline és a GitHub között?\n10. Hasonlítsd össze a következő eszközöket: Azure DevOps és GitHub?\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudsteak%2Ftrn-azure-ai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloudsteak%2Ftrn-azure-ai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudsteak%2Ftrn-azure-ai/lists"}