Generative-AI-for-beginners-java / hu
AGENTS.md557 starsChanged 5 months agoMITView on GitHub
Ez egy oktató jellegű tároló a Generatív AI fejlesztés Java nyelven történő elsajátításához. Átfogó, gyakorlati tanfolyamot biztosít a Nagynyelvű modellek (LLM-ek), prompttervezés, beágyazások, RAG (Retrieval-Augmented Generation) és a Model Context Protocol (MCP) témakörében. Főbb technológiák: - Java 21 - Spring Boot 3.5.x - Spring AI 1.1.x - Maven - LangChain4j - Azure AI Foundry, Azure OpenAI és OpenAI SDK-k Architektúra: - Több önálló Spring Boot alkalmazás fejezetenként szervezve - Minta projektek, amelyek különböző AI mintákat mutatnak be - GitHub Codespaces…
- Reads credentials
- Deletes or force-pushes
- Installs packages
In this repository55 other files it gives its agents.
- AGENTS.mdAGENTS.md
- translations/ar/AGENTS.mdAGENTS.md
- translations/bg/AGENTS.mdAGENTS.md
- translations/bn/AGENTS.mdAGENTS.md
- translations/cs/AGENTS.mdAGENTS.md
- translations/da/AGENTS.mdAGENTS.md
- translations/de/AGENTS.mdAGENTS.md
- translations/el/AGENTS.mdAGENTS.md
- translations/en/AGENTS.mdAGENTS.md
- translations/es/AGENTS.mdAGENTS.md
- translations/et/AGENTS.mdAGENTS.md
- translations/fa/AGENTS.mdAGENTS.md
- translations/fi/AGENTS.mdAGENTS.md
- translations/fr/AGENTS.mdAGENTS.md
- translations/he/AGENTS.mdAGENTS.md
- translations/hi/AGENTS.mdAGENTS.md
- translations/hr/AGENTS.mdAGENTS.md
- translations/id/AGENTS.mdAGENTS.md
- translations/it/AGENTS.mdAGENTS.md
- translations/ja/AGENTS.mdAGENTS.md
- translations/km/AGENTS.mdAGENTS.md
- translations/kn/AGENTS.mdAGENTS.md
- translations/ko/AGENTS.mdAGENTS.md
- translations/lt/AGENTS.mdAGENTS.md
- translations/ml/AGENTS.mdAGENTS.md
- translations/mr/AGENTS.mdAGENTS.md
- translations/ms/AGENTS.mdAGENTS.md
- translations/my/AGENTS.mdAGENTS.md
- translations/ne/AGENTS.mdAGENTS.md
- translations/nl/AGENTS.mdAGENTS.md
- translations/no/AGENTS.mdAGENTS.md
- translations/pa/AGENTS.mdAGENTS.md
- translations/pcm/AGENTS.mdAGENTS.md
- translations/pl/AGENTS.mdAGENTS.md
- translations/pt-BR/AGENTS.mdAGENTS.md
- translations/pt-PT/AGENTS.mdAGENTS.md
- translations/ro/AGENTS.mdAGENTS.md
- translations/ru/AGENTS.mdAGENTS.md
- translations/sk/AGENTS.mdAGENTS.md
- translations/sl/AGENTS.mdAGENTS.md
- translations/sr/AGENTS.mdAGENTS.md
- translations/sv/AGENTS.mdAGENTS.md
- translations/sw/AGENTS.mdAGENTS.md
- translations/ta/AGENTS.mdAGENTS.md
- translations/te/AGENTS.mdAGENTS.md
- translations/th/AGENTS.mdAGENTS.md
- translations/tl/AGENTS.mdAGENTS.md
- translations/tr/AGENTS.mdAGENTS.md
- translations/uk/AGENTS.mdAGENTS.md
- translations/ur/AGENTS.mdAGENTS.md
- translations/vi/AGENTS.mdAGENTS.md
- translations/zh-CN/AGENTS.mdAGENTS.md
- translations/zh-HK/AGENTS.mdAGENTS.md
- translations/zh-MO/AGENTS.mdAGENTS.md
- translations/zh-TW/AGENTS.mdAGENTS.md
The file
Files
AGENTS.md
Projekt áttekintése
Ez egy oktató jellegű tároló a Generatív AI fejlesztés Java nyelven történő elsajátításához. Átfogó, gyakorlati tanfolyamot biztosít a Nagynyelvű modellek (LLM-ek), prompttervezés, beágyazások, RAG (Retrieval-Augmented Generation) és a Model Context Protocol (MCP) témakörében.
Főbb technológiák:
- Java 21
- Spring Boot 3.5.x
- Spring AI 1.1.x
- Maven
- LangChain4j
- Azure AI Foundry, Azure OpenAI és OpenAI SDK-k
Architektúra:
- Több önálló Spring Boot alkalmazás fejezetenként szervezve
- Minta projektek, amelyek különböző AI mintákat mutatnak be
- GitHub Codespaces kompatibilis előre konfigurált fejlesztői konténerekkel
Beállítási parancsok
Előfeltételek
- Java 21 vagy újabb
- Maven 3.x
- Azure előfizetés Azure AI Foundry modell telepítéssel (az
azd upparanccsal konfigurálható) - Azure CLI (
az) és Azure Developer CLI (azd), bejelentkezve kulcs nélküli hitelesítéshez
Környezet beállítása
1. lehetőség: GitHub Codespaces (ajánlott)
# Ágazz el a tárházat, és hozz létre egy kódtérhelyet a GitHub felhasználói felületéről
# A fejlesztői tároló automatikusan telepíti az összes függőséget
# Várj kb. 2 percet a környezet beállítására2. lehetőség: helyi fejlesztői konténer
# Tároló klónozása
git clone https://github.com/microsoft/Generative-AI-for-beginners-java.git
cd Generative-AI-for-beginners-java
# Megnyitás VS Code-ban a Dev Containers bővítménnyel
# Újra megnyitás konténerben, ha kéri3. lehetőség: helyi beállítás
# Függőségek telepítése
sudo apt-get update
sudo apt-get install -y maven openjdk-21-jdk
# Telepítés ellenőrzése
java -version
mvn -versionKonfiguráció
Azure AI Foundry beállítása (kulcs nélküli, ajánlott):
# A Foundry fiók és a modell telepítések kód általi előkészítése
cd 02-SetupDevEnvironment
azd auth login
az login
azd up
# azd létrehozza az examples/basic-chat-azure/.env fájlt a végpontoddal (kulcs nélkül)Kézi végpont konfiguráció:
# Ha nem használtad az azd-t, állítsd be magad az végpontot (az autentikáció kulcs nélküli marad az az login keresztül)
cd 02-SetupDevEnvironment/examples/basic-chat-azure
cp .env.example .env
# Szerkeszd a .env-et: AZURE_OPENAI_ENDPOINT=https://<resource>.openai.azure.com/Fejlesztési munkafolyamat
Projekt felépítése
/
├── 01-IntroToGenAI/ # Chapter 1: Introduction
├── 02-SetupDevEnvironment/ # Chapter 2: Environment setup
│ └── examples/ # Working examples
├── 03-CoreGenerativeAITechniques/ # Chapter 3: Core techniques
├── 04-PracticalSamples/ # Chapter 4: Sample projects
│ ├── calculator/ # MCP service example
│ ├── foundrylocal/ # Local model integration
│ └── petstory/ # Multi-modal app
├── 05-ResponsibleGenAI/ # Chapter 5: Responsible AI
└── translations/ # Multi-language supportAlkalmazások futtatása
Spring Boot alkalmazás futtatása:
cd [project-directory]
mvn spring-boot:runProjekt építése:
cd [project-directory]
mvn clean installMCP kalkulátor szerver indítása:
cd 04-PracticalSamples/calculator
mvn spring-boot:run
# A szerver a http://localhost:8080 címen futÜgyfél példák futtatása:
# A szerver indítása után egy másik terminálban
cd 04-PracticalSamples/calculator
# Közvetlen MCP kliens
mvn exec:java -Dexec.mainClass="com.microsoft.mcp.sample.client.SDKClient"
# Mesterséges intelligenciával működő kliens (AZURE_OPENAI_ENDPOINT + az bejelentkezés szükséges)
mvn exec:java -Dexec.mainClass="com.microsoft.mcp.sample.client.LangChain4jClient"
# Interaktív bot
mvn exec:java -Dexec.mainClass="com.microsoft.mcp.sample.client.Bot"Hot Reload
A Spring Boot DevTools benne van azokban a projektekben, amelyek támogatják a hot reloadot:
# A Java fájlokban végzett módosítások mentéskor automatikusan újratöltődnek
mvn spring-boot:runTesztelési utasítások
Tesztek futtatása
Minden teszt futtatása egy projektben:
cd [project-directory]
mvn testTesztek futtatása részletes kimenettel:
mvn test -XKonkrét teszt osztály futtatása:
mvn test -Dtest=CalculatorServiceTestTeszt struktúra
- A tesztfájlok JUnit 5 (Jupiter) használatával készültek
- Teszt osztályok a
src/test/java/könyvtárban találhatók - A kalkulátor projekt kliens példái a
src/test/java/com/microsoft/mcp/sample/client/mappában vannak
Kézi tesztelés
Sok példa interaktív alkalmazás, amely kézi tesztelést igényel:
- Indítsd el az alkalmazást a
mvn spring-boot:runparanccsal - Teszteld az végpontokat vagy lépj interakcióba a CLI-vel
- Ellenőrizd, hogy a várt viselkedés megfelel-e a dokumentációban szereplő leírásnak az egyes projektek README.md fájljaiban
Tesztelés Azure AI Foundry-val
- Jelentkezz be az
az loginparancssal az példák futtatása előtt (kulcs nélküli hitelesítés) - Győződj meg róla, hogy a fiókodnak Cognitive Services OpenAI User jogosultsága van az erőforráson
- Teszteld a tartalomszűrést a felelős AI példával az 5. fejezetben
Kódstílus irányelvek
Java konvenciók
- Java verzió: Java 21 modern funkciókkal
- Stílus: Alkalmazd a szabványos Java konvenciókat
- Névhasználat:
- Osztályok: PascalCase
- Metódusok/változók: camelCase
- Konstansok: UPPER_SNAKE_CASE
- Csomagnevek: kisbetűs
Spring Boot minták
- Használd az
@Serviceannotációt az üzleti logikához - Használd az
@RestControllerannotációt REST végpontokhoz - Konfiguráció
application.ymlvagyapplication.propertiesfájllal - Környezeti változók előnyben a kódba ágyazott értékekkel szemben
- Használd az
@Toolannotációt az MCP számára elérhető metódusokhoz
Fájl szervezés
src/
├── main/
│ ├── java/
│ │ └── com/microsoft/[component]/
│ │ ├── [Component]Application.java
│ │ ├── config/
│ │ ├── controller/
│ │ ├── service/
│ │ └── exception/
│ └── resources/
│ ├── application.yml
│ └── static/
└── test/
└── java/
└── com/microsoft/[component]/Függőségek
- Maven
pom.xmlkezeli őket - Spring AI BOM a verziókezeléshez
- LangChain4j az AI integrációkhoz
- Spring Boot starter parent a Spring függőségekhez
Kódkommentek
- Írj JavaDoc kommenteket a publikus API-khoz
- Tartalmazz magyarázó kommenteket a komplex AI-interakcióknál
- Dokumentáld világosan az MCP eszközök leírásait
Építés és telepítés
Projektek építése
Építés tesztek nélkül:
mvn clean install -DskipTestsÉpítés minden ellenőrzéssel:
mvn clean installAlkalmazás csomagolása:
mvn package
# Létrehozza a JAR-t a target/ könyvtárbanKimeneti könyvtárak
- Fordított osztályok:
target/classes/ - Teszt osztályok:
target/test-classes/ - JAR fájlok:
target/*.jar - Maven artefaktumok:
target/
Környezet-specifikus konfiguráció
Fejlesztés:
# application.yml (keyless - no api-key; auth via DefaultAzureCredential)
spring:
ai:
azure:
openai:
endpoint: ${AZURE_OPENAI_ENDPOINT}
chat:
options:
deployment-name: ${AZURE_OPENAI_DEPLOYMENT:gpt-4o-mini}Éles környezet:
- Kezelt identity használata
az loginhelyett kulcs nélküli hitelesítéshez - Állítsd be az
AZURE_OPENAI_ENDPOINTváltozót az éles Foundry erőforrásra - Konfiguráció környezeti változókon vagy Azure Key Vault-on keresztül
Telepítési megfontolások
- Ez egy oktató jellegű tároló mintaalkalmazásokkal
- Nem kifejezetten éles üzembehelyezésre kész
- A minták bemutatják azokat a mintákat, amelyeket éles környezethez alakíthatsz
- Egyedi projekt README-k tartalmazzák a specifikus telepítési megjegyzéseket
További megjegyzések
Azure AI Foundry
- Kulcs nélküli hitelesítés: Microsoft Entra ID csatlakozás — nincs API kulcs kezelés
- Provisionolt kódként: Bicep + azd (
azd up) létrehozza a fiókot és a modell telepítéseket - Ugyanaz az OpenAI-kompatibilis kód fut helyben (
az login) és Azure-ban (kezelt identity)
Több projekt kezelése
Minden minta projekt önálló:
# Navigáljon egy adott projekthez
cd 04-PracticalSamples/[project-name]
# Mindegyiknek megvan a saját pom.xml fájlja, és önállóan is felépíthető
mvn clean installGyakori problémák
Java verzió eltérés:
# Ellenőrizze a Java 21-et
java -version
# Szükség esetén frissítse a JAVA_HOME változót
export JAVA_HOME=/usr/lib/jvm/msopenjdk-currentFüggőség letöltési problémák:
# Töröld a Maven gyorsítótárát, és próbáld újra
rm -rf ~/.m2/repository
mvn clean installVégpont vagy bejelentkezés hiánya:
# Állítsa be a végpontot az aktuális munkamenetben és jelentkezzen be (kulcs nélkül)
export AZURE_OPENAI_ENDPOINT="https://your-resource.openai.azure.com/"
az login
# Vagy használjon .env fájlt a projekt könyvtárában
echo "AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/" > .envPort már használatban:
# A Spring Boot alapértelmezés szerint a 8080-as portot használja
# Változtatás az application.properties fájlban:
server.port=8081Többnyelvű támogatás
- Dokumentáció 45+ nyelven automatikus fordítással elérhető
- Fordítások a
translations/mappában - Fordítást GitHub Actions munkafolyamat kezeli
Tanulási útvonal
- Kezdd a 02-SetupDevEnvironment fejezettel
- Kövesd a fejezeteket sorrendben (01 → 05)
- Végezd el a gyakorlati példákat minden fejezetben
- Nézd meg a minta projekteket a 4. fejezetben
- Tanuld meg a felelős AI gyakorlatokat az 5. fejezetben
Fejlesztői konténer
A .devcontainer/devcontainer.json a következőket konfigurálja:
- Java 21 fejlesztői környezet
- Maven előtelepítve
- VS Code Java bővítmények
- Spring Boot eszközök
- GitHub Copilot integráció
- Docker-in-Docker támogatás
- Azure CLI
Teljesítmény szempontok
- Az Azure AI Foundry telepítések percenkénti token/kérés kvótával rendelkeznek
- Használj megfelelő batch méreteket beágyazásokhoz
- Fontold meg a cache használatát ismételt API hívásokhoz
- Monitorozd a token használatot költség-optimalizálás céljából
Biztonsági megjegyzések
- Soha ne vállalj be
.envfájlokat (már .gitignore-ban vannak) - Részesítsd előnyben a kulcs nélküli hitelesítést (Microsoft Entra ID) az API kulcsok helyett
- Használj kezelt identitást Azure-ban; helyi fejlesztéshez
az login - Kövesd a felelős AI irányelveket az 5. fejezetben
<!-- CO-OP TRANSLATOR DISCLAIMER START -->Jogi nyilatkozat: Ez a dokumentum az AI fordítási szolgáltatás, a Co-op Translator segítségével készült. Bár az pontosságra törekszünk, kérjük, vegye figyelembe, hogy az automatikus fordítások hibákat vagy pontatlanságokat tartalmazhatnak. Az eredeti dokumentum az anyanyelvén tekintendő hiteles forrásnak. Fontos információk esetén professzionális emberi fordítást javasolunk. Nem vállalunk felelősséget semmilyen félreértésért vagy téves értelmezésért, amely ebből a fordításból ered.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

