إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
توضح لك هذه المقالة كيفية استخدام واجهة برمجة التطبيقات OpenAI للإصدار الأول Azure. تبسط واجهة برمجة التطبيقات v1 المصادقة، وتلغي الحاجة إلى معلمات مؤرخة api-version ، وتدعم استدعاءات نماذج عبر المزودين.
ملاحظة
قد تضاف كائنات استجابة API جديدة إلى استجابة API في أي وقت. نوصي بأن تقوم فقط بتحليل كائنات الاستجابة التي تحتاجها.
المتطلبات الأساسية
- اشتراك Azure - أنشئ واحدا مجانا
- مورد
Foundry أو مورد OpenAI <Azure > تم نشره في منطقة مدعومة - على الأقل نشر نموذج واحد
- بالنسبة Microsoft Entra ID المصادقة: الدور
Cognitive Services OpenAI Userالمعين لهويتك. لمزيد من المعلومات، راجع التحكم في الوصول القائم على الأدوار ل Azure OpenAI
تطور واجهات برمجة التطبيقات
في السابق، كان Azure OpenAI يتلقى تحديثات شهرية لإصدارات واجهات برمجة التطبيقات الجديدة. الاستفادة من الميزات الجديدة تطلب تحديث متغيرات الكود والبيئة باستمرار مع كل إصدار جديد من واجهة برمجة التطبيقات (API). كما تطلب Azure OpenAI خطوة إضافية باستخدام عملاء Azure المحددين، مما أدى إلى حمل إضافي عند نقل الكود بين OpenAI و Azure OpenAI.
ابتداء من أغسطس 2025، يمكنك الاشتراك في واجهات برمجة التطبيقات الجيل الأول من Azure OpenAI التي تضيف دعما ل:
- الوصول المستمر إلى أحدث الميزات دون الحاجة لتحديد ميزات جديدة
api-versionكل شهر. - دورة إصدار API أسرع مع ظهور ميزات جديدة بشكل أكثر تكرارا.
- دعم عملاء OpenAI مع تغييرات بسيطة في الكود للتبديل بين OpenAI و Azure OpenAI عند استخدام المصادقة المعتمدة على المفاتيح.
- دعم عميل OpenAI للمصادقة المعتمدة على الرموز وتحديث التوكن التلقائي دون الحاجة إلى الاعتماد على عميل Azure OpenAI منفصل.
- قم بإجراء مكالمات إكمال الدردشة باستخدام نماذج من مزودين آخرين مثل DeepSeek وGrok الذين يدعمون صياغة إكمال الدردشة v1.
يتم التحكم في الوصول إلى استدعاءات API الجديدة التي لا تزال في المعاينة من خلال تمرير رؤوس المعاينة الخاصة بالميزات. تسمح لك هذه الطريقة بالاشتراك في الميزات التي تريدها، دون الحاجة لتبديل إصدارات API. بدلا من ذلك، تشير بعض الميزات إلى حالة المعاينة عبر مسار واجهة برمجة التطبيقات الخاصة بها ولا تتطلب رأس إضافي.
امثله:
- عندما
/openai/v1/evalsكان في المعاينة سابقا، كان يتطلب تمرير"aoai-evals":"preview"رأس. /evals لم يعد في مرحلة المعاينة. -
/openai/v1/fine_tuning/alpha/graders/في مرحلة المعاينة ولا يتطلب رأس مخصص بسبب وجود فيalphaمسار واجهة برمجة التطبيقات.
في التشغيل الأولي لواجهة برمجة التطبيقات المتاحة عموما (GA) في الإصدار الأول، يتم دعم مجموعة فرعية فقط من قدرات الاستدلال وواجهة برمجة التطبيقات التأليفية. جميع ميزات GA مدعومة للاستخدام في الإنتاج. يتم إضافة دعم المزيد من القدرات بسرعة.
تغييرات الكود
واجهة برمجة التطبيقات v1
أمثلة Python v1
مفتاح واجهة برمجة التطبيقات:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
base_url="https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/"
)
response = client.responses.create(
model="gpt-4.1-nano", # Replace with your model deployment name
input="This is a test.",
)
print(response.model_dump_json(indent=2))
الاختلافات الرئيسية عن واجهة برمجة التطبيقات السابقة:
-
OpenAI()يستخدم العميل بدلا منAzureOpenAI(). - مرر نقطة نهاية OpenAI Azure إلى
base_urlوأضيف/openai/v1إلى عنوان نقطة النهاية. -
api-versionلم يعد معاملا مطلوبا مع واجهة برمجة تطبيقات الإصدار 1 GA (GA).
مفتاح API مع متغيرات البيئة:
قم بتعيين المتغيرات البيئية التالية قبل تشغيل الكود:
| المتغير | القيمة |
|---|---|
OPENAI_BASE_URL |
https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/ |
OPENAI_API_KEY |
مفتاح واجهة برمجة التطبيقات الخاص بك في Azure OpenAI |
ثم أنشئ العميل بدون معلمات:
client = OpenAI()
Microsoft Entra ID:
مهم
كان التعامل مع تحديث الرموز التلقائي يتم سابقا من خلال استخدام العميل AzureOpenAI() . تزيل واجهة برمجة التطبيقات v1 هذا الاعتماد، من خلال إضافة دعم تحديث الرموز التلقائي إلى OpenAI() العميل.
from openai import OpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
client = OpenAI(
base_url = "https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/",
api_key = token_provider
)
response = client.responses.create(
model="gpt-4.1-nano",
input= "This is a test"
)
print(response.model_dump_json(indent=2))
- مرر نقطة نهاية OpenAI Azure إلى
base_urlوأضيف/openai/v1إلى عنوان نقطة النهاية. - اضبط المعلمة
api_keyبحيثtoken_providerتتيح الاسترجاع التلقائي وتحديث رمز المصادقة بدلا من استخدام مفتاح API ثابت.
دعم النماذج
بالنسبة لنماذج OpenAI Azure نوصي باستخدام واجهة برمجة التطبيقات Responses، ومع ذلك، تتيح لك واجهة v1 أيضا إجراء مكالمات إكمال الدردشة باستخدام نماذج من مزودين آخرين مثل DeepSeek وGrok التي تدعم صياغة إكمال الدردشة في OpenAI v1.
base_url يقبل كلا https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/ من التنسيقات https://YOUR-RESOURCE-NAME.services.ai.azure.com/openai/v1/ .
ملاحظة
تعمل واجهة برمجة تطبيقات Responses أيضا مع نماذج Foundry التي تبيعها Azure، مثل نماذج Microsoft AI وDeepSeek وGrok. لتعلم كيفية استخدام واجهة برمجة تطبيقات الاستجابات مع هذه النماذج، راجع كيفية توليد ردود نصية باستخدام نماذج Microsoft Foundry.
from openai import OpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
client = OpenAI(
base_url = "https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/",
api_key=token_provider,
)
completion = client.chat.completions.create(
model="MAI-DS-R1", # Replace with your model deployment name.
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Tell me about the attention is all you need paper"}
]
)
#print(completion.choices[0].message)
print(completion.model_dump_json(indent=2))
دعم واجهة برمجة التطبيقات v1
سجل تغييرات إصدار API
تلخص الأقسام التالية التغيرات بين إصدارات واجهات برمجة التطبيقات.
التغييرات بين إصدار المعاينة v1 و2025-04-01-preview
- واجهة برمجة التطبيقات v1 لمعاينة اللعبة
- دعم توليد الفيديو
-
جديد ميزات واجهة برمجة التطبيقات للاستجابات:
- تكامل أدوات بروتوكول السياق عن بعد (MCP)
- دعم المهام الخلفية غير المتزامنة
- عناصر الاستدلال المشفرة
- توليد الصور
التغييرات بين معاينة 2025-04-01 و2025-03-01-preview
التغييرات بين معاينة 2025-03-01 و2025-02-01-preview
- واجهة برمجة التطبيقات للردود
- الاستخدام الحاسوب
التغييرات بين 2025-02-01-preview و2025-01-01-preview
- إكمال التخزين (دعم واجهة برمجة التطبيقات التقطيرية).
التغييرات بين معاينة 2025-01-01 و2024-12-01-Preview
-
predictionتمت إضافة معلمة لدعم المخرجات المتوقعة . -
gpt-4o-audio-previewدعم النماذج.
التغييرات بين معاينة 2024-12-01 و2024-10-01-preview
-
store، ومعلماتmetadataأضيفت لدعم الإكمال المخزن. -
reasoning_effortتمت إضافة أحدث نماذج التفكير. -
user_security_contextأضيف ل Microsoft Defender for Cloud التكامل.
التغييرات بين معاينة 2024-09-01-و2024-08-01-preview
-
max_completion_tokensأضيفت إلى الدعمo1-previewوالنماذجo1-mini.max_tokensلا يعمل مع نماذج سلسلة O1 . -
parallel_tool_callsأضيف. -
completion_tokens_details&reasoning_tokensأضاف. -
stream_options&include_usageأضاف.
التغييرات بين مواصفات 2024-07-01-preview و2024-08-01-preview
- دعم المخرجات المنظمة.
- تمت إضافة واجهة برمجة تطبيقات رفع ملفات كبيرة.
- حول تغييرات بياناتك:
- دمج Mongo DB.
-
role_informationتم إزالة المعاملة. -
rerank_scoreأضيف إلى كائن الاستشهاد. - تم إزالة مصدر بيانات AML.
- تحسينات تكامل تجميع التوجيه بالذكاء الاصطناعي للبحث.
التغييرات بين مواصفة واجهة برمجة التطبيقات 2024-05-01-preview و2024-07-01-Preview
- تمت إضافة دعم واجهة برمجة التطبيقات الدفعية.
- مخزن متجهات لمعلمات استراتيجية التقطيع.
-
max_num_resultsيجب أن تخرج أداة البحث عن الملفات.
التغييرات بين مواصفة واجهة برمجة التطبيقات 2024-04-01-preview و2024-05-01-preview
- دعم Assistants v2 - أداة بحث الملفات وتخزين متجهات
- الضبط الدقيق checkpoints, seed, events
- على تحديثات بياناتك
- يدعم DALL-E 2 الآن نشر النماذج ويمكن استخدامه مع أحدث واجهة برمجة تطبيقات للمعاينة.
- تحديثات تصفية المحتوى
التغييرات بين مواصفة واجهة برمجة التطبيقات 2024-03-01-preview
-
تغيير كسر: تم إزالة معايير التحسينات. هذا التغيير يؤثر على
gpt-4نموذج النسخة.vision-preview - تمت إضافة معامل timestamp_granularities.
-
audioWordأضيف كائن. - TTS إضافية
response_formats: wav & pcm.
القضايا المعروفة
- تستخدم مواصفات
2025-04-01-previewAzure OpenAI إصدار OpenAPI 3.1. من المعروف أن هذه النسخة غير مدعومة بالكامل من إدارة Azure API.