DeepSeek-V4.1-Flash Vision API: كيفية إرسال الصور إلى نموذج ديب سيك متعدد الوسائط الأصلي

إرسال الصور إلى DeepSeek-V4.1-Flash عبر معرف deepseek-flash: بتنسيقات base64، وURL، ومعرّف الملف، وحقل التفاصيل، وتسعير الصور، وحلقة اختبار Apidog.

Ashley Innocent

Ashley Innocent

10 سبتمبر 2026

DeepSeek-V4.1-Flash Vision API: كيفية إرسال الصور إلى نموذج ديب سيك متعدد الوسائط الأصلي

Apidog للمؤسسات

النشر على الخوادم المحلية

SSO و RBAC

متوافق مع SOC 2

استكشف Apidog للمؤسسات

توقف دعم الرؤية في DeepSeek عن كونه مشروعًا جانبيًا في 10 سبتمبر 2026. مع الإصدار العام لـ DeepSeek-V4.1-Flash، أصبح إدخال الصور موجودًا في النموذج الرئيسي تحت معرّف واحد، وهو `deepseek-flash`. لا يوجد بناء منفصل للرؤية ولا لاحقة "Exp" (اختصار لـ Experimental). تشير مذكرة الإصدار إلى إحالة كل من `deepseek-v4-flash` و `deepseek-v4-flash-vision-exp` للتقاعد؛ الطلبات التي تستخدم أيًا من الاسمين الآن يتم توجيهها إلى V4.1-Flash. هذا يهم إذا كنت قد بنيت على نقطة النهاية التجريبية قبل ثلاثة أسابيع. لا يزال تنسيق الطلب الذي كتبته مقابل V4-Flash-Vision-Exp يعمل، ولكن النموذج الذي يقرأ صورك جديد: 763 مليار معلمة، مع مشفّر رؤية تم تدريبه من الصفر جنبًا إلى جنب مع العمود الفقري للنص. يغطي هذا الدليل ما يعنيه "تعدد الوسائط الأصلي" عمليًا، الطرق الثلاث لتسليم الصورة، معلمة `detail`، تكلفة الصور، وكيفية بناء اختبار رؤية قابل للتكرار في Apidog يثبت أن الاسم القديم والجديد يتصرفان بنفس الطريقة.

ملخص سريع

ماذا تعني "متعدد الوسائط الأصلي" هنا

كان Vision-Exp يرفق مشفّر صور بنموذج نصي مكتمل. أما V4.1-Flash فيفعل العكس. وفقًا لـ بطاقة النموذج، كانت الصور جزءًا من مجموعة بيانات التدريب المسبق البالغة 45 تريليون رمز منذ البداية، والمشفّر هو DeepSeek-ViT جديد تم تدريبه من الصفر بدلاً من استعارته من نموذج رؤية موجود. العمود الفقري هو مزيج من الخبراء بسعة 552 مليار معلمة؛ ومع إرفاق المشفّر، يصل الإجمالي إلى 763 مليار. فقط 8 مليارات معلمة تكون نشطة أثناء التعبئة الأولية و16 مليار أثناء فك التشفير، وهذا هو السبب في أن نموذجًا بهذا الحجم لا يزال يعمل بسرعة Flash وأسعار Flash. V4-Flash، النموذج النصي فقط في دليل API الخاص بـ V4-Flash، كان الأساس الذي توسع إليه Vision-Exp.

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

المعيار ما يقيسه V4.1-Flash
MMMU-Pro أسئلة على مستوى الكلية تحتاج إلى الصورة والنص للإجابة عليها 56.5
CVBench العد، ترتيب العمق، والعلاقات المكانية في الصور الطبيعية 77.9
DocVQA الإجابة على الأسئلة حول المستندات والنماذج الممسوحة ضوئيًا 95.6
RefCOCO تحديد الكائن الذي تشير إليه عبارة ما داخل الصورة 86.0

بالنسبة لمستخدمي API، DocVQA و RefCOCO هما الصفان اللذان يجب مراقبتهما. استخراج المستندات هو الدرجة وراء استخراج الفواتير والنماذج. RefCOCO هو تحديد الموقع: إذا أعطيت "زر الإرسال أسفل حقل البريد الإلكتروني"، هل يمكن للنموذج العثور عليه؟ هذه المهارة تحول لقطات الشاشة إلى إجراءات عامل. نظرة عامة على البنية تغطي الجانب النصي والتقرير التقني بتعمق أكبر.

تنسيق الطلب: ثلاث طرق لتسليم صورة

لم يتغير شيء بخصوص تنسيق الأسلاك. اتصل بنقطة نهاية Chat Completions على https://api.deepseek.com باستخدام OpenAI SDK، ضع أجزاء النص والصورة في نفس مصفوفة content، واضبط النموذج على deepseek-flash. إليك مكالمة كاملة تحول فاتورة إلى JSON:

import base64, json
from openai import OpenAI

client = OpenAI(api_key="YOUR_DEEPSEEK_KEY", base_url="https://api.deepseek.com")

with open("invoice-2026-0912.png", "rb") as f:
    image_b64 = base64.b64encode(f.read()).decode()

schema_hint = (
    "Return only JSON with keys: invoice_number (string), issue_date (YYYY-MM-DD), "
    "vendor (string), currency (string), line_items (array of {description, quantity, "
    "unit_price, amount}), subtotal, tax, total (numbers)."
)

response = client.chat.completions.create(
    model="deepseek-flash",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": schema_hint},
            {
                "type": "image_url",
                "image_url": {
                    "url": f"data:image/png;base64,{image_b64}",
                    "detail": "high",
                },
            },
        ],
    }],
    temperature=1.0,
    max_tokens=2048,
)

invoice = json.loads(response.choices[0].message.content)
print(invoice["invoice_number"], invoice["total"])
print(response.usage.prompt_tokens, "prompt tokens")

هذا هو الخيار الأول، base64 مضمن: مكتفٍ ذاتيًا، بحد أقصى 32 ميغابايت لكل صورة، ومناسب للمكالمات لمرة واحدة أو الملفات التي لا تغادر شبكتك أبدًا.

الخيار الثاني هو عنوان URL خارجي. إذا كانت الصورة تحتوي بالفعل على رابط عام على شبكة CDN أو في تخزين الكائنات، فتخطى التشفير ومرر الرابط (حتى 8,192 حرفًا). يقرأ طلب curl هذا مخطط تسعير مستضاف:

curl https://api.deepseek.com/chat/completions \
  -H "Authorization: Bearer $DEEPSEEK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-flash",
    "messages": [{
      "role": "user",
      "content": [
        {"type": "text", "text": "List every plan name and its monthly price from this chart as a JSON array."},
        {"type": "image_url", "image_url": {"url": "https://assets.example-saas.com/pricing/plans-q3.png", "detail": "auto"}}
      ]
    }]
  }'

الخيار الثالث هو معرّف ملف. قم بتحميل الصورة مرة واحدة عبر DeepSeek's Files API، ثم قم بالإشارة إليها بجزء file بدلاً من إعادة إرسال البايتات:

{"type": "file", "file": {"file_id": "file-api-xxxxxxxxxxxxxxxx"}}

اختر معرفات الملفات كلما ظهرت نفس الصورة في أكثر من طلب واحد، مثل لقطة شاشة مرجعية تقارن بها كل اختبار في مجموعة الاختبارات. الشرح الكامل للمعلمات موجود في دليل API الخاص بـ V4.1-Flash.

معلمة detail وحدود الطلب

معلمة detail اختيارية وتوجد داخل الكائن image_url. القيم الثلاث التي تم نقلها من Vision-Exp هي:

الحدود القصوى التي ستصادفها أولاً:

التقييد القيمة
صورة Base64 مضمنة حتى 32 ميجابايت
طول عنوان URL الخارجي حتى 8,192 حرفًا
مرجع معرف الملف مدعوم من خلال Files API
نافذة السياق مليون رمز
الحد الأقصى للمخرجات 384 ألف رمز
قيم detail low, high/original, auto

دليل Vision-Exp أدرج سقوفًا إضافية على عدد الصور وحجم الجسم وأبعاد البكسل. تم نشر تلك لتناسب النموذج التجريبي؛ تحقق من سجل التغييرات في API قبل الاعتماد عليها لـ V4.1-Flash. لم تتغير إحدى القواعد: الصور تنتمي إلى رسائل المستخدم. ضع واحدة في رسالة نظام أو مساعد وستحصل على خطأ 400.

ما تكلفة الصور على deepseek-flash

لا يوجد سعر منفصل للرؤية. تتم محاسبة الصور كرموز إدخال بسعر Flash من صفحة التسعير، اعتبارًا من 10 سبتمبر 2026 الساعة 04:00 بالتوقيت العالمي المنسق:

deepseek-flash، لكل مليون رمز خارج أوقات الذروة الذروة
الإدخال، نجاح التخزين المؤقت 0.003 دولار 0.006 دولار
الإدخال، فشل التخزين المؤقت 0.15 دولار 0.30 دولار
المخرجات 0.60 دولار 1.20 دولار

ساعات الذروة هي من الاثنين إلى الجمعة، من 01:00 إلى 04:00 ومن 06:00 إلى 10:00 بالتوقيت العالمي المنسق (UTC)؛ تكون خارج أوقات الذروة بنصف السعر. في Vision-Exp، كانت كل صورة تُحاسب بما لا يزيد عن 384 رمز إدخال. [يجب التحقق] مما إذا كان هذا الحد الأقصى ينتقل دون تغيير إلى V4.1-Flash مقابل الوثائق. يبلغ usage.prompt_tokens في كل استجابة عن العدد الحقيقي، وهذا هو السبب في أن مثال بايثون يطبعه.

إذا بقي حد 384 رمزًا ساريًا، فإن الصورة الواحدة تكلف حوالي 0.000115 دولار في ذروة معدلات عدم وجود تخزين مؤقت ونصف ذلك خارج أوقات الذروة، لذا فإن ألف فاتورة تكلف حوالي 0.12 دولار من مدخلات الصورة. تهيمن المخرجات على أي عملية حقيقية: 400 رمز JSON لكل فاتورة يكلف حوالي أربعة أضعاف تكلفة الصورة نفسها في أوقات الذروة. الرافعة هي مخطط استجابة محكم، وليس تقليص حجم الصورة. يتم حساب أوقات الذروة، وخارج أوقات الذروة، ونجاح التخزين المؤقت في شرح تسعير DeepSeek-V4.1-Flash؛ النسخة المختصرة هي أن مدخلات الفشل في التخزين المؤقت أرخص بنسبة 32% مما كانت عليه أسعار Vision-Exp في أغسطس.

ثلاث حالات استخدام تستحق التجربة الأولية

استخراج المستندات. فواتير، إيصالات، مذكرات تسليم، نماذج تأمين. اطلب مخطط JSON ثابت، أرسل بصيغة detail: "high"، وتحقق من أن عناصر الفاتورة تتوافق مع الإجمالي الفرعي قبل أن تثق بسجل.

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

قراءة الرسوم البيانية. استخرج أسماء السلاسل، وتسميات المحاور، والقيم المرسومة من صورة رسم بياني إلى جدول. تتطلب الخطوط المتداخلة أو المحاور غير المسماة فحصًا بشريًا.

اختبار نقطة نهاية الرؤية في Apidog

تعتبر طلبات الرؤية صعبة التكرار يدويًا: تجعل كتلة base64 نص JSON غير قابل للقراءة، ومقارنة إعدادات `detail` تعني التوفيق بين حمولات متطابقة تقريبًا. إليك حلقة تبقى قابلة للقراءة وتُعاد تشغيلها بنقرة واحدة.

  1. إعداد بيئة. أنشئ متغيرات لـ base_url، api_key، model (deepseek-flash)، و detail (high). تغيير مستوى التفاصيل لاحقًا يكون بتغيير من قائمة منسدلة، وليس تعديلًا في الحمولة.
  2. تشفير الصورة في نص برمجي قبل الطلب. بدلاً من لصق base64 في الجسم، اسمح لبرنامج نصي قبل الطلب بتشفير ملف العينة وكتابة النتيجة إلى متغير image_b64. يبقى الجسم المرئي بضعة أسطر، ويستلزم تبديل صورة الاختبار تغيير مسار واحد.
  3. حفظ نص الطلب مع المتغيرات. استخدم "model": "{{model}}"، و "detail": "{{detail}}"، و "url": "data:image/png;base64,{{image_b64}}". احفظها كحالة اختبار لتكون قابلة لإعادة الاستخدام.
  4. التأكيد على شكل JSON. تأكد من أن الاستجابة يتم تحليلها كـ JSON، وأن invoice_number عبارة عن سلسلة غير فارغة، وأن line_items عبارة عن مصفوفة غير فارغة، وأن total عبارة عن رقم، وأن usage.prompt_tokens يقع تحت عتبة تختارها. هذا يحول "يبدو جيدًا" إلى نجاح/فشل.
  5. تأكيد توجيه الاسم القديم إلى نفس النموذج. كرر الطلب المحفوظ، اضبط model على deepseek-v4-flash-vision-exp، وقم بتشغيل كليهما في سيناريو اختبار واحد مقابل نفس الصورة. قارن الحقول المستخرجة وعدد usage.prompt_tokens. تؤكد النتائج المتطابقة ما ذكرته مذكرة الإصدار: كلا الاسمين يوجهان إلى V4.1-Flash، لذا يمكنك إعادة التسمية في إعداداتك بثقة.
  6. تشغيله في CI. قم بتشغيل السيناريو باستخدام apidog-cli عند كل تغيير في الموجه، بحيث تظهر مشكلات تراجع المخطط قبل الإنتاج.

قم بتنزيل Apidog وسيستغرق إعداد النظام حوالي خمس عشرة دقيقة. يختبر Apidog طبقة API، وليس مضيف النموذج، لذا يعمل السيناريو نفسه مع أي نقطة نهاية متوافقة مع OpenAI تقوم بتوجيهها لاحقًا.

أين يضعك هذا

أثبتت نقطة النهاية التجريبية تنسيق الطلب ونقطة السعر. يحتفظ V4.1-Flash بكلاهما ويستبدلهما بنموذج رأى الصور من أول رمز تدريبي له. وجه عميلك إلى `deepseek-flash`، احتفظ بـ `detail` في متغير، تأكد من صحة JSON الذي تحصل عليه، وشغّل الاسم القديم عبر نفس سيناريو Apidog مرة واحدة لتأكيد إعادة التوجيه. بعد ذلك، السؤال الوحيد المتبقي هو الدقة على مستنداتك الخاصة، ولديك الآن اختبار يجيب على ذلك.

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

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