Generative-AI-for-beginners-java / ar
AGENTS.md557 starsChanged 5 months agoMITView on GitHub
هذا مستودع تعليمي لتعلم تطوير الذكاء الاصطناعي التوليدي باستخدام جافا. يوفر دورة شاملة عملية تغطي نماذج اللغة الكبيرة (LLMs)، هندسة التوجيه، التضمينات، RAG (التوليد المعزز بالإسترجاع)، وبروتوكول سياق النموذج (MCP). التقنيات الأساسية: - جافا 21 - Spring Boot 3.5.x - Spring AI 1.1.x - مافن - LangChain4j - Azure AI Foundry، Azure OpenAI، ومكتبات OpenAI SDK الهيكلية: - تطبيقات Spring Boot مستقلة متعددة منظمة حسب الفصول - مشاريع عينة توضح أنماطًا مختلفة للذكاء الاصطناعي - جاهز لـ GitHub Codespaces مع…
- Reads credentials
- Deletes or force-pushes
- Installs packages
In this repository55 other files it gives its agents.
- 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/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
نظرة عامة على المشروع
هذا مستودع تعليمي لتعلم تطوير الذكاء الاصطناعي التوليدي باستخدام جافا. يوفر دورة شاملة عملية تغطي نماذج اللغة الكبيرة (LLMs)، هندسة التوجيه، التضمينات، RAG (التوليد المعزز بالإسترجاع)، وبروتوكول سياق النموذج (MCP).
التقنيات الأساسية:
- جافا 21
- Spring Boot 3.5.x
- Spring AI 1.1.x
- مافن
- LangChain4j
- Azure AI Foundry، Azure OpenAI، ومكتبات OpenAI SDK
الهيكلية:
- تطبيقات Spring Boot مستقلة متعددة منظمة حسب الفصول
- مشاريع عينة توضح أنماطًا مختلفة للذكاء الاصطناعي
- جاهز لـ GitHub Codespaces مع حاويات تطوير مهيأة مسبقًا
أوامر الإعداد
المتطلبات المسبقة
- جافا 21 أو أحدث
- مافن 3.x
- اشتراك Azure مع نشر نموذج Azure AI Foundry (يتم توفيره باستخدام
azd up) - Azure CLI (
az) و Azure Developer CLI (azd)، مسجل دخول لدعم المصادقة بدون مفتاح
إعداد البيئة
الخيار 1: GitHub Codespaces (موصى به)
# قم بتفريع المستودع وإنشاء مساحة تعليمات برمجية من واجهة GitHub
# سيقوم حاوية التطوير بتثبيت جميع التبعيات تلقائيًا
# انتظر حوالي دقيقتين لإعداد البيئةالخيار 2: حاوية تطوير محلية
# استنساخ المستودع
git clone https://github.com/microsoft/Generative-AI-for-beginners-java.git
cd Generative-AI-for-beginners-java
# افتح في VS Code مع امتداد حاويات التطوير
# أعد الفتح في الحاوية عند الطلبالخيار 3: الإعداد المحلي
# تثبيت التبعيات
sudo apt-get update
sudo apt-get install -y maven openjdk-21-jdk
# التحقق من التثبيت
java -version
mvn -versionالتكوين
إعداد Azure AI Foundry (مصادقة بدون مفتاح، موصى بها):
# توفير حساب 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 Calculator:
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)
mvn exec:java -Dexec.mainClass="com.microsoft.mcp.sample.client.LangChain4jClient"
# روبوت تفاعلي
mvn exec:java -Dexec.mainClass="com.microsoft.mcp.sample.client.Bot"إعادة التحميل السريع
تتضمن المشاريع التي تدعم إعادة التحميل السريع Spring Boot DevTools:
# سيتم إعادة التحميل تلقائيًا عند حفظ التغييرات في ملفات جافا
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قبل تشغيل الأمثلة (مصادقة بدون مفتاح) - تأكد من أن حسابك يحمل دور مستخدم Cognitive Services OpenAI على المورد
- اختبر التصفية المحتوى مع مثال الذكاء الاصطناعي المسؤول في الفصل 5
إرشادات نمط الكود
قواعد جافا
- إصدار جافا: جافا 21 مع ميزات حديثة
- النمط: اتبع قواعد جافا القياسية
- التسمية:
- الفئات: 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]/الاعتمادات
- مدار عبر مافن
pom.xml - Spring AI BOM لإدارة الإصدارات
- LangChain4j للتكاملات AI
- Spring Boot starter parent لإدارة تبعيات Spring
تعليقات الكود
- أضف JavaDoc لواجهات API العامة
- تضمين تعليقات توضيحية للتفاعلات المعقدة مع الذكاء الاصطناعي
- وثق أوصاف أدوات MCP بوضوح
البناء والنشر
بناء المشاريع
البناء بدون اختبار:
mvn clean install -DskipTestsالبناء مع جميع الفحوصات:
mvn clean installحزم التطبيق:
mvn package
# يُنشئ JAR في دليل target/مجلدات المخرجات
- الفئات المترجمة:
target/classes/ - فئات الاختبار:
target/test-classes/ - ملفات JAR:
target/*.jar - ملفات مافن:
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للمصادقة بدون مفتاح - وجه
AZURE_OPENAI_ENDPOINTإلى مورد Foundry الإنتاجي الخاص بك - إدارة التكوين عبر متغيرات البيئة أو Azure Key Vault
اعتبارات النشر
- هذا مستودع تعليمي مع تطبيقات نموذجية
- غير مصمم للنشر في بيئة الإنتاج كما هو
- تعرض الأمثلة أنماطًا للتكيف مع الاستخدام في الإنتاج
- راجع ملفات README الخاصة بكل مشروع لملاحظات النشر الخاصة
ملاحظات إضافية
Azure AI Foundry
- المصادقة بدون مفتاح: الاتصال عبر Microsoft Entra ID — لا حاجة لإدارة مفاتيح API
- تم توفيره ككود: Bicep + azd (
azd up) ينشئ الحساب ونماذج النشر - نفس الكود المتوافق مع OpenAI يعمل محليًا (
az login) وفي Azure (الهوية المدارة)
العمل مع مشاريع متعددة
كل مشروع نموذجي مستقل:
# الانتقال إلى مشروع معين
cd 04-PracticalSamples/[project-name]
# لدى كل منها ملف pom.xml الخاص بها ويمكن بناؤها بشكل مستقل
mvn clean installالمشكلات الشائعة
عدم تطابق إصدار جافا:
# تحقق من جافا 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المنفذ مستخدم بالفعل:
# يستخدم Spring Boot المنفذ 8080 بشكل افتراضي
# التغيير في application.properties:
server.port=8081دعم متعدد اللغات
- التوثيق متوفر بـ 45+ لغة عبر الترجمة التلقائية
- الترجمات في مجلد
translations/ - إدارة الترجمة عبر سير عمل GitHub Actions
مسار التعلم
- ابدأ مع 02-SetupDevEnvironment
- اتبع الفصول بالترتيب (01 → 05)
- أكمل الأمثلة العملية في كل فصل
- استكشف المشاريع النموذجية في الفصل 4
- تعلم ممارسات الذكاء الاصطناعي المسؤول في الفصل 5
حاوية التطوير
ملف .devcontainer/devcontainer.json يجهز:
- بيئة تطوير جافا 21
- مافن مثبت مسبقًا
- إضافات جافا لـ VS Code
- أدوات Spring Boot
- تكامل GitHub Copilot
- دعم Docker-in-Docker
- Azure CLI
اعتبارات الأداء
- نشرات Azure AI Foundry لها حصص رموز/طلبات دقيقة
- استخدم أحجام دفعات مناسبة للتضمينات
- اعتبر التخزين المؤقت للنداءات المتكررة لواجهة API
- راقب استخدام الرموز لتحسين التكلفة
ملاحظات الأمان
- لا تقم أبدًا بالتزام ملفات
.env(مٌدرجة مسبقًا في.gitignore) - فضّل المصادقة بدون مفتاح (Microsoft Entra ID) على مفاتيح API
- استخدم الهويات المدارة في Azure؛ استخدم
az loginللتطوير المحلي - اتبع إرشادات الذكاء الاصطناعي المسؤول في الفصل 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.

