Apidog

منصة تطوير API تعاونية متكاملة

تصميم API

توثيق API

تصحيح أخطاء API

محاكاة API

اختبار API الآلي

كيفية استخدام أدوات وكيل الذكاء الاصطناعي من OpenAI (دليل مطور واجهة برمجة التطبيقات)

@apidog

@apidog

Updated on مارس 12, 2025

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

💡
وقبل أن نغوص في التفاصيل، دعني أقدم لك تنبيهًا سريعًا: إذا كنت تريد تعزيز تجربة تطوير واجهة برمجة التطبيقات الخاصة بك، قم بتحميل Apidog مجانًا اليوم - إنه أداة رائعة لتسهيل عملك مع واجهات برمجة التطبيقات مثل OpenAI!
button

لماذا تعتبر أدوات OpenAI الجديدة لبناء الوكلاء تغييرًا جذريًا

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

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

ما هم الوكلاء؟ مراجعة سريعة

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

تمكن أدوات OpenAI الجديدة المطورين من بناء هؤلاء الوكلاء باستخدام واجهة برمجة التطبيقات الخاصة بـ OpenAI، مما يجعلهم أذكى وأسرع وأكثر ارتباطًا بالويب.

البدء: فهم واجهة برمجة تطبيقات ردود OpenAI

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

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

إليك كيفية البدء:

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

import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
    model: "gpt-4o",
    input: "اكتب قصة قبل النوم في جملة واحدة عن وحيد القرن."
});

console.log(response.output_text);

تحليل المدخلات الصورية

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

import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
    model: "gpt-4o",
    input: [
        { role: "user", content: "ما الفريقان اللذان يلعبان في هذه الصورة؟" },
        {
            role: "user",
            content: [
                {
                    type: "input_image", 
                    image_url: "https://upload.wikimedia.org/wikipedia/commons/3/3b/LeBron_James_Layup_%28Cleveland_vs_Brooklyn_2018%29.jpg",
                }
            ],
        },
    ],
});

console.log(response.output_text);

توسيع النموذج باستخدام الأدوات

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

import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
    model: "gpt-4o",
    tools: [ { type: "web_search_preview" } ],
    input: "ما قصة الخبر الإيجابي من اليوم؟",
});

console.log(response.output_text);

تقديم تجارب ذكاء اصطناعي سريعة جدًا

باستخدام إما واجهة برمجة التطبيقات في الوقت الحقيقي الجديدة أو الأحداث المتدفقة التي تُرسل من الخادم، يمكنك بناء تجارب ذات أداء عالٍ ووقت استجابة منخفض لمستخدميك.

import { OpenAI } from "openai";
const client = new OpenAI();

const stream = await client.responses.create({
    model: "gpt-4o",
    input: [
        {
            role: "user",
            content: "قل 'حمام فقاعات مزدوج' عشر مرات بسرعة.",
        },
    ],
    stream: true,
});

for await (const event of stream) {
    console.log(event);
}

بناء الوكلاء

استخدم منصة OpenAI لبناء وكلاء قادرين على اتخاذ إجراءات - مثل التحكم في الكمبيوترات - نيابة عن مستخدميك. استخدم SDK للوكلاء بلغة بايثون لإنشاء منطق التنسيق على الواجهة الخلفية.

from agents import Agent, Runner
import asyncio

spanish_agent = Agent(
    name="الوكيل الإسباني",
    instructions="أنت تتحدث الإسبانية فقط.",
)

english_agent = Agent(
    name="الوكيل الإنجليزي",
    instructions="أنت تتحدث الإنجليزية فقط.",
)

triage_agent = Agent(
    name="وكيل الفرز",
    instructions="قم بإحالة الطلب إلى الوكيل المناسب بناءً على لغة الطلب.",
    handoffs=[spanish_agent, english_agent],
)


async def main():
    result = await Runner.run(triage_agent, input="Hola, ¿cómo estás?")
    print(result.final_output)


if __name__ == "__main__":
    asyncio.run(main())

# ¡Hola! Estoy bien, gracias por preguntar. ¿Y tú, cómo estás?

تقوم الأدوات المدمجة في واجهة برمجة التطبيقات بتنفيذ هذه المهام بسلاسة، مما يوفر لك الوقت والجهد. بالإضافة إلى ذلك، تم تصميمها مع مراعاة السلامة والموثوقية، وهو انتصار كبير للمطورين.

بحث الويب لوكلاء أذكى

تتيح أداة البحث على الويب من OpenAI، المدعومة بنماذج مثل GPT-4o search وGPT-4o mini search، لوكلائك جلب المعلومات المحدثة من الإنترنت واقتباس المصادر. هذه الأداة مفيدة بشكل خاص لبناء وكلاء يحتاجون إلى تقديم إجابات دقيقة وفي الوقت الحقيقي.

تتوفر أداة البحث على الويب في المعاينة من خلال واجهة برمجة التطبيقات الخاصة بـ OpenAI، وتتميز بدقة مثيرة للإعجاب. على معيار OpenAI SimpleQA، تسجل GPT-4o search 90%، بينما تسجل GPT-4o mini search 88%. هذه دقة جديرة بالاهتمام!

لتنفيذ بحث الويب في وكيلك، تحقق من دليل OpenAI. إليك ملخص سريع:

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

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

إتقان بحث الملفات للوصول الفعال إلى البيانات

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

تشدد OpenAI على أنها لن تدرب نماذجها على هذه الملفات، مما يضمن الخصوصية والأمان، وهو اعتبار مهم للأعمال. يمكنك معرفة المزيد عن البحث في الملفات في الوثائق.

إليك كيفية دمج بحث الملفات في وكيلك:

  1. رفع الملفات: استخدم واجهة برمجة التطبيقات الخاصة بـ OpenAI لرفع الملفات إلى المنصة.
  2. تكوين الوكيل: قم بإعداد وكيلك لاستخدام أداة بحث الملفات داخل واجهة برمجة التطبيقات للردود.
  3. استعلام البيانات: يمكن لوكيلك البحث عن معلومات محددة داخل الملفات وإرجاع النتائج ذات الصلة.

على سبيل المثال، يمكنك بناء وكيل للموارد البشرية يبحث في سجلات الموظفين لتقديم تفاصيل حول الرواتب أو أرصدة الإجازات. يمكن أن يوفر هذا المستوى من الأتمتة ساعات من العمل اليدوي ويحسن الكفاءة عبر الإدارات.

أتمتة المهام مع ميزات استخدام الكمبيوتر

تمكن نموذج الوكيل المستخدم للكمبيوتر (CUA) من OpenAI، الذي يدعم منتج Operator، الوكلاء من توليد إجراءات الفأرة ولوحة المفاتيح. يعني هذا أن وكلاءك يمكنهم أتمتة مهام مثل إدخال البيانات، وتدفق العمل في التطبيقات، والتنقل في المواقع الإلكترونية.

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

إليك كيفية البدء:

  • الوصول إلى المعاينة: قم بالتسجيل في المعاينة البحثية لاختبار نموذج CUA.
  • تعريف المهام: برمج وكيلك لأداء مهام الكمبيوتر المحددة، مثل ملء النماذج أو النقر على الأزرار.
  • مراقبة الأداء: استخدم أدوات OpenAI لتصحيح الأخطاء وتحسين إجراءات وكيلك.

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

1. أرسل طلبًا إلى النموذج

أولاً، قد ترغب في إعداد مفتاح OpenAI الخاص بك

import openai
import os

# تعيين مفتاح واجهة برمجة التطبيقات
openai.api_key = os.environ.get("OPENAI_API_KEY")

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

يمكنك أيضًا تضمين لقطة شاشة من الحالة الأولية للبيئة.

لتكون قادرًا على استخدام أداة computer_use_preview، تحتاج إلى تعيين معلمة truncation إلى "auto" (بشكل افتراضي، يتم تعطيل التقطيع).

from openai import OpenAI
client = OpenAI()

response = client.responses.create(
    model="computer-use-preview",
    tools=[{
        "type": "computer_use_preview",
        "display_width": 1024,
        "display_height": 768,
        "environment": "browser" # قيم أخرى ممكنة: "mac"، "windows"، "ubuntu"
    }],
    input=[
        {
            "role": "user",
            "content": "تحقق من آخر أخبار OpenAI على bing.com."
        }
        # اختياري: تضمين لقطة شاشة من الحالة الأولية للبيئة
        # {
        #     type: "input_image",
        #     image_url: f"data:image/png;base64,{screenshot_base64}"
        # }
    ],
    truncation="auto"
)

print(response.output)

2. استلام إجراء مقترح

يرجع النموذج مخرجات تحتوي على عنصر computer_call، نص فقط، أو استدعاءات أدوات أخرى، وذلك حسب حالة المحادثة.

أمثلة لعنصر computer_call هي نقرة، تمرير، ضغط على مفتاح، أو أي حدث آخر محدد في مرجع واجهة برمجة التطبيقات. في مثالنا، العنصر هو إجراء نقرة:

"output": [
    {
        "type": "reasoning",
        "id": "rs_67cc...",
        "content": []
    },
    {
        "type": "computer_call",
        "id": "cu_67cc...",
        "call_id": "call_zw3...",
        "action": {
            "type": "click",
            "button": "left",
            "x": 156,
            "y": 50
        },
        "pending_safety_checks": [],
        "status": "completed"
    }
]

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

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

3. تنفيذ الإجراء في بيئتك

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

def handle_model_action(page, action):
    """
    نظرًا لإجراء كمبيوتر (مثل: نقرة، نقرة مزدوجة، تمرير، إلخ.),
    تنفيذ العملية المقابلة على الصفحة الخاصة بـ Playwright.
    """
    action_type = action.type
    
    try:
        match action_type:

            case "click":
                x, y = action.x, action.y
                button = action.button
                print(f"الإجراء: نقرة على ({x}, {y}) باستخدام الزر '{button}'")
                # لا يتعامل مع أشياء مثل النقرة المتوسطة، إلخ.
                if button != "left" and button != "right":
                    button = "left"
                page.mouse.click(x, y, button=button)

            case "scroll":
                x, y = action.x, action.y
                scroll_x, scroll_y = action.scroll_x, action.scroll_y
                print(f"الإجراء: تمرير عند ({x}, {y}) مع الإزاحات (scroll_x={scroll_x}, scroll_y={scroll_y})")
                page.mouse.move(x, y)
                page.evaluate(f"window.scrollBy({scroll_x}, {scroll_y})")

            case "keypress":
                keys = action.keys
                for k in keys:
                    print(f"الإجراء: ضغط على المفتاح '{k}'")
                    # خريطة بسيطة لمفاتيح شائعة؛ قم بالتوسع حسب الحاجة.
                    if k.lower() == "enter":
                        page.keyboard.press("Enter")
                    elif k.lower() == "space":
                        page.keyboard.press(" ")
                    else:
                        page.keyboard.press(k)
            
            case "type":
                text = action.text
                print(f"الإجراء: كتابة نص: {text}")
                page.keyboard.type(text)
            
            case "wait":
                print(f"الإجراء: انتظار")
                time.sleep(2)

            case "screenshot":
                # لا يوجد شيء يجب القيام به حيث يتم أخذ لقطة شاشة في كل دورة
                print(f"الإجراء: لقطة شاشة")

            # التعامل مع إجراءات أخرى هنا

            case _:
                print(f"إجراء غير معترف به: {action}")

    except Exception as e:
        print(f"خطأ في التعامل مع الإجراء {action}: {e}")

4. التقاط لقطة الشاشة المحدثة

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

def get_screenshot(page):
    """
    اتخذ لقطة شاشة كاملة باستخدام Playwright وأعد صورة البايت.
    """
    return page.screenshot()

5. تكرار

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

import time
import base64
from openai import OpenAI
client = OpenAI()

def computer_use_loop(instance, response):
    """
    تشغيل الحلقة التي تنفذ إجراءات الكمبيوتر حتى لا يتم العثور على 'computer_call'.
    """
    while True:
        computer_calls = [item for item in response.output if item.type == "computer_call"]
        if not computer_calls:
            print("لم يتم العثور على استدعاء الكمبيوتر. المخرجات من النموذج:")
            for item in response.output:
                print(item)
            break  # الخروج عندما لا يتم إصدار أي مكالمات كمبيوتر.

        # نتوقع في أقصى تقدير استدعاء كمبيوتر واحد لكل استجابة.
        computer_call = computer_calls[0]
        last_call_id = computer_call.call_id
        action = computer_call.action

        # تنفيذ الإجراء (الوظيفة المعرفة في الخطوة 3)
        handle_model_action(instance, action)
        time.sleep(1)  # السماح بوقت لتأثير التغييرات.

        # اتخاذ لقطة شاشة بعد الإجراء (الوظيفة المعرفة في الخطوة 4)
        screenshot_bytes = get_screenshot(instance)
        screenshot_base64 = base64.b64encode(screenshot_bytes).decode("utf-8")

        # إعادة لقطة الشاشة كـ computer_call_output
        response = client.responses.create(
            model="computer-use-preview",
            previous_response_id=response.id,
            tools=[
                {
                    "type": "computer_use_preview",
                    "display_width": 1024,
                    "display_height": 768,
                    "environment": "browser"
                }
            ],
            input=[
                {
                    "call_id": last_call_id,
                    "type": "computer_call_output",
                    "output": {
                        "type": "input_image",
                        "image_url": f"data:image/png;base64,{screenshot_base64}"
                    }
                }
            ],
            truncation="auto"
        )

    return response

تنسيق الوكلاء باستخدام SDK للوكلاء

مجموعة أدوات OpenAI مفتوحة المصدر لبناء وإدارة تدفقات العمل متعددة الوكلاء. يبني هذا SDK على الإطار السابق لـ OpenAI، Swarm، ويقدم للمطورين أدوات مجانية لدمج النماذج، وتنفيذ ضوابط الأمان، ومراقبة أنشطة الوكلاء.

يعتبر SDK للوكلاء عملي باللغة بايثون ويتضمن ميزات مثل دورات الوكيل المدمجة وفحوصات الأمان. إنه مثالي لإنشاء أنظمة معقدة حيث تعمل عدة وكلاء معًا لحل المشاكل.

إليك كيفية استخدام SDK للوكلاء:

  1. تحميل SDK: الوصول إلى الكود مفتوح المصدر من مستودع OpenAI على GitHub.
  2. إعداد تدفقات عمل متعددة الوكلاء: استخدم SDK لتنسيق المهام بين الوكلاء، وتفويضها بناءً على قدراتهم.
  3. إضافة ضوابط أمان: تنفيذ فحوصات أمان لضمان أن يتصرف وكلاؤك بشكل مسؤول وموثوق.

على سبيل المثال، يمكنك بناء فريق مبيعات من وكلاء الذكاء الاصطناعي حيث يتولى وكيل واحد البحث على الويب، ويدير آخر الملفات، ويعمل ثالث على أتمتة المهام الحاسوبية. يربط SDK للوكلاء بينهم، مما creates a seamless, efficient system.

الخاتمة

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

فما الذي تنتظره؟ اغمر في واجهة برمجة التطبيقات الخاصة بـ OpenAI، جرب أدواتهم الجديدة، وابدأ في بناء وكلاء يذهلون مستخدميك. ولا تنسَ تحميل Apidog مجانًا لتسهيل تجربة تطوير واجهة برمجة التطبيقات الخاصة بك وجعل رحلتك أكثر سلاسة!

button