Generative-AI-for-beginners-java / he
AGENTS.md557 starsChanged 5 months agoMITView on GitHub
זהו מאגר לימודי ללמידת פיתוח AI גנרטיבי עם Java. הוא מספק קורס מעשי מקיף המכסה מודלים לשוניים גדולים (LLMs), הנדסת פרומפטים, אמבדינגס, RAG (גירנציה משופרת בשליפה), ופרוטוקול הקשר המודל (MCP). טכנולוגיות מרכזיות: - Java 21 - Spring Boot 3.5.x - Spring AI 1.1.x - Maven - LangChain4j - Azure AI Foundry, Azure OpenAI, ו-SDKs של OpenAI ארכיטקטורה: - מספר אפליקציות Spring Boot עצמאיות הממוינות לפי פרקים - פרויקטים לדוגמה המדגימים דפוסי AI שונים - מוכנות ל-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/hi/AGENTS.mdAGENTS.md
- translations/hr/AGENTS.mdAGENTS.md
- translations/hu/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
סקירת הפרויקט
זהו מאגר לימודי ללמידת פיתוח AI גנרטיבי עם Java. הוא מספק קורס מעשי מקיף המכסה מודלים לשוניים גדולים (LLMs), הנדסת פרומפטים, אמבדינגס, RAG (גירנציה משופרת בשליפה), ופרוטוקול הקשר המודל (MCP).
טכנולוגיות מרכזיות:
- Java 21
- Spring Boot 3.5.x
- Spring AI 1.1.x
- Maven
- LangChain4j
- Azure AI Foundry, Azure OpenAI, ו-SDKs של OpenAI
ארכיטקטורה:
- מספר אפליקציות Spring Boot עצמאיות הממוינות לפי פרקים
- פרויקטים לדוגמה המדגימים דפוסי AI שונים
- מוכנות ל-GitHub Codespaces עם מיכלי פיתוח מוגדרים מראש
פקודות התקנה
דרישות מוקדמות
- Java 21 או גרסה גבוהה יותר
- Maven 3.x
- מנוי Azure עם פריסה של מודל Azure AI Foundry (הגדרה עם
azd up) - Azure CLI (
az) ו-Azure Developer CLI (azd), מחוברים לאישור keyless
הגדרת סביבה
אפשרות 1: GitHub Codespaces (מומלץ)
# פצל את המאגר וצור סביבת קוד מ- GitHub UI
# מכולת הפיתוח תתקין אוטומטית את כל התלויות
# המתן כ-2 דקות להקמת הסביבהאפשרות 2: מיכל פיתוח מקומי
# שכפל מאגר
git clone https://github.com/microsoft/Generative-AI-for-beginners-java.git
cd Generative-AI-for-beginners-java
# פתח ב- VS Code עם תוסף Dev Containers
# פתח מחדש במכולה כשהתבקשאפשרות 3: הגדרה מקומית
# התקן תלותים
sudo apt-get update
sudo apt-get install -y maven openjdk-21-jdk
# אמת התקנה
java -version
mvn -versionקונפיגורציה
הגדרת Azure AI Foundry (keyless, מומלץ):
# פרוס את חשבון Foundry + פריסות מודל כקוד
cd 02-SetupDevEnvironment
azd auth login
az login
azd up
# azd כותב examples/basic-chat-azure/.env עם נקודת הקצה שלך (ללא מפתח)קונפיגורציית נקודת קצה ידנית:
# אם לא השתמשת ב-azd, הגדיר את נקודת הקצה בעצמך (ההזדהות נשארת ללא מפתח דרך az login)
cd 02-SetupDevEnvironment/examples/basic-chat-azure
cp .env.example .env
# ערוך את .env: AZURE_OPENAI_ENDPOINT=https://<resource>.openai.azure.com/זרימת עבודה בפיתוח
מבנה הפרויקט
/
├── 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 supportהפעלת אפליקציות
הפעלת אפליקציית Spring Boot:
cd [project-directory]
mvn spring-boot:runבנייה של פרויקט:
cd [project-directory]
mvn clean installהפעלת שרת מחשבון MCP:
cd 04-PracticalSamples/calculator
mvn spring-boot:run
# השרת רץ על http://localhost:8080הפעלת דוגמאות לקוח:
# לאחר הפעלת השרת בטרמינל אחר
cd 04-PracticalSamples/calculator
# לקוח MCP ישיר
mvn exec:java -Dexec.mainClass="com.microsoft.mcp.sample.client.SDKClient"
# לקוח המופעל בעזרת בינה מלאכותית (דורש AZURE_OPENAI_ENDPOINT + az login)
mvn exec:java -Dexec.mainClass="com.microsoft.mcp.sample.client.LangChain4jClient"
# בוט אינטראקטיבי
mvn exec:java -Dexec.mainClass="com.microsoft.mcp.sample.client.Bot"טעינה חמה (Hot Reload)
Spring Boot DevTools כלול בפרויקטים שתומכים בטעינה חמה:
# שינויים בקבצי Java ייטענו מחדש אוטומטית בעת שמירה
mvn spring-boot:runהוראות בדיקה
הרצת בדיקות
הרץ את כל הבדיקות בפרויקט:
cd [project-directory]
mvn testהרץ בדיקות עם פלט מפורט:
mvn test -Xהרץ מחלקת בדיקה ספציפית:
mvn test -Dtest=CalculatorServiceTestמבנה מבחנים
- קבצי מבחן משתמשים ב-JUnit 5 (Jupiter)
- מחלקות הבדיקה נמצאות ב-
src/test/java/ - דוגמאות לקוח בפרויקט המחשבון ב-
src/test/java/com/microsoft/mcp/sample/client/
בדיקות ידניות
הרבה דוגמאות הן אפליקציות אינטראקטיביות שדורשות בדיקה ידנית:
- הפעל את האפליקציה עם
mvn spring-boot:run - בדוק נקודות קצה או אינטראקציה עם CLI
- וודא שההתנהגות הצפויה תואמת את התיעוד ב- README.md של כל פרויקט
בדיקה עם Azure AI Foundry
- התחבר עם
az loginלפני הרצת הדוגמאות (אישור keyless) - ודא שלחשבון שלך יש תפקיד Cognitive Services OpenAI User במשאב
- בדוק סינון תוכן עם דוגמת AI אחראי בפרק 5
קווי הנחיה לסגנון קוד
קונבנציות Java
- גרסת Java: Java 21 עם תכונות מודרניות
- סטייל: עקוב אחרי הקונבנציות הסטנדרטיות של Java
- שמות:
- מחלקות: PascalCase
- שיטות/משתנים: camelCase
- קבועים: UPPER_SNAKE_CASE
- שמות חבילות: אותיות קטנות
דפוסי Spring Boot
- השתמש ב-
@Serviceללוגיקת עסקים - השתמש ב-
@RestControllerלנקודות קצה REST - קונפיגורציה דרך
application.ymlאוapplication.properties - העדף משתני סביבה על פני ערכים קבועים בקוד
- השתמש ב-
@Toolעבור שיטות המוצגות דרך MCP
ארגון קבצים
src/
├── main/
│ ├── java/
│ │ └── com/microsoft/[component]/
│ │ ├── [Component]Application.java
│ │ ├── config/
│ │ ├── controller/
│ │ ├── service/
│ │ └── exception/
│ └── resources/
│ ├── application.yml
│ └── static/
└── test/
└── java/
└── com/microsoft/[component]/תלותים
- מנוהלים דרך Maven
pom.xml - Spring AI BOM לניהול גרסאות
- LangChain4j לאינטגרציות AI
- Spring Boot starter parent לתלותות Spring
הערות בקוד
- הוסף JavaDoc ל-APIs ציבוריים
- כלול הערות להסבר אינטראקציות AI מורכבות
- תעד תיאורי כלים של MCP בצורה ברורה
בנייה ופריסה
בניית פרויקטים
בנה ללא בדיקות:
mvn clean install -DskipTestsבנה עם כל הבדיקות:
mvn clean installחבילה של אפליקציה:
mvn package
# יוצר קובץ JAR בתיקיית target/תיקיות פלט
- מחלקות מקומפלות:
target/classes/ - מחלקות בדיקה:
target/test-classes/ - קבצי JAR:
target/*.jar - ארטיפקטים של Maven:
target/
קונפיגורציה סביבה-ספציפית
פיתוח:
# 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}ייצור:
- השתמש בזהות מנוהלת במקום
az loginלאישור keyless - הצב את
AZURE_OPENAI_ENDPOINTלמשאב Foundry בייצור שלך - נהל קונפיגורציה דרך משתני סביבה או Azure Key Vault
שיקולי פריסה
- מאגר זה הוא למידה עם דוגמאות אפליקציות
- לא מיועד לפריסה בייצור כמו שהוא
- הדוגמאות מדגימות דפוסים להתאמה לשימוש בייצור
- ראה README של כל פרויקט לפרטים ספציפיים לפריסה
הערות נוספות
Azure AI Foundry
- אישור keyless: התחבר עם Microsoft Entra ID — אין צורך בניהול מפתחות API
- הגדרה כקוד: Bicep + azd (
azd up) יוצרים את החשבון ופריסות המודלים - קוד תואם OpenAI זהה פועל מקומית (
az login) וב-Azure (זהות מנוהלת)
עבודה עם מספר פרויקטים
כל פרויקט דוגמה הוא עצמאי:
# לנווט לפרויקט ספציפי
cd 04-PracticalSamples/[project-name]
# לכל אחד יש pom.xml משלו וניתן לבנות אותו באופן עצמאי
mvn clean installבעיות נפוצות
אי התאמת גרסת Java:
# אמת Java 21
java -version
# עדכן את JAVA_HOME במידת הצורך
export JAVA_HOME=/usr/lib/jvm/msopenjdk-currentבעיות בהורדת תלותים:
# נקה את מטמון Maven ונסה מחדש
rm -rf ~/.m2/repository
mvn clean installנקודת קצה או התחברות לא נמצאו:
# הגדר את נקודת הקצה במפגש הנוכחי והתחבר (ללא מפתח)
export AZURE_OPENAI_ENDPOINT="https://your-resource.openai.azure.com/"
az login
# או השתמש בקובץ .env בתיקיית הפרויקט
echo "AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/" > .envהפורט כבר בשימוש:
# ספרינג בוט משתמש ביציאה 8080 כברירת מחדל
# שינוי בקובץ application.properties:
server.port=8081תמיכה רב-לשונית
- תיעוד זמין בלמעלה מ-45 שפות בתרגום אוטומטי
- תרגומים בתיקיית
translations/ - ניהול תרגום על ידי GitHub Actions workflow
מסלול למידה
- התחל עם 02-SetupDevEnvironment
- עקוב אחר הפרקים בסדר (01 → 05)
- השלם דוגמאות מעשיות בכל פרק
- חקור פרויקטים לדוגמה בפרק 4
- למד פרקטיקות AI אחראי בפרק 5
מיכל פיתוח (Development Container)
הקובץ .devcontainer/devcontainer.json מגדיר:
- סביבת פיתוח Java 21
- Maven מותקן מראש
- הרחבות Java ל-VS Code
- כלי Spring Boot
- אינטגרציית GitHub Copilot
- תמיכה ב-Docker-in-Docker
- Azure CLI
שיקולי ביצועים
- בפריסות Azure AI Foundry יש מגבלות טוקנים/בקשות לדקה
- השתמש בגודל קבוצות מתאים לאמבדינגס
- שקול מטמון לקריאות API חוזרות
- נטר שימוש בטוקנים לאופטימיזציית עלויות
הערות אבטחה
- לעולם אל תcommיט קבצי
.env(כבר מרוחקים ב-.gitignore) - העדף אישור keyless (Microsoft Entra ID) על פני מפתחות API
- השתמש בזהויות מנוהלות ב-Azure;
az loginלפיתוח מקומי - עקוב אחרי הנחיות AI אחראי בפרק 5
<!-- CO-OP TRANSLATOR DISCLAIMER START -->כתב ויתור: מסמך זה תורגם באמצעות שירות תרגום אוטומטי Co-op Translator. למרות שאנו שואפים לדיוק, יש לקחת בחשבון שתרגומים אוטומטיים עלולים להכיל שגיאות או אי-דיוקים. יש להחשיב את המסמך המקורי בשפתו הטבעית כמקור הסמכות. למידע קריטי מומלץ להשתמש בתרגום מקצועי על ידי מתרגם אדם. אנו לא אחראים לכל אי-הבנה או פירוש שגוי הנובע מהשימוש בתרגום זה.
<!-- 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.

