إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يوفر مورد Foundry وصولا موحدا إلى النماذج والوكلاء والأدوات. تشرح هذه المقالة أي SDK ونقطة نهاية يجب استخدامها في سيناريوك.
حزمة تطوير تطوير Foundry هي حزمة تطوير رقيقة للعميل تعرض جميع واجهات برمجة تطبيقات مشاريع Foundry من خلال نقطة نهاية مشروع واحدة. تبني حزم SDK الأعلى المستوى عليها — على سبيل المثال، تعتمد حزمة إطار foundry عمل الوكلاء على حزمة تطوير Foundry للوصول إلى نماذج Foundry وأدواتها وتكوين المشاريع.
| SDK | ما الغرض منها | نقطة النهاية |
|---|---|---|
| مجموعة تطوير Foundry | SDK للعميل الرفيع عبر جميع واجهات برمجة تطبيقات مشاريع Foundry. الوصول إلى نماذج Foundry وأدوات المنصة (البحث عن الملفات، مفسر الكود، البحث على الويب، الذاكرة، SharePoint، WorkIQ، Fabric IQ، MCP). | https://<resource-name>.services.ai.azure.com/api/projects/<project-name> |
| إطار عمل الوكلاء | التزامن الموحد متعدد العوامل للوكلاء المستضافين والأنظمة متعددة العوامل، والمتوفرة في C#/.NET Python. تعتمد الحزمة foundry على حزمة تطوير تطوير Foundry للوصول إلى المشروع. |
واجهة برمجة تطبيقات الردود في نقطة نهاية المشروع، عبر FoundryChatClient. |
| حزمة تطوير OpenAI | سطح OpenAI API الكامل، بما في ذلك التضمينات ونماذج Foundry التي تباع من قبل Azure من خلال إكمال الدردشة. أفضل زمن استجابة وأقصى توافق مع OpenAI. | https://<resource-name>.openai.azure.com/openai/v1 |
| مجموعة تطوير Anthropic | نماذج Anthropic Claude تم نشرها في Foundry. | https://<resource-name>.services.ai.azure.com/anthropic |
| مجموعات SDK لأدوات Foundry | حلول جاهزة (رؤية، خطاب، سلامة المحتوى، والمزيد). | نقاط نهاية خاصة بالأداة. |
اختر حزمة تطوير البرمجيات الخاصة بك:
- استخدم Foundry SDK عند بناء تطبيقات تحتوي على وكلاء أو تقييمات أو ميزات خاصة ب Foundry
- استخدام إطار عمل العامل للوكلاء المستضافين أو الأنظمة متعددة العوامل في التعليمات البرمجية باستخدام واجهة برمجة تطبيقات الاستجابات في C#/.NET أو Python
- استخدم OpenAI SDK عندما يكون الحد الأقصى لتوافق OpenAI أو أقل زمن انتقال مطلوبا، أو عند إنشاء عمليات التضمين، أو عند استخدام النماذج المباعة بواسطة Azure من خلال إكمال الدردشة
- استخدم Anthropic SDK عند العمل مع Anthropic Claude النماذج المنشورة في Foundry
- استخدم مجموعات تطوير البرمجيات الخاصة ب Foundry Tools عند العمل مع خدمات ذكاء اصطناعي محددة (الرؤية، الكلام، اللغة، إلخ).
ملاحظة
أنواع الموارد: يوفر مورد Foundry جميع النقاط النهائية المذكورة سابقا. يوفر مورد Azure OpenAI نقطة النهاية /openai/v1 فقط.
Authentication: العينات هنا تستخدم Microsoft Entra ID (DefaultAzureCredential). مفاتيح API تعمل على /openai/v1. مرر المفتاح كمزود api_key رموز بدلا من الرمز.
المتطلبات الأساسية
-
حساب Azure مع اشتراك نشط. إذا لم يكن لديك واحد، أنشئ حساب Azure مجاني مجاني، يشمل اشتراكا تجريبيا مجانيا.
يجب أن يكون دور التحكم في الوصول استنادا إلى الدور Azure مطلوبا لمهمتك في أضيق نطاق:
Foundry User في مشروع Foundry للتطوير اليومي.
مهم
تم تغيير اسم أدوار RBAC في Foundry مؤخرا. Foundry User، Foundry Owner، Foundry Account Owner، وFoundry Project Manager تم تسميتها سابقا Azure مستخدم الذكاء الاصطناعي، ومالك الذكاء الاصطناعي Azure، ومالك حساب Azure الذكاء الاصطناعي، ومدير Project الذكاء الاصطناعي Azure. قد ترى الأسماء السابقة في بعض الأماكن أثناء صدور إعادة التسمية. معرفات الأدوار والأذونات الأساسية لم تتغير عند إعادة الاسم.
Foundry Project Manager على project Foundry لإدارة project موجودة واتصالاتها.
مالك حساب Foundry على مورد Foundry لإنشاء مشاريع أو إدارة الموارد على مستوى الحساب. قم بتعيين هذا الدور على مجموعة الموارد الهدف فقط عندما تحتاج إلى إنشاء مورد Foundry.
تنشيط تعيين مجموعة الموارد في الوقت المناسب من خلال Microsoft Entra إدارة الهويات المتميزة (PIM)، وإلغاء تنشيطه بعد التوفير. لا يحتاج المطورون اليوميون ومستخدمو وقت التشغيل إلى هذا التعيين المرتفع.
للحصول على تفاصيل حول صلاحيات كل دور، انظر التحكم في الوصول القائم على الأدوار ل Microsoft Foundry.
قم بتثبيت أوقات تشغيل اللغة المطلوبة، والأدوات العامة، وإضافات VS Code كما هو موضح في إعداد بيئة التطوير الخاصة بك.
تحقق من المتطلبات المسبقة
قبل المتابعة، تأكد من أن كل فحص يرجع النتيجة المذكورة:
تأكد من أن Azure CLI يستخدم الاشتراك والمستأجر المقصودين:
az account show --query "{subscription:name, tenant:tenantId}" --output tableيتم إنهاء الأمر بنجاح ويعرض الاشتراك والمستأجر المتوقعين.
تأكد من أن بيانات الاعتماد المحلية الخاصة بك يمكن أن تطلب رمز وصول Foundry دون عرض الرمز المميز:
az account get-access-token --resource https://ai.azure.com --query expiresOn --output tsvيتم إنهاء الأمر بنجاح ويعرض وقت انتهاء صلاحية الرمز المميز. إذا فشل، فقم بتشغيل
az loginبهوية لها دور Foundry المطلوب.تأكد من أن لديك دور RBAC المطلوب في مدخل Azure ضمن التحكم في الوصول إلى مورد >(IAM).
- شغّل
python --version. يتم إنهاء الأمر بنجاح ويبلغ Python 3.9 أو أحدث.
- شغّل
node --version. يتم إنهاء الأمر بنجاح والإبلاغ Node.js 22 أو أحدث.
- شغّل
dotnet --version. يتم إنهاء الأمر بنجاح والإبلاغ .NET 8 أو أحدث.
- شغّل
java --version. يتم إنهاء الأمر بنجاح والإبلاغ Java 17 أو أحدث.
تأكد من أن نقطة نهاية المشروع بهذا التنسيق:
https://<resource-name>.services.ai.azure.com/api/projects/<project-name>.تأكد من
gpt-5-miniأن النشر جاهز:az cognitiveservices account deployment show \ --name <resource-name> \ --resource-group <resource-group> \ --deployment-name gpt-5-mini \ --query properties.provisioningState \ --output tsvيقوم الأمر بإرجاع
Succeeded. استخدم الاسم المنشور في أمثلة التعليمات البرمجية إذا كان للتوزيع اسم مختلف.
مجموعة تطوير Foundry
حزمة تطوير Foundry هي حزمة تطوير عميل رفيعة تمنحك الوصول إلى جميع واجهات برمجة تطبيقات مشاريع Foundry من خلال نقطة نهاية مشروع واحدة:
https://<resource-name>.services.ai.azure.com/api/projects/<project-name>
إنها الأساس الذي تبني عليه مجموعات SDK الأخرى الواعية ب Foundry. على سبيل المثال، حزمة إطار foundry عمل الوكلاء تأخذ اعتمادا على حزمة تطوير تطوير Foundry وتستخدمها للوصول إلى وظائف Foundry — لا تحتاج إلى توصيل نقطة نهاية المشروع أو العميل المتوافق مع OpenAI بنفسك عند استخدام FoundryChatClient.
ملاحظة
إذا كانت مؤسستك تستخدم نطاقا فرعيا مخصصا، استبله <resource-name> ب <your-custom-subdomain> في رابط نقطة النهاية.
هذا النهج يبسط تكوين التطبيقات. بدلا من إدارة عدة نقاط نهاية، تقوم بتكوين واحدة.
تثبيت Foundry SDK
| نسخة SDK | نسخة البوابة | الحالة | حزمة Python |
|---|---|---|---|
| 2.x | المصنع (جديد) | مستقرة | azure-ai-projects>=2.0.0 |
| 1.x | المسبك (كلاسيكي) | مستقرة | azure-ai-projects==1.0.0 |
مكتبة عملاء مشاريع AI Azure ل Python هي مكتبة موحدة تتيح لك استخدام عدة مكتبات عملاء معا من خلال الاتصال بنقطة نهاية مشروع واحدة.
شغل هذا الأمر لتثبيت الحزم الخاصة بمشاريع Foundry.
pip install "azure-ai-projects>=2.0.0"
| نسخة SDK | نسخة البوابة | الحالة | حزمة Java |
|---|---|---|---|
| 2.0.0 | المصنع (جديد) | مستقرة | azure-ai-projectsazure-ai-agents |
| نسخة SDK | نسخة البوابة | الحالة | حزمة جافاسكريبت |
|---|---|---|---|
| 2.4.0 | المصنع (جديد) | مستقرة | @azure/ai-projects |
| 1.0.1 | كلاسيك فاوندري | مستقرة | @azure/ai-projects |
استخدم Node.js 22 أو أحدث مع @azure/ai-projects 2.4.0.
| نسخة SDK | نسخة البوابة | الحالة | حزمة .NET |
|---|---|---|---|
| 2.0.0 (GA) | المصنع (جديد) | مستقرة | Azure.AI.ProjectsAzure.AI.Projects.AgentsAzure.AI.Extensions.OpenAI |
| 1.1.0 (GA) | كلاسيك فاوندري | مستقرة | Azure.AI.Projects |
مهم
لا تقم بتثبيت Azure.AI.Projects.OpenAI (المعاينة) بجانب Azure.AI.Extensions.OpenAI (GA). كلا الحزمتين تعرفان نفس الأنواع في فضاءات أسماء مختلفة، مما يسبب أخطاء مرجعية غامضة. استخدم فقط Azure.AI.Extensions.OpenAI لسيناريوهات الوكلاء.
مكتبة عملاء مشاريع الذكاء الاصطناعي Azure ل Java هي مكتبة موحدة تتيح لك استخدام عدة مكتبات عملاء معا عن طريق الاتصال بنقطة نهاية مشروع واحدة.
أضف هذه التبعيات إلى Maven pom.xml لمشاريع Foundry.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-projects</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-agents</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.18.4</version>
</dependency>
مكتبة عملاء مشاريع AI Azure لجافا سكريبت هي مكتبة موحدة تتيح لك استخدام عدة مكتبات عملاء معا عن طريق الاتصال بنقطة نهاية مشروع واحدة.
شغل هذا الأمر لتثبيت حزم جافاسكريبت لمشاريع Foundry.
npm install @azure/ai-projects @azure/identity
مكتبة عملاء مشاريع AI Azure ل .NET هي مكتبة موحدة تتيح لك استخدام عدة مكتبات عملاء معا من خلال الاتصال بنقطة نهاية مشروع واحدة.
شغل هذه الأوامر لإضافة الحزم المطلوبة إلى مشروع .NET الخاص بك.
dotnet add package Azure.AI.Projects
dotnet add package Azure.AI.Projects.Agents
dotnet add package Azure.AI.Extensions.OpenAI
dotnet add package Azure.Identity
إجراء أول مكالمة SDK ل Foundry
يعرض SDK نوعين من العملاء لأن Foundry وOpenAI لهما أشكال API مختلفة:
- Project client – الاستخدام للعمليات الأصلية في Foundry حيث لا يوجد ما يعادل OpenAI. أمثلة: إدراج الروابط، استرجاع خصائص المشروع، تمكين التتبع.
-
عميل متوافق مع OpenAI – وظيفة استخدام Foundry التي تبني على مفاهيم OpenAI. تستخدم واجهة برمجة التطبيقات للاستجابات، والوكلاء، والتقييمات، والضبط الدقيق جميعها أنماط طلب/استجابة على نمط OpenAI. يستهدف هذا العميل واجهة برمجة تطبيقات الاستجابات في نقطة نهاية المشروع، والتي تمنحك حق الوصول إلى نماذج Foundry التي تباع بواسطة Azure والنماذج الأخرى من الكتالوج وأدوات النظام الأساسي. تتضمن هذه الأدوات البحث في الملفات ومترجم التعليمات البرمجية والبحث على الويب والذاكرة SharePoint و WorkIQ وخوادم Fabric IQ وMCP. تخدم نقطة نهاية المشروع هذه الحركة على
/openaiالمسار.
معظم التطبيقات تستخدم كلا العميلين. استخدم عميل المشروع للإعداد والتكوين، ثم استخدم العميل المتوافق مع OpenAI لتشغيل الوكلاء والتقييمات ونماذج الاتصال.
from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
project_endpoint = (
"https://<resource-name>.services.ai.azure.com/api/projects/<project-name>"
)
project = AIProjectClient(
endpoint=project_endpoint,
credential=DefaultAzureCredential(),
)
openai = project.get_openai_client()
response = openai.responses.create(
model="gpt-5-mini",
input="What is the size of France in square miles?",
)
print(f"Response output: {response.output_text}")
Response output: <model response>
المرجع: فئة AIProjectClient
import com.azure.ai.agents.AgentsClientBuilder;
import com.azure.ai.agents.AgentsServiceVersion;
import com.azure.ai.agents.ResponsesClient;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.openai.models.responses.Response;
import com.openai.models.responses.ResponseCreateParams;
String projectEndpoint =
"https://<resource-name>.services.ai.azure.com/api/projects/<project-name>";
ResponsesClient responsesClient = new AgentsClientBuilder()
.credential(new DefaultAzureCredentialBuilder().build())
.endpoint(projectEndpoint)
.serviceVersion(AgentsServiceVersion.getLatest())
.buildResponsesClient();
Response response = responsesClient.getResponseService().create(
ResponseCreateParams.builder()
.model("gpt-5-mini")
.input("What is the size of France in square miles?")
.build());
response.output().forEach(item -> item.message().ifPresent(message ->
message.content().forEach(content -> content.outputText().ifPresent(text ->
System.out.println("Response output: " + text.text())))));
Response output: <model response>
المرجع: CreateResponse.java
import { DefaultAzureCredential } from "@azure/identity";
import { AIProjectClient } from "@azure/ai-projects";
const projectEndpoint =
"https://<resource-name>.services.ai.azure.com/api/projects/<project-name>";
const project = new AIProjectClient(
projectEndpoint,
new DefaultAzureCredential(),
);
const openai = project.getOpenAIClient();
const response = await openai.responses.create({
model: "gpt-5-mini",
input: "What is the size of France in square miles?",
});
console.log(`Response output: ${response.output_text}`);
Response output: <model response>
المرجع: فئة AIProjectClient
using Azure.AI.Projects;
using Azure.AI.Extensions.OpenAI;
using Azure.Identity;
string projectEndpoint =
"https://<resource-name>.services.ai.azure.com/api/projects/<project-name>";
AIProjectClient projectClient = new(
endpoint: new Uri(projectEndpoint),
tokenProvider: new DefaultAzureCredential());
ProjectResponsesClient responseClient = projectClient.ProjectOpenAIClient
.GetProjectResponsesClientForModel("gpt-5-mini");
ResponseResult response = responseClient.CreateResponse(
"What is the size of France in square miles?");
Console.WriteLine($"Response output: {response.GetOutputText()}");
Response output: <model response>
المرجع: فئة AIProjectClient
استكشاف قدرات Foundry SDK
- Access Foundry Models، بما في ذلك Azure OpenAI
- استخدم خدمة وكلاء المسبك
- تشغيل تقييمات الدفعات
- تفعيل تتبع التطبيقات
- ضبط نموذج بدقة
- احصل على نقاط نهاية ومفاتيح لأدوات Foundry، والتوزيع المحلي، والمزيد
استكشاف الأخطاء
أخطاء المصادقة
إذا رأيت DefaultAzureCredential failed to retrieve a token:
تحقق من Azure CLI تم التحقق منها:
az account show az login # if not logged inتحقق من تعيين دور RBAC:
تأكد من أن لديك على الأقل دور مستخدم Foundry في مشروع Foundry
مهم
تم تغيير اسم أدوار RBAC في Foundry مؤخرا. Foundry User، Foundry Owner، Foundry Account Owner، وFoundry Project Manager تم تسميتها سابقا Azure مستخدم الذكاء الاصطناعي، ومالك الذكاء الاصطناعي Azure، ومالك حساب Azure الذكاء الاصطناعي، ومدير Project الذكاء الاصطناعي Azure. قد ترى الأسماء السابقة في بعض الأماكن أثناء صدور إعادة التسمية. معرفات الأدوار والأذونات الأساسية لم تتغير عند إعادة الاسم.
انظر تعيين أدوار Azure
بالنسبة لهوية مدارة في الإنتاج:
- تأكد من أن الهوية المدارة لها الدور المناسب
- انظر تكوين الهويات المدارة
أخطاء تكوين نقطة النهاية
إذا رأيت Connection refused أو 404 Not Found:
- تحقق من أن أسماء الموارد والمشاريع تطابق مع نشرك الفعلي
-
تحقق من تنسيق رابط نقطة النهاية: يجب أن يكون
https://<resource-name>.services.ai.azure.com/api/projects/<project-name> -
بالنسبة للنطاقات الفرعية المخصصة: استبدلها
<resource-name>بنطاق فرعي مخصص
عدم تطابقات إصدارات SDK
إذا فشلت عينات الكود مع AttributeError أو ModuleNotFoundError:
تحقق من إصدار SDK:
pip show azure-ai-projects # Python npm list @azure/ai-projects # JavaScript dotnet list package # .NETأعد التثبيت مع علامات الإصدار الصحيحة: راجع أوامر التثبيت في كل قسم لغوي أعلاه
حزمة تطوير OpenAI
استخدم حزمة تطوير OpenAI عندما تريد واجهة برمجة تطبيقات OpenAI الكاملة، وأفضل زمن تأخير، وأقصى توافق مع عملاء OpenAI الحاليين. تعرض نقطة النهاية هذه واجهة برمجة تطبيقات الاستجابات على Azure OpenAI مباشرة وتوفر الوصول إلى نماذج ونماذج OpenAI Azure التي تباع بواسطة Azure، بما في ذلك التضمينات وإكمال الدردشة وإنشاء الصور. لا يوفر الوصول إلى الميزات الخاصة ب Foundry مثل العوامل أو التقييمات أو أدوات النظام الأساسي الحصرية ل Foundry. بالنسبة لهذه الميزات، استخدم واجهة برمجة تطبيقات الاستجابات في نقطة نهاية المشروع من خلال Foundry SDK.
نصيحة
استخدم نقطة نهاية OpenAI SDK لإنشاء التضمينات. نقطة نهاية المشروع المستخدمة في مجموعة تطوير Foundry لا تقوم حاليا بتوجيه طلبات التضمين.
المقطع التالي يوضح كيفية استخدام نقطة نهاية OpenAI Azure /openai/v1 مباشرة.
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
from openai import OpenAI
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
openai_endpoint = "https://<resource-name>.openai.azure.com/openai/v1/"
openai = OpenAI(
base_url=openai_endpoint,
api_key=token_provider,
)
response = openai.responses.create(
model="gpt-5-mini",
input="What is the size of France in square miles?",
)
print(f"Response output: {response.output_text}")
Response output: <model response>
المقطع التالي يوضح كيفية استخدام نقطة نهاية OpenAI Azure /openai/v1 مباشرة.
import com.azure.identity.AuthenticationUtil;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.credential.BearerTokenCredential;
import com.openai.models.responses.Response;
import com.openai.models.responses.ResponseCreateParams;
String openAIEndpoint = "https://<resource-name>.openai.azure.com/openai/v1";
OpenAIClient openAIClient = OpenAIOkHttpClient.builder()
.baseUrl(openAIEndpoint)
.credential(BearerTokenCredential.create(
AuthenticationUtil.getBearerTokenSupplier(
new DefaultAzureCredentialBuilder().build(),
"https://ai.azure.com/.default")))
.build();
Response response = openAIClient.responses().create(
ResponseCreateParams.builder()
.model("gpt-5-mini")
.input("What is the size of France in square miles?")
.build());
response.output().forEach(item -> item.message().ifPresent(message ->
message.content().forEach(content -> content.outputText().ifPresent(text ->
System.out.println("Response output: " + text.text())))));
Response output: <model response>
import {
DefaultAzureCredential,
getBearerTokenProvider,
} from "@azure/identity";
import OpenAI from "openai";
const openAIEndpoint = "https://<resource-name>.openai.azure.com/openai/v1";
const tokenProvider = getBearerTokenProvider(
new DefaultAzureCredential(),
"https://ai.azure.com/.default",
);
const openai = new OpenAI({ baseURL: openAIEndpoint, apiKey: tokenProvider });
const response = await openai.responses.create({
model: "gpt-5-mini",
input: "What is the size of France in square miles?",
});
console.log(`Response output: ${response.output_text}`);
Response output: <model response>
شغل هذا الأمر لإضافة مكتبة عملاء OpenAI إلى مشروع .NET الخاص بك.
dotnet add package OpenAI
عندما ينجح، يؤكد ملف .NET CLI أنه تم تثبيت الحزمة OpenAI .
يقوم هذا المقتطف بتكوين DefaultAzureCredentialوبناء OpenAIClientOptionsوإنشاء نقطة ResponsesClient نهاية Azure OpenAI v1.
using Azure.Identity;
using OpenAI;
using OpenAI.Responses;
using System.ClientModel.Primitives;
#pragma warning disable OPENAI001
const string openAIEndpoint =
"https://<resource-name>.openai.azure.com/openai/v1/";
BearerTokenPolicy tokenPolicy = new(
new DefaultAzureCredential(),
"https://ai.azure.com/.default");
OpenAIClient openAIClient = new(
authenticationPolicy: tokenPolicy,
options: new OpenAIClientOptions()
{
Endpoint = new(openAIEndpoint),
});
ResponsesClient responsesClient = openAIClient.GetResponsesClient();
CreateResponseOptions options = new()
{
Model = "gpt-5-mini",
InputItems =
{
ResponseItem.CreateUserMessageItem(
"What is the size of France in square miles?")
},
};
var response = responsesClient.CreateResponse(options);
Console.WriteLine($"Response output: {response.Value.GetOutputText()}");
#pragma warning restore OPENAI001
Response output: <model response>
مجموعة تطوير Anthropic
استخدم حزمة تطوير Anthropic للعمل مع نماذج Anthropic Claude المستخدمة في Foundry. نماذج كلود تستخدم نقطة نهاية منفصلة /anthropic وواجهة برمجة تطبيقات رسائل Anthropic، وليس نقطة نهاية متوافقة مع OpenAI.
نقطة النهاية Anthropic تضيف /anthropic إلى عنوان المورد الخاص بك:
https://<resource-name>.services.ai.azure.com/anthropic
واجهة برمجة تطبيقات الرسائل متاحة على:
https://<resource-name>.services.ai.azure.com/anthropic/v1/messages
from anthropic import AnthropicFoundry
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
client = AnthropicFoundry(
azure_ad_token_provider=token_provider,
base_url="https://<resource-name>.services.ai.azure.com/anthropic",
)
message = client.messages.create(
model="claude-sonnet-4-6", # Replace with your deployment name
messages=[
{"role": "user", "content": "What are 3 things to visit in Seattle?"}
],
max_tokens=1048,
)
print(f"Response output: {message.content[0].text}")
Response output: <model response>
حزمة تطوير Anthropic لا توفر عميل أصلي للغات C#. استخدم واجهة برمجة تطبيقات REST مع HttpClient لاستدعاء نماذج كلود.
using System.Net.Http.Headers;
using System.Text;
using System.Text.Json;
using Azure.Identity;
string endpoint =
"https://<resource-name>.services.ai.azure.com/anthropic/v1/messages";
var credential = new DefaultAzureCredential();
var token = await credential.GetTokenAsync(
new Azure.Core.TokenRequestContext(["https://ai.azure.com/.default"]));
using var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", token.Token);
httpClient.DefaultRequestHeaders.Add("anthropic-version", "2023-06-01");
var requestBody = new
{
model = "claude-sonnet-4-6",
messages = new[]
{
new { role = "user", content = "Name three Seattle attractions." }
},
max_tokens = 1048
};
var response = await httpClient.PostAsync(
endpoint,
new StringContent(
JsonSerializer.Serialize(requestBody), Encoding.UTF8,
"application/json"));
string result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
<JSON response body containing the model response>
import AnthropicFoundry from "@anthropic-ai/foundry-sdk";
import {
DefaultAzureCredential,
getBearerTokenProvider,
} from "@azure/identity";
const tokenProvider = getBearerTokenProvider(
new DefaultAzureCredential(),
"https://ai.azure.com/.default",
);
const client = new AnthropicFoundry({
azureADTokenProvider: tokenProvider,
baseURL: "https://<resource-name>.services.ai.azure.com/anthropic",
apiVersion: "2023-06-01",
});
const message = await client.messages.create({
model: "claude-sonnet-4-6", // Replace with your deployment name
messages: [
{ role: "user", content: "What are 3 things to visit in Seattle?" },
],
max_tokens: 1048,
});
console.log(`Response output: ${message.content[0].text}`);
Response output: <model response>
حزمة تطوير Anthropic لا توفر عميل Java أصلي. استخدم واجهة برمجة تطبيقات REST مع HttpClient لاستدعاء نماذج كلود.
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.core.credential.TokenRequestContext;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
String endpoint =
"https://<resource-name>.services.ai.azure.com/anthropic/v1/messages";
var credential = new DefaultAzureCredentialBuilder().build();
var token = credential.getToken(new TokenRequestContext()
.addScopes("https://ai.azure.com/.default")).block();
String requestBody = """
{"model": "claude-sonnet-4-6",
"messages": [{"role": "user",
"content": "What are 3 things to visit in Seattle?"}],
"max_tokens": 1048}
""";
HttpClient httpClient = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(endpoint))
.header("Authorization", "Bearer " + token.getToken())
.header("Content-Type", "application/json")
.header("anthropic-version", "2023-06-01")
.POST(HttpRequest.BodyPublishers.ofString(requestBody))
.build();
HttpResponse<String> response = httpClient.send(
request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
<JSON response body containing the model response>
لمزيد من المعلومات، راجع استخدام نماذج Anthropic Claude في Microsoft Foundry.
إطار عمل الوكيل
Microsoft إطار عمل العامل هو SDK مفتوح المصدر ل C#/.NET Python يوفر تنسيقا موحدا متعدد العوامل وتجريدات متسقة لوكلاء البناء والأنظمة متعددة العوامل. إنها طبقة التنسيق الموصى بها للوكلاء المستضافين في Foundry.
- إذا سبق لك استخدام AutoGen أو نواة دلالية للتنسيق متعدد العوامل (تنسيق عوامل متعددة للعمل معا على المهام)، ففكر في إطار عمل العامل كطبقة تنسيق أساسية. يساعدك على تجنب الجمع بين العديد من SDKs للتنسيق التي تحل مهام التنسيق المماثلة، والتي يمكن أن تضيف تجريدات وتبعيات متعارضة.
- إذا كان لديك بالفعل رمز تنسيق موجود كبير، أو تعتمد على ميزات خاصة بالمنتجات، أو تواجه متطلبات ترحيل معقدة، فقيم هذه المتطلبات قبل الدمج في إطار عمل العامل.
شغل كودك كوكيل مستضاف
القصة الرئيسية للوكلاء المعتمدين على الشيفرة في Foundry هي الوكلاء المستضافين. اكتب وكيل عملك باستخدام إطار عمل الوكلاء، وقم بتغليفه كصورة حاوية أو ملف بريد من كودك المصدري، ودع Foundry يشغله مع نقطة نهاية مدارة، وتكبير تلقائي على أجهزة Micro الافتراضية المعزولة، وهوية وكيل Microsoft Entra مخصصة، وحالة على مستوى الجلسة، وقابلية الملاحظة من الطرف إلى الطرف.
الوكلاء المستضافون هم المسار الموصى به عندما تريد نقطة نهاية تديرها Foundry وقابلة للعنونة عبر الشبكة يمكن لتطبيقات أو وكلاء آخرين الاتصال بها. انظر "نشر أول وكيل مستضاف لك".
بناء الوكلاء داخل الكود خارج Foundry باستخدام واجهة برمجة التطبيقات Responses
إذا كنت تستضيف وكيلك خارج Foundry — في عمليتك أو بنيتك التحتية — يمكنك أيضا استخدام Agent Framework لاستدعاء واجهة برمجة تطبيقات الاستجابات مباشرة في نقطة نهاية مشروعك . يتصل إطار عمل الوكلاء عبر المزود FoundryChatClient ، الذي يستهدف:
{project_endpoint}/openai/v1/responses
المرور عبر نقطة نهاية المشروع — بدلا من نقطة نهاية OpenAI على مستوى الموارد — يمنح وكيلك:
- نماذج Foundry من الكتالوج (Azure OpenAI ونماذج Foundry المباشرة من خلال واجهة برمجة تطبيقات واحدة.
- أدوات المنصة تتجاوز مجموعة أدوات OpenAI، بما في ذلك البحث عن الملفات، مفسر الكود، الذاكرة، البحث على الويب، خوادم MCP، SharePoint، WorkIQ، وFabric IQ.
- البيانات ذات النطاق Project، مصادقة أدوات التشغيلBehalf-Of (OBO)، وتتبع project، ومرشحات المحتوى، وتكوين الهوية.
هذا النمط إضافة إلى الوكلاء المستضافين وليس بديلا — يمكن لنفس كود إطار عمل الوكلاء استدعاء واجهة برمجة التطبيقات للاستجابات من عمليتك الخاصة اليوم ويتم تغليفه كوكيل مستضاف لاحقا عندما تريد نقطة نهاية تديرها Foundry. انظر Quickstart: بناء الوكلاء باستخدام واجهة برمجة التطبيقات Responses.
للحصول على مقارنة كاملة بين أنواع الوكلاء وخيارات الاستضافة، راجع ما هي خدمة وكلاء Microsoft Foundry؟.
مجموعات SDK لأدوات Foundry
أدوات Foundry Tools (المعروفة سابقا باسم Azure AI Services) هي حلول نقاط مبنية مسبقا مع مجموعات SDK مخصصة. استخدم النقاط النهائية التالية للعمل مع أدوات الصاهر.
أي نقطة نهاية يجب أن تستخدم؟
اختر نقطة نهاية بناء على احتياجاتك:
استخدم نقطة النهاية لخدمات Azure AI للوصول إلى أدوات رؤية الكمبيوتر، وContent Safety، وDocument Intelligence، واللغة، والترجمة، وأدوات Token Foundry.
نقطة نهاية أدوات الصاهر: https://<your-resource-name>.cognitiveservices.azure.com/
ملاحظة
النقاط النهائية تستخدم إما اسم المورد الخاص بك أو نطاق فرعي مخصص. إذا قامت مؤسستك بإعداد نطاق فرعي مخصص، استبدل your-resource-name ب your-custom-subdomain في جميع أمثلة نقاط النهاية.
إذا كانت أعباء عملك تستخدم ميزات اللغة في الذكاء الاصطناعي في Azure المتوقفة—مثل تحليل المشاعر، استخراج الكلمات المفتاحية، التلخيص، ربط الكيانات، CLU، أو CQA—خطط للانتقال إلى بدائل Microsoft Foundry. للتطوير الجديد، فكر في استخدام حزمة تطوير البرمجيات (SDK) لفاوندري أو نقطة النهاية المتوافقة مع OpenAI كما هو موضح سابقا في هذا المقال. انظر Migration من Language Studio إلى Microsoft Foundry.
لأدوات مسبك الكلام والترجمة، استخدم نقاط النهاية في الجداول التالية. استبدل البدلاء بمعلومات المصادر الخاصة بك.
نقاط نهاية الخطاب
| أداة الصبك | نقطة النهاية |
|---|---|
| تحويل الكلام إلى نص (القياسي) | https://<YOUR-RESOURCE-REGION>.stt.speech.microsoft.com |
| نص إلى كلام (عصبي) | https://<YOUR-RESOURCE-REGION>.tts.speech.microsoft.com |
| الصوت المخصص | https://<YOUR-RESOURCE-NAME>.cognitiveservices.azure.com/ |
نقاط نهاية الترجمة
| أداة الصبك | نقطة النهاية |
|---|---|
| ترجمة النص | https://api.cognitive.microsofttranslator.com/ |
| ترجمة الوثائق | https://<YOUR-RESOURCE-NAME>.cognitiveservices.azure.com/ |
نقاط نهاية اللغة
| أداة الصبك | نقطة النهاية |
|---|---|
| تحليل النصوص | https://<YOUR-RESOURCE-NAME>.cognitiveservices.azure.com |
مهم
في 20 مارس 2027، ستتقاعد Azure Language Studio وتنتقل إلى Microsoft Foundry؛ وستكون جميع القدرات والتحسينات المستقبلية متاحة في Microsoft Foundry.
في 31 مارس 2029، سيتم إيقاف القدرات التالية للغات Azure (نهاية الدعم). قبل هذا التاريخ، يجب على المستخدمين نقل أعباء العمل الحالية ودمج المشاريع الجديدة إلى Microsoft Foundry models لتعزيز فهم اللغة الطبيعية وتبسيط تكامل التطبيقات:
- استخراج العبارات المفتاحية
- تحليل المشاعر والتنقيب عن الرأي
- تصنيف النصوص المخصصة
- فهم لغة المحادثة (CLU)
- الإجابة على الأسئلة المخصصة (CQA)
- سير عمل التوزيع الموسيقي
- التلخيص (استخراجي وتجريدي، للوثائق والمحادثات)
- ربط الكيانات
الميزات الأساسية مع الدعم المستمر: اكتشاف اللغة، اكتشاف PII، Text Analytics for Health، NER الجاهز، وNER المخصص.
لخيارات الترحيل، انظر Migrationate from Language Studio إلى Microsoft Foundry.