تخطي إلى المحتوى الرئيسي
OpenAI

16 مايو 2025

إصدارالمنتج

إطلاق Codex

وكيل هندسة برمجيات يعمل عبر السحابة، قادر على تنفيذ مهام متعددة بالتوازي، ومدعوم بنموذج codex-1. متاح اليوم لمستخدمي ChatGPT Pro وBusiness وEnterprise، وسيصل قريبًا لمستخدمي Plus.

Dashboard asking ‘What should we code next?’ with a prompt box, repo/branch selectors, and a task list on a pastel code-themed backdrop.
جاري التحميل...

آخر تحديث في 3 يونيو 2025: أصبح Codex متاحًا الآن لمستخدمي ChatGPT Plus. كما نتيح للمستخدمين تفعيل وصول Codex إلى الإنترنت أثناء تنفيذ المهام. يُرجى الرجوع إلى سجل التغييرات(يفتح في نافذة جديدة) والوثائق(يفتح في نافذة جديدة) لمزيد من التفاصيل.


اليوم نطلق النسخة البحثية الأولية من Codex: وكيل هندسة برمجيات يعتمد على السحابة ويستطيع تنفيذ العديد من المهام بالتوازي. يمكن لـ Codex تنفيذ مهام مختلفة مثل كتابة الميزات، والإجابة عن الأسئلة المتعلقة بقاعدة الشيفرة، وإصلاح الأخطاء، واقتراح طلبات دمج للمراجعة؛ وكل مهمة تعمل داخل بيئة ساندبوكس سحابية مستقلة، مُحمَّلة مسبقًا بمخزن البيانات.

يعمل Codex بالاعتماد على نموذج codex-1، وهو نسخة من نموذج OpenAI o3 جرى تحسينها خصيصًا لهندسة البرمجيات. تم تدريبه باستخدام التعلم المعزز على مهام برمجية حقيقية في بيئات متعددة، بهدف إنتاج شيفرة تحاكي أسلوب المطوّرين وتهيئة طلبات الدمج، وتلتزم بدقة بالتعليمات، وقادرة على تشغيل الاختبارات بشكل تكراري إلى أن تحقق نتيجة ناجحة. نبدأ اليوم بإتاحة Codex لمستخدمي ChatGPT Pro وEnterprise وBusiness، مع توفير الدعم لمستخدمي Plus وEdu قريبًا.

كيف يعمل Codex

يمكنك اليوم الوصول إلى Codex عبر الشريط الجانبي في ChatGPT، ثم إسناد مهام برمجية جديدة له بمجرد كتابة الأمر والنقر على “Code”. وإذا أردت توجيه سؤال حول قاعدة الشيفرة، يمكنك استخدام زر “Ask”. تُعالَج كل مهمة بشكل مستقل داخل بيئة معزولة ومحملة مسبقًا بقاعدة الشيفرة الخاصة بك. يستطيع Codex قراءة الملفات وتعديلها، إضافةً إلى تنفيذ الأوامر بما في ذلك أدوات الاختبار، والمراجعات البرمجية (linters)، وفاحصات الأنواع. يستغرق إكمال المهمة عادةً ما بين دقيقة واحدة و30 دقيقة، حسب درجة تعقيدها، ويمكنك مراقبة تقدم Codex مباشرة أثناء التنفيذ.

عند انتهاء Codex من تنفيذ المهمة، يقوم بتثبيت (commit) التغييرات داخل بيئته. ويوفّر Codex أدلة قابلة للتحقق على كل خطوة قام بها، من خلال إرفاق سجلات الطرفية ونتائج الاختبارات، مما يمكّنك من تتبّع مسار التنفيذ بالكامل. بعد ذلك، يمكنك مراجعة النتائج، وطلب تعديلات إضافية، وفتح طلب دمج على GitHub، أو دمج التغييرات مباشرة في بيئتك المحلية. كما يمكنك في المنتج ضبط بيئة Codex لتطابق بيئة التطوير الحقيقية لديك قدر الإمكان.

يمكن توجيه Codex من خلال ملفات AGENTS.md داخل مخزن بياناتك. وهي ملفات نصية شبيهة بملفات README.md، تُوضِّح فيها لـ Codex كيفية التنقّل داخل قاعدة الشيفرة، والأوامر التي يجب تنفيذها للاختبار، وأفضل الطرق للالتزام بممارسات مشروعك القياسية. وكما هو الحال مع المطوّرين البشر، يعمل وكلاء Codex بأفضل أداء عندما تتوفر لهم بيئات تطوير معدّة مسبقًا، وأنظمة اختبار موثوقة، ووثائق واضحة. 

وفي اختبارات البرمجة والمعايير الداخلية، يُظهر codex-1 أداءً قويًا حتى دون استخدام ملفات AGENTS.md أو هياكل مخصّصة.

تم استبعاد 23 عيّنة من SWE-Bench Verified لعدم قابليتها للتشغيل على البنية التحتية الداخلية لدينا. وقد تم اختبار نموذج codex-1 بحد أقصى للسياق يبلغ 192 ألف رمز، وبمستوى متوسط من “جهد الاستدلال”، وهو الإعداد نفسه المتاح في المنتج اليوم. وللحصول على تفاصيل تقييمات o3، يُرجى الاطلاع هنا.

وتعتمد حزمة مهام SWE الداخلية لدينا على مجموعة منتقاة من المهام البرمجية الحقيقية داخل OpenAI.

تطوير وكلاء آمنين وجديرين بالثقة

نطرح Codex اليوم كنسخة بحثية أولية، انسجامًا مع نهجنا المتدرّج في الإطلاق. وقد أولينا الأمان والشفافية أهمية كبيرة أثناء تصميم Codex، ليتمكّن المستخدمون من التحقق من مخرجاته. وتزداد أهمية هذا الإجراء مع تطوّر النماذج وقدرتها على تنفيذ مهام برمجية أكثر تعقيدًا بشكل مستقل، ومع تطوّر متطلبات السلامة. يمكن للمستخدمين مراجعة عمل Codex من خلال الإشارات المرجعية، والسجلات الطرفية، ونتائج الاختبارات. وعند حدوث غموض أو فشل في الاختبارات، يوضح وكيل Codex هذه المشكلات بشكل مباشر، مما يمكّن المستخدم من اتخاذ قرارات واعية بشأن الخطوة التالية. ومع ذلك، يبقى من الضروري أن يقوم المستخدمون بمراجعة الشيفرة التي يُنتجها الوكيل والتحقق منها يدويًا قبل دمجها أو تنفيذها.

Code-review screenshot with a test-file overlay verifying quoted filenames, plus summary and passing tests on a blue backdrop.
Code-review screenshot with a black terminal overlay showing one passing test for quoted filenames; summary and diff of the ‘Fix /diff error with special characters’ change visible on a blue-pastel background.

مواءمة مخرجات النموذج مع تفضيلات البشر

كان أحد الأهداف الأساسية أثناء تدريب codex-1 هو مواءمة المخرجات بشكل وثيق مع تفضيلات المطوّرين والمعايير المتّبعة في كتابة الشيفرة. وبالمقارنة مع OpenAI o3، يُنتج codex-1 باستمرار تعديلات أنظف، جاهزة للمراجعة البشرية الفورية والدمج ضمن سير العمل المعتاد.

Please fix the following issue in the astropy/astropy repository. Please resolve the issue in the problem below by editing and testing code files in your current code execution session. The repository is cloned in the /testbed folder. You must fully solve the problem for your answer to be considered correct. Problem statement:Modeling's `separability_matrix` does not compute separability correctly for nested CompoundModels Consider the following model: ```python from astropy.modeling import models as m from astropy.modeling.separable import separability_matrix cm = m.Linear1D(10) & m.Linear1D(5) ``` It's separability matrix as you might expect is a diagonal: ```python >>> separability_matrix(cm) array([[ True, False], [False, True]]) ``` If I make the model more complex: ```python >>> separability_matrix(m.Pix2Sky_TAN() & m.Linear1D(10) & m.Linear1D(5)) array([[ True, True, False, False], [ True, True, False, False], [False, False, True, False], [False, False, False, True]]) ``` The output matrix is again, as expected, the outputs and inputs to the linear models are separable and independent of each other. If however, I nest these compound models: ```python >>> separability_matrix(m.Pix2Sky_TAN() & cm) array([[ True, True, False, False], [ True, True, False, False], [False, False, True, True], [False, False, True, True]]) ``` Suddenly the inputs and outputs are no longer separable? This feels like a bug to me, but I might be missing something?
Codex
OpenAI o3

منع إساءة الاستخدام

أصبح التصدي للاستخدامات الخبيثة لهندسة البرمجيات المدعومة بالذكاء الاصطناعي، مثل تطوير البرمجيات الخبيثة، أمرًا بالغ الأهمية. وفي الوقت نفسه، من المهم ألّا تؤدي إجراءات الحماية إلى تعطيل غير مبرّر للاستخدامات المشروعة والنافعة التي قد تتضمن تقنيات تُستخدم أحيانًا في تطوير البرمجيات الخبيثة، مثل هندسة النواة منخفضة المستوى.

ولتحقيق توازن بين الأمان والفائدة، جرى تدريب Codex على تحديد الطلبات الهادفة إلى تطوير برمجيات خبيثة ورفضها بدقة، مع التمييز الواضح ودعم المهام المشروعة. كما قمنا بتعزيز أطر السياسات المتّبعة وإضافة تقييمات سلامة صارمة لترسيخ هذه الحدود بفاعلية. وقد نشرنا ملحقًا لبطاقة نظام o3 ليعكس هذه التقييمات.

تنفيذ آمن

يعمل وكيل Codex بشكل كامل داخل حاوية سحابية آمنة ومعزولة. وخلال تنفيذ المهام، يتم تعطيل الوصول للإنترنت، مما يحدّ من قدرة الوكيل على التفاعل فقط مع الشيفرة المزوّدة صراحة عبر مخزن بيانات GitHub والاعتمادات المثبتة مسبقًا والمعدة من قبل المستخدم عبر نص الإعداد. ولا يمكن للوكيل الوصول إلى المواقع الخارجية أو واجهات الـ API أو أي خدمات أخرى.

السيناريوهات الأولية للاستخدام

بدأت الفرق التقنية في OpenAI باستخدام Codex كجزء من أدوات العمل اليومية. وغالبًا ما يستخدمه مهندسو الشركة لتفويض المهام المتكررة محددة النطاق، مثل إعادة الهيكلة، وإعادة التسمية، وكتابة الاختبارات، وهي مهام قد تُشتّت تركيزهم لو تولّوها يدويًا. كما يثبت Codex فائدته في إعداد الهياكل الأولية للميزات الجديدة، وربط المكوّنات، وإصلاح الأخطاء، وصياغة الوثائق. وتنشئ الفرق عادات عمل جديدة حول Codex، مثل تصنيف المشكلات الطارئة، وتخطيط المهام مع بداية اليوم، وتفويض الأعمال الخلفية للمحافظة على وتيرة التقدّم. ومن خلال الحد من تغيّر السياق وإظهار المهام المنسية، يساعد Codex المهندسين على الإنجاز بسرعة أكبر والتركيز على ما هو أهم.

قبل الإصدار، كنا نعمل أيضًا مع مجموعة صغيرة من المختبرين الخارجيين لفهم أفضل لكيفية أداء Codex عبر قواعد الشيفرات المتنوعة وعمليات التطوير والفرق.

  • Cisco(يفتح في نافذة جديدة) تقوم باستكشاف كيف يمكن لـ Codex مساعدة فرق الهندسة لديها في تحويل الأفكار الطموحة إلى واقع بشكل أسرع. بصفتها شريك تصميم مبكر، تساعد Cisco في تشكيل مستقبل Codex من خلال تقييمه لحالات الاستخدام الواقعية عبر محفظة منتجاتها وتقديم الملاحظات لفريق OpenAI.
  • Temporal(يفتح في نافذة جديدة) تستخدم Codex لتسريع تطوير الميزات، وتصحيح الأخطاء، وكتابة الاختبارات وتنفيذها، وإعادة هيكلة قواعد الشيفرة الكبيرة. كما أنه يساعدهم على الحفاظ على تركيزهم من خلال تشغيل المهام المعقدة في الخلفية، مما يبقي المهندسين في حالة تدفّق ويُسرّع وتيرة التطوير.
  • Superhuman(يفتح في نافذة جديدة) تستخدم Codex لتسريع مهام صغيرة ومتكررة مثل تحسين تغطية الاختبارات وإصلاح حالات فشل التكامل. كما يساعدهم أيضًا على الشحن بسرعة أكبر من خلال تمكين مديري المنتجات من المساهمة في تغييرات بسيطة في الشيفرة دون الحاجة إلى مهندس، باستثناء مراجعة الشيفرة.
  • Kodiak(يفتح في نافذة جديدة) تستخدم Codex للمساعدة في كتابة أدوات تصحيح الأخطاء، وتحسين تغطية الاختبار، وإعادة هيكلة التعليمات البرمجية - مما يسرّع تطوير Kodiak Driver، وهي تقنية القيادة الذاتية الخاصة بهم. أصبح Codex أيضًا أداة مرجعية قيّمة، إذ يساعد المهندسين على فهم الأجزاء غير المألوفة من بنية النظام عبر عرض السياق ذي الصلة والتغييرات السابقة.

استنادًا إلى خبرات المستخدِمين الأوائل، نوصي بإسناد مهام محددة النطاق لعدة وكلاء في الوقت نفسه، بالإضافة إلى تجربة أنواع مختلفة من المهام والأوامر لاكتشاف قدرات النموذج بفاعلية.

تحديثات Codex CLI

أطلقنا الشهر الماضي Codex CLI، وهو وكيل برمجة خفيف ومفتوح المصدر يعمل مباشرة داخل الطرفية. يوفّر لك قوة نماذج مثل o3 وo4-mini ضمن سير العمل المحلي، ما يسهل استخدامه لإنجاز المهام بسرعة أكبر.

نصدر اليوم أيضًا نسخة أصغر من codex-1، مبنية على نسخة من o4-mini ومصممة خصيصًا للعمل داخل Codex CLI. يدعم هذا النموذج الجديد سير عمل أسرع في الطرفية، وتم تحسينه ليقدّم إجابات وتعديلات على الشيفرة بزمن استجابة منخفض، مع الحفاظ على نفس القدرات في اتباع التعليمات والأسلوب البرمجي. يتوفر الآن كنموذج افتراضي في Codex CLI، وكذلك عبر واجهة الـ API باسم codex-mini-latest. وسيجري تحديث اللقطة الأساسية للنموذج بشكل دوري مع استمرار تحسين Codex-mini.

كما نسهّل بشكل كبير ربط حساب المطوّر بـ Codex CLI. فبدلًا من إنشاء وتكوين رمز واجهة API يدويًا، يمكنك الآن تسجيل الدخول باستخدام حساب ChatGPT واختيار مؤسسة الـ API التي ترغب في استخدامها. سنتولى تلقائيًا إنشاء مفتاح الـ API وتكوينه نيابةً عنك. وسيتمكن مستخدمو Plus وPro الذين يسجلون الدخول إلى Codex CLI عبر ChatGPT من بدء استرداد رصيد مجاني بقيمة 5 دولارات و50 دولارًا على التوالي، ابتداءً من اليوم ولمدة 30 يومًا.

توفر Codex، والأسعار، وحدود الاستخدام

بدءًا من اليوم، نقوم بطرح Codex لمستخدمي ChatGPT Pro وEnterprise وBusiness على مستوى العالم، مع دعم لخطط Plus وEdu قريبًا. سيحصل المستخدمون على وصول سخي دون أي تكلفة إضافية خلال الأسابيع القادمة، حتى تتمكن من استكشاف ما يمكن أن يقدمه Codex، وبعد ذلك سنطرح وصولًا محدودًا مع خيارات أسعار مرنة تتيح لك شراء استخدام إضافي عند الطلب. ونخطط لتوسيع نطاق الوصول إلى مستخدمي Plus وEdu قريبًا.

بالنسبة للمطورين الذين يستخدمون نموذج codex-mini-latest، فهو متاح عبر واجهة Responses API، بتسعير قدره 1.50 دولار لكل مليون رمز إدخال، و6 دولارات لكل مليون رمز إخراج، مع خصم بنسبة 75% عند تفعيل تخزين الطلبات المؤقت.

لا يزال Codex في مرحلة مبكرة من التطوير. وبصفته نسخة بحثية أولية، يفتقر حاليًا إلى ميزات مثل دعم إدخال الصور لأعمال الواجهة الأمامية، والقدرة على تعديل مسار عمل الوكيل أثناء العمل. كما أن تفويض المهام إلى وكيل بعيد يستغرق وقتًا أطول مقارنة بالتحرير التفاعلي، وهو ما يتطلب فترة للتعوّد. ومع مرور الوقت، سيصبح التفاعل مع وكلاء Codex أكثر شبهًا بالتعاون غير المتزامن مع الزملاء. ومع تطوّر قدرات النماذج، نتوقع أن يتولى الوكلاء مهام أكثر تعقيدًا على مدى فترات أطول.

ما التالي

نتصور مستقبلًا يقود فيه المطوّرون المهام التي يرغبون بالسيطرة عليها، ويفوّضون ما تبقّى إلى الوكلاء، ليمضوا بوتيرة أسرع ويحققوا إنتاجية أعلى بفضل الذكاء الاصطناعي. ولتحقيق ذلك، نبني مجموعة من أدوات Codex التي تدعم التعاون اللحظي والتفويض غير المتزامن. 

أصبح استخدام أدوات الذكاء الاصطناعي مثل Codex CLI وغيرها ممارسة معيارية في القطاع، تساعد المطوّرين على العمل بسرعة أكبر أثناء كتابة الشيفرة. لكننا نرى أن نموذج العمل غير المتزامن المعتمد على عدة وكلاء، الذي يقدّمه Codex في ChatGPT، سيصبح الأسلوب الافتراضي لإنتاج برمجيات عالية الجودة.

وعلى المدى البعيد، نرى أن هذين النموذجين من التفاعل، التعاون اللحظي والتفويض، سيتقاربان. سيعمل المطوّرون جنبًا إلى جنب مع وكلاء الذكاء الاصطناعي داخل بيئات التطوير وأدواتهم اليومية لطرح الأسئلة، والحصول على الاقتراحات، وتفويض المهام الطويلة، ضمن سير عمل موحّد.

وفي المرحلة المقبلة، نخطّط لتقديم سير عمل أكثر تفاعلية ومرونة للوكلاء. سيتمكن المطوّرون قريبًا من تقديم التوجيه أثناء تنفيذ المهام، والتعاون في استراتيجيات التنفيذ، وتلقي تحديثات تقدمية استباقية. كما نتطلع إلى تكاملات أعمق مع الأدوات التي يستخدمها المطوّرون اليوم: فـ Codex يتصل حاليًا بـ GitHub، وقريبًا ستتمكن من إسناد المهام من خلال Codex CLI أو ChatGPT Desktop أو حتى أدوات مثل أنظمة تتبّع المشكلات أو أنظمة التكامل المستمر.

تُعد هندسة البرمجيات من أوائل الصناعات التي شهدت مكاسب كبيرة في الإنتاجية مدفوعة بالذكاء الاصطناعي، ما يفتح آفاقًا جديدة للأفراد والفرق الصغيرة. وبينما نحن متفائلون بهذه المكاسب، نتعاون مع شركائنا لفهم الأبعاد المرتبطة بالاعتماد الواسع للوكلاء على سير عمل المطوّرين، وتنمية المهارات لدى الأشخاص، وعلى اختلاف مستويات الخبرة والمناطق الجغرافية. 

هذه مجرد البداية - ونحن متحمسون لرؤية ما ستطوره باستخدام Codex.

إعادة تشغيل البث المباشر

الملحق

رسالة النظام

نشارك رسالة النظام الخاصة بنموذج codex-1 لمساعدة المطوّرين على فهم السلوك الافتراضي للنموذج وضبط Codex للعمل بفعالية ضمن سير عمل مخصّص. فعلى سبيل المثال، تحث رسالة النظام Codex على تشغيل جميع الاختبارات المذكورة في ملف AGENTS.md، لكن إذا كنت تعاني من ضيق الوقت، فيمكنك طلب تجاوز هذه الاختبارات.

نص عادي

1
# Instructions
2
- The user will provide a task.
3
- The task involves working with Git repositories in your current working directory.
4
- Wait for all terminal commands to be completed (or terminate them) before finishing.
5

6
# Git instructions
7
If completing the user's task requires writing or modifying files:
8
- Do not create new branches.
9
- Use git to commit your changes.
10
- If pre-commit fails, fix issues and retry.
11
- Check git status to confirm your commit. You must leave your worktree in a clean state.
12
- Only committed code will be evaluated.
13
- Do not modify or amend existing commits.
14

15
# AGENTS.md spec
16
- Containers often contain AGENTS.md files. These files can appear anywhere in the container's filesystem. Typical locations include `/`, `~`, and in various places inside of Git repos.
17
- These files are a way for humans to give you (the agent) instructions or tips for working within the container.
18
- Some examples might be: coding conventions, info about how code is organized, or instructions for how to run or test code.
19
- AGENTS.md files may provide instructions about PR messages (messages attached to a GitHub Pull Request produced by the agent, describing the PR). These instructions should be respected.
20
- Instructions in AGENTS.md files:
21
- The scope of an AGENTS.md file is the entire directory tree rooted at the folder that contains it.
22
- For every file you touch in the final patch, you must obey instructions in any AGENTS.md file whose scope includes that file.
23
- Instructions about code style, structure, naming, etc. apply only to code within the AGENTS.md file's scope, unless the file states otherwise.
24
- More-deeply-nested AGENTS.md files take precedence in the case of conflicting instructions.
25
- Direct system/developer/user instructions (as part of a prompt) take precedence over AGENTS.md instructions.
26
- AGENTS.md files need not live only in Git repos. For example, you may find one in your home directory.
27
- If the AGENTS.md includes programmatic checks to verify your work, you MUST run all of them and make a best effort to validate that the checks pass AFTER all code changes have been made.
28
- This applies even for changes that appear simple, i.e. documentation. You still must run all of the programmatic checks.
29

30
# Citations instructions
31
- If you browsed files or used terminal commands, you must add citations to the final response (not the body of the PR message) where relevant. Citations reference file paths and terminal outputs with the following formats:
32
1) `【F:<file_path>†L<line_start>(-L<line_end>)?】`
33
- File path citations must start with `F:`. `file_path` is the exact file path of the file relative to the root of the repository that contains the relevant text.
34
- `line_start` is the 1-indexed start line number of the relevant output within that file.
35
2) `【<chunk_id>†L<line_start>(-L<line_end>)?】`
36
- Where `chunk_id` is the chunk_id of the terminal output, `line_start` and `line_end` are the 1-indexed start and end line numbers of the relevant output within that chunk.
37
- Line ends are optional, and if not provided, line end is the same as line start, so only 1 line is cited.
38
- Ensure that the line numbers are correct, and that the cited file paths or terminal outputs are directly relevant to the word or clause before the citation.
39
- Do not cite completely empty lines inside the chunk, only cite lines that have content.
40
- Only cite from file paths and terminal outputs, DO NOT cite from previous pr diffs and comments, nor cite git hashes as chunk ids.
41
- Use file path citations that reference any code changes, documentation or files, and use terminal citations only for relevant terminal output.
42
- Prefer file citations over terminal citations unless the terminal output is directly relevant to the clauses before the citation, i.e. clauses on test results.
43
- For PR creation tasks, use file citations when referring to code changes in the summary section of your final response, and terminal citations in the testing section.
44
- For question-answering tasks, you should only use terminal citations if you need to programmatically verify an answer (i.e. counting lines of code). Otherwise, use file citations.

المؤلف

OpenAI