دليل المطور لقدرات نموذج GPT-5 من OpenAI
يقدم هذا المقال شرحًا مفصلًا لقدرات نموذج GPT-5 الجديد من OpenAI، والذي يُعدّ نقلة نوعية في مجال معالجة اللغة الطبيعية. سنتناول في هذا الدليل أهم الميزات الجديدة، وكيفية استخدامها عمليًا، مع أمثلة برمجية توضيحية.
تثبيت المكتبات والحصول على مفتاح API
قبل البدء، ستحتاج إلى تثبيت المكتبات اللازمة وتفعيل حسابك على منصة OpenAI:
- تثبيت المكتبات: استخدم الأمر التالي في محيط عمل Python لتثبيت المكتبات الضرورية:
pip install pandas openai
-
الحصول على مفتاح API: توجه إلى صفحة إعدادات حسابك على platform.openai.com/settings/organization/api-keys وقم بإنشاء مفتاح API جديد. قد تحتاج إلى إضافة بيانات الفوترة ودفع مبلغ 5 دولارات على الأقل لتفعيل الوصول إلى واجهة برمجة التطبيقات.
-
إضافة مفتاح API إلى بيئة العمل:
import os
from getpass import getpass
os.environ['OPENAI_API_KEY'] = getpass('أدخل مفتاح API الخاص بك: ')
معلمة الإيجاز (Verbosity)
تتيح لك معلمة verbosity التحكم في مستوى تفصيل ردود النموذج دون تغيير المطالبة نفسها. تتوفر ثلاث خيارات:
low(منخفض): ردود موجزة وقصيرة، مع الحد الأدنى من النصوص الإضافية.medium(متوسط): مستوى تفصيل متوازن وواضح (الخيار الافتراضي).high(عالي): ردود مفصلة للغاية، مثالية للشروحات، والمراجعات، أو التعليم.
مثال:
from openai import OpenAI
import pandas as pd
from IPython.display import display
client = OpenAI()
question = "اكتب قصيدة عن محقق وقضيته الأولى"
data = []
for verbosity in ["low", "medium", "high"]:
response = client.responses.create(
model="gpt-5-mini",
input=question,
text={"verbosity": verbosity}
)
# استخراج النص
output_text = ""
for item in response.output:
if hasattr(item, "content"):
for content in item.content:
if hasattr(content, "text"):
output_text += content.text
usage = response.usage
data.append({
"Verbosity": verbosity,
"Sample Output": output_text,
"Output Tokens": usage.output_tokens
})
# إنشاء جدول بيانات
df = pd.DataFrame(data)
# عرض الجدول بشكل منظم
pd.set_option('display.max_colwidth', None)
styled_df = df.style.set_table_styles([
{'selector': 'th', 'props': [('text-align', 'center')]},
{'selector': 'td', 'props': [('text-align', 'left')]}
])
display(styled_df)
استدعاء الدوال بشكل حر (Free-Form Function Calling)
يسمح استدعاء الدوال بشكل حر لـ GPT-5 بإرسال حمولات نصية خام – مثل نصوص Python، أو استعلامات SQL، أو أوامر shell – مباشرةً إلى أداة معينة، دون الحاجة إلى التنسيق JSON المستخدم في GPT-4. يُسهّل هذا الأمر ربط GPT-5 بأوقات تشغيل خارجية مثل:
- صناديق رمل للرموز (Python، C++، Java، إلخ)
- قواعد بيانات SQL (يُخرج استعلامات SQL مباشرة)
- بيئات Shell (يُخرج أوامر Bash جاهزة للتشغيل)
- مُولّدات التكوين
مثال:
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-5-mini",
input="الرجاء استخدام أداة `code_exec` لحساب مكعب عدد حروف العلة في كلمة 'أناناس'",
text={"format": {"type": "text"}},
tools=[
{
"type": "custom",
"name": "code_exec",
"description": "ينفذ كود Python عشوائي",
}
]
)
print(response.output[1].input)
قواعد النحو الخالية من السياق (Context-Free Grammar – CFG)
قواعد النحو الخالية من السياق هي مجموعة من قواعد الإنتاج التي تُعرّف السلاسل الصحيحة في لغة ما. تُستخدم هذه القواعد عندما تريد تقييد مُخرجات النموذج بشكل صارم لضمان اتباعها دائمًا لتركيب لغة برمجة، أو تنسيق بيانات، أو نص منظم آخر.
مثال على استخدام CFG مع GPT-5 لضمان صحة عنوان البريد الإلكتروني:
from openai import OpenAI
import re
client = OpenAI()
email_regex = r"^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+.[A-Za-z]{2,}$"
prompt = "أعطني عنوان بريد إلكتروني صالح لجون دو. يمكن أن يكون بريدًا إلكترونيًا وهميًا"
response = client.responses.create(
model="gpt-5",
input=prompt,
text={"format": {"type": "text"}},
tools=[
{
"type": "custom",
"name": "email_grammar",
"description": "يُخرج عنوان بريد إلكتروني صالح.",
"format": {
"type": "grammar",
"syntax": "regex",
"definition": email_regex
}
}
],
parallel_tool_calls=False
)
print("GPT-5 Output:", response.output[1].input)
الاستنتاج الحد الأدنى (Minimal Reasoning)
يعمل وضع الاستنتاج الحد الأدنى على تشغيل GPT-5 مع عدد قليل جدًا أو بدون رموز استنتاج، مما يقلل من زمن الوصول ويوفر وقتًا أسرع للحصول على الرمز الأول. يُعد هذا الوضع مثاليًا للمهام الحتمية والخفيفة مثل:
- استخراج البيانات
- التنسيق
- عمليات الكتابة القصيرة
- التصنيف البسيط
مثال:
import time
from openai import OpenAI
client = OpenAI()
prompt = "صنّف الرقم المعطى على أنه فردي أو زوجي. أرجع كلمة واحدة فقط."
start_time = time.time()
response = client.responses.create(
model="gpt-5",
input=[
{"role": "developer", "content": prompt},
{"role": "user", "content": "57"}
],
reasoning={"effort": "minimal"}
)
latency = time.time() - start_time
output_text = ""
for item in response.output:
if hasattr(item, "content"):
for content in item.content:
if hasattr(content, "text"):
output_text += content.text
print("--------------------------------")
print("Output:", output_text)
print(f"Latency: {latency:.3f} seconds")
هذا الدليل يقدم لمحة عامة عن قدرات GPT-5 الجديدة. ننصحك بتجربة هذه الميزات بنفسك لاكتشاف إمكاناتها الكاملة.





اترك تعليقاً