שיחה בסיסית עם Azure AI Foundry - דוגמה מקצה לקצה
July 2, 2026 · View on GitHub
דוגמה זו היא יישום Spring Boot פשוט שמתחבר למודל Azure AI Foundry באמצעות אימות ללא מפתח (Microsoft Entra ID) ובודק את ההתקנה שלך. הוא משתמש ב-ChatClient של Spring AI.
תוכן העניינים
- דרישות מוקדמות
- התחלה מהירה
- כיצד האימות עובד
- הרצת היישום
- הפניה לקונפיגורציה
- פתרון בעיות
- השלבים הבאים
- משאבים
דרישות מוקדמות
לפני הרצת דוגמה זו, ודא שיש לך:
- משאב Azure AI Foundry עם פריסת
gpt-4o-mini— ספק אותו עםazd upאו ידנית דרך מדריך ההתקנה של Azure AI Foundry - התפקיד Cognitive Services OpenAI User על המשאב הזה (תבניות Bicep ממלאות זאת עבורך)
- את Azure CLI (
az), מחובר עםaz login - Java 21+ ו-Maven 3.9+
אין צורך במפתח API — האימות הוא ללא מפתח דרך Microsoft Entra ID.
התחלה מהירה
# 1. נווט לפרויקט
cd 02-SetupDevEnvironment/examples/basic-chat-azure
# 2. התחבר כדי שאימות ללא מפתח יוכל לקבל אסימון
az login
# 3. הגדר את נקודת הקצה
# - אם הרצת `azd up`, הקובץ .env נכתב עבורך (דלג על זה).
# - אחרת העתק את התבנית והגדר את AZURE_OPENAI_ENDPOINT:
cp .env.example .env
# 4. הפעל את היישום
mvn spring-boot:run
כיצד האימות עובד
דוגמה זו מאמתת עם Microsoft Entra ID — אין מפתח API.
כאשר רק spring.ai.azure.openai.endpoint מוגדר (ולא api-key), Spring AI בונה את לקוח Azure OpenAI עם DefaultAzureCredential. קרדנציאל זה מוצא אוטומטית אסימון מה-sesion של az login מקומית, או מתוך זהות מנוהלת כשמריצים ב-Azure — כך שהקוד זהה עובד בשני המקומות ללא שינויים.
הרצת היישום
שימוש ב-Maven
mvn spring-boot:run
שימוש ב-VS Code
- פתח את הפרויקט ב-VS Code
- לחץ על
F5או השתמש בפאנל "הרצה ודיבאג" - בחר את הקונפיגורציה "Spring Boot-BasicChatApplication"
הערה: קונפיגורציית VS Code טוענת באופן אוטומטי את קובץ .env שלך
פלט צפוי
Starting Basic Chat with Azure OpenAI...
Environment variables loaded successfully
Connecting to Azure OpenAI...
Sending prompt: What is AI in a short sentence? Max 100 words.
AI Response:
================
AI, or Artificial Intelligence, is the simulation of human intelligence in machines programmed to think and learn like humans.
================
Success! Azure OpenAI connection is working correctly.
הפניה לקונפיגורציה
משתני סביבה
| משתנה | תיאור | חובה | דוגמה |
|---|---|---|---|
AZURE_OPENAI_ENDPOINT | כתובת קצה Foundry (Azure OpenAI) | כן | https://my-resource.openai.azure.com/ |
AZURE_OPENAI_DEPLOYMENT | שם פריסת מודל שיחה | לא | gpt-4o-mini (ברירת מחדל) |
אין משתנה מפתח API — האימות הוא ללא מפתח (Microsoft Entra ID דרך
az login).
קונפיגורציית Spring
קובץ application.yml מגדיר:
- נקודת קצה:
${AZURE_OPENAI_ENDPOINT}- ממשתנה סביבה - פריסה:
${AZURE_OPENAI_DEPLOYMENT:gpt-4o-mini}- ממשתנה סביבה עם ברירת מחדל - אימות: ללא מפתח — לא מוגדר
api-key, לכן Spring AI משתמש ב-DefaultAzureCredential - טמפרטורה:
0.7- שולט ביצירתיות (0.0 = דטרמיניסטי, 1.0 = יצירתי) - מקסימום טוקנים:
500- אורך מרבי של התגובה
פתרון בעיות
בעיות נפוצות
שגיאה: 401 / "PermissionDenied" / שגיאות אסימון
- הפעל
az login— האימות ללא מפתח דורש כניסה פעילה לקבלת אסימון - ודא שיש לך את התפקיד Cognitive Services OpenAI User על המשאב
- אם זה הרגע שהקצית את התפקיד, המתן דקה להפצה
- ודא שאתה בטננט/מנוי הנכון (
az account show)
שגיאה: "The endpoint is not valid" / שגיאות חיבור
- ודא ש-
AZURE_OPENAI_ENDPOINTהוא כתובת בסיס מלאה (למשל,https://your-resource.openai.azure.com/) - בדוק עקביות בסלאש הסופי
- ודא שהנקודה תואמת למשאב שסיפקת (
azd env get-values)
שגיאה: "The deployment was not found"
- ודא ש-
AZURE_OPENAI_DEPLOYMENTתואם לשם פריסה ב-Azure - ודא שהמודל פרוס ומופעל בהצלחה
- שם הפריסה ברירת המחדל הוא
gpt-4o-mini
VS Code: משתני סביבה לא נטענים
- ודא שקובץ
.envנמצא בתיקיית השורש של הפרויקט (ברמתpom.xml) - נסה להריץ
mvn spring-boot:runבטרמינל המשולב של VS Code - בדוק שהרחבת Java של VS Code מותקנת כראוי
מוד Debug
כדי לאפשר רישום מפורט, הסר את ההערה מהשורות האלו ב-application.yml:
logging:
level:
org.springframework.ai: DEBUG
com.azure: DEBUG
השלבים הבאים
ההתקנה הושלמה! המשך במסע הלמידה שלך:
פרק 3: טכניקות AI יצירתי מרכזיות
משאבים
- תיעוד Spring AI Azure OpenAI
- אימות ללא מפתח עם Microsoft Entra ID
- פורטל Azure AI Foundry
- תיעוד Azure AI Foundry
כתב ויתור: מסמך זה תורגם באמצעות שירות תרגום אוטומטי Co-op Translator. למרות שאנו שואפים לדיוק, יש לקחת בחשבון שתרגומים אוטומטיים עלולים להכיל שגיאות או אי-דיוקים. יש להחשיב את המסמך המקורי בשפתו הטבעית כמקור הסמכות. למידע קריטי מומלץ להשתמש בתרגום מקצועי על ידי מתרגם אדם. אנו לא אחראים לכל אי-הבנה או פירוש שגוי הנובע מהשימוש בתרגום זה.