كيفية استخدام واجهة برمجة تطبيقات Grok لتحويل النص إلى فيديو: دليل شامل

Ashley Innocent

Ashley Innocent

3 أبريل 2026

كيفية استخدام واجهة برمجة تطبيقات Grok لتحويل النص إلى فيديو: دليل شامل

الخلاصة

تُولّد واجهة برمجة تطبيقات Grok لتحويل النص إلى فيديو مقاطع فيديو من موجه نصي. يمكنك استدعاء POST /v1/videos/generations، وستحصل على request_id فورًا، ثم تقوم باستطلاع GET /v1/videos/{request_id} حتى تصبح الحالة "done". النموذج هو grok-imagine-video، ويبدأ التسعير من 0.05 دولار لكل ثانية بدقة 480p. يتعامل xAI Python SDK مع الاستطلاع تلقائيًا.

المقدمة

ولّدت xAI 1.2 مليار مقطع فيديو في يناير 2026 وحده. كان ذلك أول شهر بعد إطلاق واجهة برمجة تطبيقات Grok لتحويل النص إلى فيديو في 28 يناير 2026. وصُنّف النموذج أيضًا بالمرتبة الأولى في لوحة صدارة Artificial Analysis لتحويل النص إلى فيديو في نفس الشهر. هذه الأرقام مهمة لأنها تخبرك بأن البنية التحتية أثبتت كفاءتها على نطاق واسع.

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

💡
واجهة برمجة التطبيقات غير متزامنة (async). هذا يعني أن واجهتك الأمامية لا يمكنها الانتظار حتى يصبح الفيديو جاهزًا قبل عرض أي شيء. إذا كنت تبني واجهة مستخدم لتوليد الفيديو، فأنت بحاجة إلى طريقة للتطوير مقابل تدفق الاستطلاع دون إنفاق اعتمادات على كل تشغيل اختباري. يتيح لك Smart Mock من Apidog محاكاة كل من نقطة نهاية التوليد ونقطة نهاية الاستطلاع. يمكن لفريقك بناء واجهة المستخدم لمشغل الفيديو بينما لا يزال العمل على الواجهة الخلفية جاريًا. قم بتنزيل Apidog مجانًا لمتابعة قسم الاختبار لاحقًا في هذا الدليل.
button

ما هي واجهة برمجة تطبيقات Grok لتحويل النص إلى فيديو؟

واجهة برمجة تطبيقات Grok لتحويل النص إلى فيديو هي جزء من مجموعة xAI لتوليد الوسائط على https://api.x.ai. ترسل موجهًا نصيًا ويقوم النموذج grok-imagine-video بتوليد مقطع فيديو قصير من الصفر. لا يلزم وجود صورة مصدر.

توجد واجهة برمجة التطبيقات جنبًا إلى جنب مع نقطة نهاية متزامنة لتوليد الصور (POST /v1/images/generations، النموذج grok-imagine-image، 0.02 دولار لكل صورة). كما تتضمن نقاط نهاية لتوسيع أو تعديل مقاطع الفيديو.

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

كيف يعمل توليد الفيديو من النص (شرح نمط عدم التزامن ببساطة)

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

إليك التدفق:

  1. ترسل طلب POST مع موجهك.
  2. تعيد واجهة برمجة التطبيقات request_id فورًا (في أقل من ثانية).
  3. يتم توليد الفيديو على خوادم xAI.
  4. تقوم باستطلاع نقطة نهاية GET باستخدام request_id هذا بشكل متكرر.
  5. عندما تتغير الحالة من "processing" إلى "done"، يتضمن الرد عنوان URL للفيديو.

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

المتطلبات الأساسية

قبل أن تكتب أي رمز، تحتاج إلى شيئين:

حساب xAI. أنشئ واحدًا على console.x.ai. ستقوم أيضًا بإضافة الفواتير هناك قبل أن يحصل مفتاح API الخاص بك على إذن التوليد.

مفتاح API. في وحدة تحكم xAI، انتقل إلى "API Keys" (مفاتيح واجهة برمجة التطبيقات) وأنشئ مفتاحًا جديدًا. انسخه في مكان آمن. ستقوم بتمريره كرمز مميز من نوع Bearer في رأس كل طلب.

لقطة شاشة للوحة تحكم xAI تعرض قسم مفاتيح API.

قم بتعيينه كمتغير بيئة حتى لا تقوم بترميزه بشكل ثابت:

export XAI_API_KEY="your_api_key_here"

اختياريًا، قم بتثبيت xAI Python SDK لأبسط تكامل:

pip install xai-sdk

أول طلب لك لتحويل النص إلى فيديو

نقطة النهاية هي POST https://api.x.ai/v1/videos/generations. الحقول المطلوبة الوحيدة هي model و prompt.

استخدام curl

curl -X POST https://api.x.ai/v1/videos/generations \
  -H "Authorization: Bearer $XAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video",
    "prompt": "كلب جولدن ريتريفر يركض عبر أوراق الخريف بحركة بطيئة، إضاءة سينمائية"
  }'

يأتي الرد فورًا:

{
  "request_id": "d97415a1-5796-b7ec-379f-4e6819e08fdf"
}

معرف UUID هذا هو تذكرتك لاسترداد الفيديو بمجرد أن يصبح جاهزًا.

استخدام بايثون مع مكتبة requests

import requests
import os

API_KEY = os.environ["XAI_API_KEY"]
BASE_URL = "https://api.x.ai"

headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

payload = {
    "model": "grok-imagine-video",
    "prompt": "A golden retriever running through autumn leaves in slow motion, cinematic lighting"
}

response = requests.post(
    f"{BASE_URL}/v1/videos/generations",
    headers=headers,
    json=payload
)

data = response.json()
request_id = data["request_id"]
print(f"Generation started. Request ID: {request_id}")

الاستطلاع للحصول على نتيجة الفيديو

بمجرد حصولك على request_id، قم باستطلاع GET /v1/videos/{request_id} حتى يصبح حقل الحالة "done".

يحتوي حقل الحالة على ثلاث قيم محتملة: - "processing": لا يزال يتم التوليد - "done": اكتمل، عنوان URL للفيديو متاح - "failed": حدث خطأ ما

إليك حلقة استطلاع كاملة بلغة بايثون:

import requests
import time
import os

API_KEY = os.environ["XAI_API_KEY"]
BASE_URL = "https://api.x.ai"

headers = {
    "Authorization": f"Bearer {API_KEY}"
}

def poll_video(request_id: str, interval: int = 5, max_attempts: int = 60) -> dict:
    """Poll until video generation is complete."""
    url = f"{BASE_URL}/v1/videos/{request_id}"

    for attempt in range(max_attempts):
        response = requests.get(url, headers=headers)
        data = response.json()

        status = data.get("status")
        progress = data.get("progress", 0)
        print(f"Attempt {attempt + 1}: status={status}, progress={progress}%")

        if status == "done":
            return data
        elif status == "failed":
            raise RuntimeError(f"Video generation failed: {data}")

        time.sleep(interval)

    raise TimeoutError(f"Video not ready after {max_attempts} attempts")


# Full workflow: generate then poll
def generate_video(prompt: str) -> str:
    """Generate a video and return its URL."""
    response = requests.post(
        f"{BASE_URL}/v1/videos/generations",
        headers={**headers, "Content-Type": "application/json"},
        json={"model": "grok-imagine-video", "prompt": prompt}
    )
    request_id = response.json()["request_id"]
    print(f"Request ID: {request_id}")

    result = poll_video(request_id)
    video_url = result["video"]["url"]
    print(f"Video ready: {video_url}")
    return video_url


video_url = generate_video(
    "A timelapse of a city skyline at sunset transitioning to night, aerial view"
)

عند الانتهاء، يبدو رد الاستطلاع الكامل كالتالي:

{
  "status": "done",
  "video": {
    "url": "https://vidgen.x.ai/....mp4",
    "duration": 8,
    "respect_moderation": true
  },
  "progress": 100,
  "usage": {
    "cost_in_usd_ticks": 500000000
  }
}

استخدام xAI Python SDK

إذا كنت تفضل تخطي الاستطلاع اليدوي، فإن xAI SDK يتعامل معه نيابة عنك. طريقة client.video.generate() تحظر حتى يصبح الفيديو جاهزًا.

from xai_sdk import Client
import os

client = Client(api_key=os.environ["XAI_API_KEY"])

result = client.video.generate(
    model="grok-imagine-video",
    prompt="كلب جولدن ريتريفر يركض عبر أوراق الخريف بحركة بطيئة",
    duration=8,
    resolution="720p",
    aspect_ratio="16:9"
)

print(f"Video URL: {result.video.url}")
print(f"Duration: {result.video.duration}s")

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

كتابة موجهات فعالة لتوليد الفيديو

موجهك هو أهم مدخل. الموجه المفصل والمنظم ينتج نتائج أفضل بكثير من الموجه الغامض.

وصف المشهد

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

الحركة

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

نمط الكاميرا

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

الإضاءة والمزاج

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

مراجع النمط

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

هيكل الموجه الفعال

ابدأ بالموضوع، أضف الحركة، صف الكاميرا، ثم اختتم بالنمط والمزاج. هكذا:

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

التحكم في الدقة، المدة، ونسبة العرض إلى الارتفاع

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

المدة

"duration": 10

النطاق: من 1 إلى 15 ثانية. الافتراضي هو 6 ثوانٍ. تكلف مقاطع الفيديو الأطول أكثر. يكلف مقطع مدته 10 ثوانٍ بدقة 480p 0.50 دولار.

الدقة

"resolution": "720p"

خياران: "480p" (افتراضي) و "720p". استخدم 480p للنماذج الأولية والاختبار. استخدم 720p للإخراج الإنتاجي حيث الجودة مهمة.

نسبة العرض إلى الارتفاع

"aspect_ratio": "9:16"

النسب المتاحة:

النسبة الأفضل لـ
16:9 سطح المكتب، يوتيوب، العروض التقديمية (افتراضي)
9:16 تيك توك، إنستغرام ريلز، الجوال
1:1 خلاصات إنستغرام، بطاقات اجتماعية
4:3 الفيديو الكلاسيكي، العروض التقديمية
3:4 محتوى الجوال العمودي
3:2 نسبة الصورة القياسية
2:3 التصوير الفوتوغرافي العمودي

مثال كامل مع جميع المعلمات

curl -X POST https://api.x.ai/v1/videos/generations \
  -H "Authorization: Bearer $XAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-imagine-video",
    "prompt": "بلدة ساحلية عند الفجر، أمواج تتكسر بلطف على شاطئ صخري",
    "duration": 10,
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }'

استخدام الصور المرجعية لتوجيه نمط الفيديو

تقبل معلمة reference_images مصفوفة تصل إلى 7 عناوين URL للصور. توجه هذه الصور النمط البصري ومحتوى الفيديو المولّد دون أن تصبح موضوعه.

{
  "model": "grok-imagine-video",
  "prompt": "بلدة ساحلية عند الفجر، أمواج تتكسر بلطف على شاطئ صخري",
  "reference_images": [
    {"url": "https://example.com/my-style-reference.jpg"},
    {"url": "https://example.com/color-palette-reference.jpg"}
  ]
}

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

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

توسيع وتحرير مقاطع الفيديو المولّدة

توفر xAI نقطتي نهاية إضافيتين للعمل مع مقاطع الفيديو التي قمت بتوليدها بالفعل.

توسيع الفيديو

تضيف POST /v1/videos/extensions المزيد من اللقطات إلى فيديو مولد موجود. تمرر request_id للفيديو الأصلي وموجهًا جديدًا للتوسيع. هذا مفيد لإنشاء تسلسلات أطول دون تجاوز حد 15 ثانية في استدعاء واحد.

تعديل الفيديو

تعدل POST /v1/videos/edits فيديو موجودًا بناءً على تعليمات نصية. يمكنك تغيير النمط، أو تعديل المشهد، أو تطبيق تأثيرات على مقطع قمت بتوليده بالفعل.

تتبع نقطتا النهاية نفس نمط عدم التزامن كنقطة نهاية التوليد الرئيسية. تعيدان request_id وتقوم باستطلاع GET /v1/videos/{request_id} للحصول على النتيجة.

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

يتضمن رد الاستطلاع المكتمل كائن usage:

"usage": {
  "cost_in_usd_ticks": 500000000
}

الوحدة هي "تكات الدولار الأمريكي" (USD ticks). اقسم على 10,000,000 للتحويل إلى دولارات.

cost_in_usd = result["usage"]["cost_in_usd_ticks"] / 10_000_000
print(f"Cost: ${cost_in_usd:.4f}")
# Output: Cost: $0.0500

مرجع التسعير

الدقة السعر لكل ثانية مقطع مدته 10 ثوانٍ
480p 0.05 دولار 0.50 دولار
720p 0.07 دولار 0.70 دولار

قيمة 500000000 تكافئ 0.50 دولار. هذا مقطع مدته 10 ثوانٍ بدقة 480p.

تتبع تكاليفك عن طريق تسجيل cost_in_usd_ticks من كل رد مكتمل. يتيح لك ذلك إنشاء لوحات معلومات الاستخدام دون استدعاء واجهة برمجة تطبيقات فواتير xAI بشكل منفصل.

كيف تختبر واجهة برمجة تطبيقات Grok Video باستخدام Apidog

يخلق نمط الاستطلاع غير المتزامن تحديًا اختباريًا محددًا. يحتاج رمز واجهتك الأمامية للتعامل مع ثلاث حالات: التحميل (أثناء الاستطلاع)، النجاح (استلام عنوان URL للفيديو)، والخطأ. لا يمكنك اختبار هذه الحالات الثلاث عن طريق إجراء استدعاءات API حقيقية، لأن كل استدعاء يستغرق وقتًا ويكلف مالًا. هذا هو المكان الذي تحل فيه ميزة Smart Mock في Apidog المشكلة مباشرة.

لقطة شاشة لـ Apidog تعرض ميزة Smart Mock

حالة الاستخدام 1: Smart Mock لتطوير الواجهة الأمامية

باستخدام Smart Mock من Apidog، يمكنك تعريف المخطط لكلتا نقطتي النهاية ويعيد Apidog ردودًا وهمية واقعية فورًا.

محاكاة نقطة نهاية التوليد:

في Apidog، أنشئ نقطة النهاية POST /v1/videos/generations في مشروعك. حدد مخطط الاستجابة بحقل سلسلة request_id واحد. سيعيد Smart Mock معرف UUID وهميًا تلقائيًا بناءً على نمط اسم الحقل.

استجابتك المحاكية:

{
  "request_id": "d97415a1-5796-b7ec-379f-4e6819e08fdf"
}

محاكاة نقطة نهاية الاستطلاع:

أنشئ GET /v1/videos/{request_id} في Apidog. حدد مخطط الاستجابة الكامل بما في ذلك status، video.url، video.duration، progress، و usage.cost_in_usd_ticks. قم بتعيين استجابة Mock مخصصة تعيد "status": "done" مع عنوان URL MP4 وهمي.

استجابتك المحاكية للاستطلاع:

{
  "status": "done",
  "video": {
    "url": "https://vidgen.x.ai/mock-video-12345.mp4",
    "duration": 8,
    "respect_moderation": true
  },
  "progress": 100,
  "usage": {
    "cost_in_usd_ticks": 400000000
  }
}

يمكن لمطوري الواجهة الأمامية الآن بناء واختبار واجهة المستخدم الكاملة لمشغل الفيديو مقابل هذا الخادم الوهمي. يرون حالة التحميل، وحالة الاكتمال، ويمكنهم تشغيل حالة الخطأ عن طريق تعديل المحاكاة لإرجاع "status": "failed". لا يتم إنفاق أي اعتمادات API حقيقية أثناء التطوير.

حالة الاستخدام 2: سيناريوهات الاختبار لحلقة الاستطلاع

بمجرد بناء تكاملك، استخدم سيناريوهات اختبار Apidog للتحقق من تدفق التوليد ثم الاستطلاع بالكامل تلقائيًا.

الخطوة 1: أضف طلب التوليد. أضف POST /v1/videos/generations كخطوة أولى في سيناريو اختبارك. في المعالج اللاحق (post-processor)، أضف "استخراج متغير" (Extract Variable) لالتقاط request_id من نص الاستجابة باستخدام تعبير JSONPath $.request_id. قم بتخزينه في متغير باسم videoRequestId.

الخطوة 2: أضف حلقة استطلاع. أضف GET /v1/videos/{{videoRequestId}} كخطوة ثانية. قم بتغليفها في حلقة "For" بشرط توقف: response.body.status == "done". أضف معالج "انتظار" (Wait) لمدة 5 ثوانٍ بين التكرارات لتجنب إجهاد حد المعدل.

الخطوة 3: تأكيد النتيجة. بعد خروج الحلقة، أضف معالج "تأكيد" (Assertion) إلى طلب GET النهائي. تأكد من أن $.video.url ليس فارغًا. هذا يؤكد اكتمال الدورة الكاملة بنجاح.

يوفر لك سيناريو الاختبار هذا تغطية آلية ومتكررة للتدفق غير المتزامن. قم بتشغيله في CI لاكتشاف أي تراجعات عندما يتغير منطق الاستطلاع الخاص بك.

تحويل النص إلى فيديو مقابل تحويل الصورة إلى فيديو: متى تستخدم كل منهما

يستخدم كلا الوضعين نفس نموذج grok-imagine-video، لكنهما يخدمان أغراضًا مختلفة.

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

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

الفرق الرئيسي: تحويل النص إلى فيديو ينشئ مشهدًا من الصفر. تحويل الصورة إلى فيديو يجعل الصورة الموجودة تتحرك. للحصول على شرح كامل لنهج تحويل الصورة إلى فيديو، انظر دليل واجهة برمجة تطبيقات Grok لتحويل الصورة إلى فيديو.

للفرق التي تبني منتجات تقدم كلا الوضعين، يمكنك اكتشاف نوع الإدخال في وقت التشغيل. إذا قام المستخدم بتحميل صورة، قم بتوجيهه إلى POST /v1/images/generations (تحويل الصورة إلى فيديو). إذا كتب موجهًا فقط، قم بتوجيهه إلى POST /v1/videos/generations.

الأخطاء الشائعة وكيفية إصلاحها

401 غير مصرح به (Unauthorized)مفتاح API الخاص بك مفقود، منتهي الصلاحية، أو تم تنسيقه بشكل غير صحيح. تحقق من أن رأس التخويل (Authorization header) هو بالضبط Bearer YOUR_XAI_API_KEY بدون مسافات إضافية. تأكد من أن المفتاح نشط في وحدة تحكم xAI.

429 عدد كبير جدًا من الطلبات (Too Many Requests)لقد تجاوزت حد المعدل. تسمح واجهة برمجة التطبيقات بـ 60 طلبًا في الدقيقة وطلب واحد في الثانية. أضف تأخيرًا بين الطلبات. إذا كنت تستطلع، فباعد بين استدعاءاتك بفاصل 5 ثوانٍ على الأقل.

الحالة: "failed" في رد الاستطلاعفشل التوليد. هذا يعني عادةً أن الموجه تم رفضه بواسطة اعتدال المحتوى. سيكون حقل respect_moderation في الرد true إذا تم تطبيق الاعتدال. قم بمراجعة موجهك ليكون أقل غموضًا أو قم بإزالة اللغة التي يحتمل أن تكون حساسة.

عنوان URL للفيديو يعيد 404تنتهي صلاحية عناوين URL للفيديو المولّدة بعد فترة من الوقت. قم بتنزيل الفيديو إلى مساحتك التخزينية الخاصة فور استرداد عنوان URL. لا تقم بتخزين عنوان URL والاعتماد على توفره بعد أيام.

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

أوقات استطلاع بطيئةتستغرق مقاطع الفيديو بدقة 720p وقتًا أطول للتوليد من مقاطع 480p. كما تستغرق المدد الأطول وقتًا أطول. للتطوير والنماذج الأولية، استخدم "resolution": "480p" ومدد قصيرة لتسريع دورة التكرار.

الخاتمة

توفر لك واجهة برمجة تطبيقات Grok لتحويل النص إلى فيديو مسارًا مباشرًا من النص إلى الفيديو. ترسل موجهًا، تحصل على request_id، تستطلع حتى يكتمل، وتسترد ملف MP4 الخاص بك. نمط عدم التزامن هو المفهوم الأساسي الذي يجب فهمه. بمجرد أن تعمل حلقة الاستطلاع، تكون بقية المعلمات (المدة، الدقة، نسبة العرض إلى الارتفاع، الصور المرجعية) سهلة الضبط.

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

قم بتنزيل Apidog مجانًا لإعداد خادمك الوهمي وسيناريوهات الاختبار لواجهة برمجة تطبيقات Grok Video.

button

الأسئلة الشائعة

ما اسم النموذج الذي أستخدمه لتوليد الفيديو من النص؟استخدم grok-imagine-video. هذا هو حقل model المطلوب في طلب POST الخاص بك إلى /v1/videos/generations.

كم يستغرق توليد الفيديو؟يختلف ذلك بناءً على المدة والدقة. قد تكتمل المقاطع القصيرة بدقة 480p في أقل من 30 ثانية. قد تستغرق المقاطع الأطول بدقة 720p بضع دقائق. استطلع كل 5-10 ثوانٍ بدلاً من إجهاد نقطة النهاية باستمرار.

هل يمكنني توليد فيديو أطول من 15 ثانية؟ليس في طلب واحد. الحد الأقصى للمدة (duration) هو 15 ثانية. لإنشاء مقاطع فيديو أطول، قم بتوليد مقطع ثم استخدم POST /v1/videos/extensions لإضافة المزيد من اللقطات.

كيف أقوم بتنزيل الفيديو المولّد؟استخدم عنوان URL من result.video.url في رد الاستطلاع المكتمل. قم بتنزيل ملف MP4 إلى مساحتك التخزينية على الفور. عنوان URL مؤقت وسينتهي صلاحيته.

ماذا يحدث إذا انتهك موجهي اعتدال المحتوى؟ستكتمل المهمة ولكن ستكون الحالة (status) "failed". يشير حقل respect_moderation في رد الاستطلاع إلى تطبيق الاعتدال. قم بمراجعة موجهك وحاول مرة أخرى.

هل هناك طبقة مجانية لواجهة برمجة تطبيقات الفيديو؟تفرض xAI رسومًا لكل ثانية من الإخراج المولّد. لا توجد طبقة مجانية لتوليد الفيديو تحديدًا. تحقق من console.x.ai للحصول على عروض الائتمان الحالية للحسابات الجديدة.

كيف تختلف reference_images عن البدء بصورة مصدر؟توجه الصور المرجعية النمط البصري لتوليد الفيديو من النص. فهي تؤثر على المظهر دون أن تصبح الموضوع. الصورة المصدر لتحويل الصورة إلى فيديو تصبح الإطار الأول الفعلي للفيديو.

ما هي أفضل طريقة لاختبار حلقة الاستطلاع دون إنفاق اعتمادات؟استخدم Smart Mock من Apidog لمحاكاة كل من نقطة نهاية التوليد والاستطلاع. حدد المخططات، وقم بتعيين استجابات وهمية لحالتي "processing" و "done"، وسيعمل رمز الاستطلاع الخاص بك دون لمس واجهة برمجة التطبيقات الحقيقية.

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات