Seedance 2.5 متاح الآن — لأول مرة على Atlas Cloud

مراجعة DeepSeek Harness: تم الإبلاغ عن إتمام جميع التشغيلات الثلاثة. لكن صفحة واحدة فقط عملت بالفعل.

مراجعة عملية لـ DeepSeek Harness: ثلاثة تشغيلات حقيقية لمهمة واحدة، حجم التثبيت وذاكرة الوصول العشوائي الخاملة التي لم يقم أحد بقياسها، وسطرا YAML اللذان غيرا كل شيء.

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

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

لذا قمت بتثبيته وأعطيته مهمة واحدة، ثلاث مرات: بناء متتبع لمحطة الفضاء الدولية (ISS) مباشر في ملف HTML واحد مستقل. ثلاثة تكوينات مختلفة للمزود، نفس الموجه، نفس النموذج. الثلاثة اكتملوا. الثلاثة طبعوا رسالة "تم" بثقة مع قائمة نقطية بكل ما زعموا أنه تم التحقق منه.

ثم فتحت الصفحات الثلاثة في متصفح. اثنتان منهما كانتا معطلتين.

الاستنتاجات الرئيسية

  • npm install @deepseek-ai/dsh سحب 531 حزمة و 306 ميجابايت على macOS. ليس 1.5 جيجابايت، لكنه ليس صغيرًا أيضًا، وحزمة dsh نفسها تبلغ 172 كيلوبايت من ذلك.
  • خادم الويب dsh بقي خاملاً عند 35 إلى 40 ميجابايت RSS مع جلسة نشطة مفتوحة، بعد أن بلغ ذروته حوالي 212 ميجابايت عند الإقلاع. الرقم 500 ميجابايت الذي يذكره الناس ليس لعملية الخادم.
  • عرض المسار (Trajectory view) هو الشيء الحقيقي في هذا الإصدار. إنه دفق أحداث JSONL للإضافة فقط على القرص، وهو ما سمح لي بتشخيص مشكلة التكوين في دقائق بدلاً من ساعات.
  • سطران من YAML (compat.thinkingFormat و maxTokens حقيقي) غيرا نفس المهمة من تشغيل من 36 خطوة و 422 ثانية إلى تشغيل من 15 خطوة و 152 ثانية. لا يوجد أي من هذين السطرين على موقع الوثائق.
  • كل تشغيل أبلغ عن النجاح. واحد فقط أنتج صفحة بدون أخطاء في وحدة التحكم. اقرأ المخرجات، لا الملخص.
  • إنه إصدار أولي للمطورين، وملف README يذكر ذلك بأحرف كبيرة. نعم، طيار محصور. لا، لوحة تحكم إنتاجية.

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

مقارنة بين خريطة عالمية معطلة وخريطة معروضة بشكل صحيح

مقارنة جنبًا إلى جنب لصفحتين لمتتبع ISS تم بناؤهما بواسطة DeepSeek Harness، اليسار بخريطة عالمية مشوهة وشارة قديمة عالقة، واليمين يعرض بشكل صحيح مع علامة مباشرة

اليسار: التشغيل المضبوط، 152 ثانية، خمسة عشر مسار SVG مشوه وشارة مجمدة على "قديم". اليمين: التشغيل الساذج، 422 ثانية، بدون أخطاء في وحدة التحكم. كلاهما أبلغ عن اكتمال.

لماذا كل مراجعة لـ DeepSeek Harness تقول نفس الأشياء الثلاثة

تم رفع المستودع في 13 أغسطس وبحلول الوقت الذي بدأت فيه الكتابة كان قد وصل إلى 154,302 نجمة و 15,960 شوكة تحت رخصة MIT (GitHub، أغسطس 2026). بهذه السرعة، معظم التغطية هي قراءة لملف README، لأنه لم يكن هناك وقت لأي شيء آخر.

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

لم يقم أحد بتثبيته، وتشغيل مهمة من البداية إلى النهاية، ثم فتح النتيجة.

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

شكويان من مستخدمين حول حجم البناء الكبير واستخدام الذاكرة المرتفع

تعليقان حرفيان من Hacker News حول حجم تثبيت DeepSeek Harness واستخدام الذاكرة الخاملة

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

المستخدم Kuyawa: "47 ميجابايت تم تنزيلها، 1.5 جيجابايت بعد البناء، wtf؟" وفي تحرير: "35 تبعية تشكل 1.4 جيجابايت، ما الغرض منها؟" المستخدم eglintondust، في خيط فرعي حول حمل وحدة المعالجة المركزية: "استخدام الذاكرة بالتأكيد خارج عن السيطرة، لدي جلسة خاملة الآن تستهلك 500 ميجابايت" (Hacker News، أغسطس 2026).

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

كيف قمت بإعداد مراجعة DeepSeek Harness هذه: مهمة واحدة، نقطة نهاية واحدة

الإعداد ممل عمدًا بحيث يكون المتغير هو التكوين، وليس المهمة.

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

النموذج. deepseek-ai/deepseek-v4-flash-0731، نفس النموذج في جميع التشغيلات الثلاثة، لذا لا يوجد شيء في المقارنة هو اختلاف في النموذج.

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

نقطة النهايةبروتوكولGET /modelsشكل الفوترةV4 سياق 1M
واجهة برمجة تطبيقات DeepSeek الرسميةopenai-completionsنعمتقسيم الذروة وخارجها، 01:00 إلى 04:00 و 06:00 إلى 10:00 UTC هي ذروة، خارج الذروة نصف (وثائق DeepSeek API، أغسطس 2026)نعم
Atlas Cloudopenai-completionsنعم، أعاد 200 مع 135 نموذجًا عندما تحققتثابت لكل رمز، بدون رسوم ذروةنعم، $0.14 داخلي / $0.28 خارجي لكل 1M على V4 Flash
Ollama محليopenai-completionsنعممجاني، على الرغم من أن البحث المدمج على الويب لا يزال يحتاج إلى سحابة Ollamaيعتمد على النموذج المحلي

ملاحظة صادقة واحدة على ذلك الصف الأوسط، لأنها عضتني لاحقًا: إنها تعيد {"code":200,"msg":"succeed","data":[...]} بدلاً من غلاف OpenAI القياسي {"object":"list","data":[...]}. مصفوفة data موجودة، لذا فإن العميل المتسامح جيد، لكن لا تفترض أن كل نقطة نهاية "متوافقة مع OpenAI" متطابقة بايت مع المواصفات.

تم قراءة الأسعار من صفحة نموذج V4 Flash في 18 أغسطس 2026. لا توجد شارة خصم على أي نموذج DeepSeek الآن، لذا لا يوجد شيء هنا هو سعر لفترة محدودة.

الخطوة 1: تثبيت DeepSeek Harness وقياس ما يكلفه بالفعل

كل شيء من هنا قابل للتكرار على macOS مع Node 22.19+ أو 24+ (لا يوجد دعم لـ 23.x، والعديد من الأدلة تخطئ في هذا). قمت بتشغيل Node v24.15.0 و @deepseek-ai/[email protected].

ابدأ بالبدء السريع، وهو أمر واحد:

bash
1node -v                        # ^22.19.0 || >=24, ليس 23.x
2npx @deepseek-ai/dsh web       # واجهة الويب على http://127.0.0.1:3080
3

للحصول على رقم يمكنك مقارنته فعليًا مع ادعاء 1.5 جيجابايت، قم بتثبيته في دليل نظيف بدلاً من ذلك وقم بالقياس:

bash
1mkdir dsh-size && cd dsh-size && npm init -y
2npm install @deepseek-ai/dsh
3du -sh node_modules
4du -sh node_modules/* | sort -h | tail -8      # حيث يقع الوزن
5

إليك ما أنتجه ذلك على جهازي:

text
1تمت إضافة 531 حزمة في 2m
2306M    node_modules
3255     إدخالات المستوى الأعلى في node_modules
4172K    node_modules/@deepseek-ai/dsh          <- الحزمة نفسها
5
6 13M    node_modules/@shikijs
7 13M    node_modules/openai
8 14M    node_modules/@google/genai
9 17M    node_modules/@img/sharp-libvips-darwin-arm64
10 24M    node_modules/@mistralai/mistralai
11 26M    node_modules/node-pty
12 27M    node_modules/@deepseek-ai
13 34M    node_modules/@opentelemetry
14

إذًا: 306 ميجابايت، وليس 1.5 جيجابايت. الرقم 1.5 جيجابايت في تعليق Hacker News ذلك هو بناء مصدر كامل، والذي يسحب تبعيات التطوير ومخرجات البناء عبر المستودع بأكمله. تثبيت وقت التشغيل هو خمس ذلك.

ومع ذلك، 306 ميجابايت لعامل برمجة لا يزال كثيرًا، والتحليل يشرح بالضبط لماذا ينزعج الناس. أنت تقوم بتثبيت ثلاث مجموعات تطوير برمجيات تابعة لجهات خارجية قد لا تستدعيها أبدًا (openai، @google/genai، @mistralai/mistralai تصل إلى 51 ميجابايت بينهم)، وشجرة OpenTelemetry كاملة، وثنائي sharp أصلي، ومبرز بناء جملة. "كل شيء هو مكون إضافي" له تكلفة شحن، وتدفعها الآن بالكامل مقدمًا سواء كنت تستخدم تلك المسارات أم لا.

بالنسبة للذاكرة الخاملة، قم بإقلاع ملف الويب، افتح جلسة، اتركها، واقرأ RSS:

bash
1npx @deepseek-ai/dsh web --port 3099
2# ثم، في شل أخرى:
3ps -o pid,rss,command -p $(pgrep -f "dsh web")
4

تم أخذ عينة كل دقيقة لمدة خمس دقائق مع جلسة نشطة مفتوحة وبدون مهمة قيد التشغيل:

text
1t+0s     101.8 MB     (بعد فتح الجلسة مباشرة)
2t+60s     37.0 MB
3t+120s    39.8 MB
4t+180s    38.8 MB
5t+240s    35.8 MB
6t+300s    35.0 MB
7

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

لكن eglintondust ليس بالضرورة مخطئًا، وهذا هو الجزء الذي يستحق الفهم: ملف dsh web هو خادم محلي بالإضافة إلى علامة تبويب متصفح. الـ 35 ميجابايت هو الخادم. واجهة المستخدم هي تطبيق ويب كامل في متصفحك، ويتم تحميل تلك الذاكرة على Chrome، وليس على dsh. إذا كنت تراقب جلسة خاملة بحجم 500 ميجابايت في مراقب النشاط، تحقق من العملية التي تُنسب إليها قبل تقديم تقرير الخطأ. التفاصيل الكاملة للتثبيت موجودة في دليل التثبيت لمدة 10 دقائق.

مقاييس تظهر أن DeepSeek Harness يستخدم 306 ميجابايت قرص و 35-40 ميجابايت ذاكرة

مخرجات طرفية حقيقية تظهر بصمة تثبيت DeepSeek Harness وقياسات الذاكرة الخاملة

القياسات الفعلية، مع الأوامر مرئية. 306 ميجابايت مثبتة، 35 ميجابايت خاملة.

الخطوة 2: توجيه DeepSeek Harness إلى نقطة النهاية الخاصة بك

في واجهة المستخدم هذا هو الإعدادات ثم النماذج ثم إضافة مزود مخصص: معرف المزود، عنوان URL الأساسي، البروتوكول، المفتاح، قائمة النماذج. يمكنك أيضًا كتابته مباشرة في $DSH_HOME/settings.yaml (الافتراضي ~/.dsh/settings.yaml)، وهو ما فعلته، لأن إصدار الملف هو ما يمكنك مقارنته بين التشغيلات.

الأقسام في ذلك الملف مفهرسة بواسطة معرف المكون الإضافي، وهو أمر غير واضح في المرة الأولى. قاموس المزود ينتمي إلى llm-pi-ai، واختيار النموذج الافتراضي ينتمي إلى agent-default-model:

yaml
1llm-pi-ai:
2  providers:
3    atlas:
4      displayName: Atlas Cloud
5      api: openai-completions
6      baseURL: https://api.atlascloud.ai/v1
7      apiKeyEnv: ATLAS_API_KEY
8      models:
9        - id: deepseek-ai/deepseek-v4-flash-0731
10
11agent-default-model:
12  provider: atlas
13  model: deepseek-ai/deepseek-v4-flash-0731
14

هذا هو التكوين الساذج، وهو الذي بدأت به. إنه يعمل. احصل على مفتاح من وحدة تحكم Atlas، export ATLAS_API_KEY=...، ويتم التشغيل. لاحظ أن apiKeyEnv هو مرجع، وليس السر، لذا لا يقع أي مفتاح في هذا الملف أبدًا.

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

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

قائمة الإعدادات تظهر تكوين مفتاح API لـ DeepSeek و Atlas Cloud

صفحة نماذج إعدادات DeepSeek Harness تظهر مزودًا مخصصًا متوافقًا مع OpenAI باسم Atlas Cloud مع نقطة حالة خضراء ومفتاح API الخاص به مقدم للقراءة فقط من بيئة التشغيل

الإعدادات، النماذج، مزود مخصص. النقطة الخضراء تعني أن المسار تم حله؛ مزود DeepSeek المدمج أعلاه أحمر لأنه ليس لديه مفتاح.

الخطوة 3: تشغيلات مراجعة DeepSeek Harness الثلاثة، جنبًا إلى جنب

نفس الموجه في كل مرة. الصق هذا حرفيًا إذا كنت تريد إعادة إنتاجه:

text
1بناء متتبع ISS بصفحة واحدة في index.html مستقل واحد.
2
3المتطلبات:
4- جلب موقع ISS من https://api.wheretheiss.at/v1/satellites/25544 كل 5 ثوانٍ.
5- عرض خريطة عالمية مع علامة عند خط العرض/الطول الحالي، بالإضافة إلى مسار باهت لآخر 60 موقعًا.
6- إظهار الارتفاع (كم)، السرعة (كم/ساعة)، وخط العرض/الطول الحالي في لوحة قابلة للقراءة.
7- لا خطوة بناء، لا npm install، لا مفتاح API. فقط Vanilla JS + CSS مضمّن.
8- التعامل مع فشل الجلب دون كسر الصفحة: الاحتفاظ بآخر موقع معروف وإظهار شارة قديمة.
9- كتابة الملف، ثم الإبلاغ عن الاكتمال.
10

قم بتشغيله بدون رأس (headless) بحيث يكون النص نظيفًا:

bash
1export DSH_HOME=$PWD/dsh-home
2export ATLAS_API_KEY=<مفتاحك>
3dsh --profile headless "<الموجه أعلاه>"
4

ثلاثة تكوينات:

  • التشغيل أ، المضبوط: compat.thinkingFormat: deepseek، contextWindow: 1048576، maxTokens: 131072.
  • التشغيل ب، الساذج من الخطوة 2: إدخال النموذج ليس سوى id.
  • التشغيل ج، الخطأ المعقول: نفس أ ولكن مع maxTokens: 4096، رقم قمت برفعه مباشرة من مثال README الخاص بالمهايئ نفسه.

الثلاثة خرجوا برمز 0. الثلاثة كتبوا index.html. الثلاثة طبعوا ملخصًا يدعي التحقق. ملخص التشغيل ج حتى تفاخر بالإصلاح الذاتي: "بضع أخطاء اشتعلتها وأصلحتها أثناء البناء: متغير غير معروف في تلاشي المسار، منطق لاحقة N/S/E/W غير صحيح..."

ثم فتحت الملفات الثلاثة في متصفح حقيقي مع وحدة التحكم مفتوحة، وتركتهم يستقصون لدورتين.

التشغيل أ (مضبوط)التشغيل ب (ساذج)التشغيل ج (maxTokens: 4096)
الوقت الفعلي152.7 ث422.5 ث50.2 ث
الخطوات15368
استدعاءات الأدوات14357
مزيج الأدوات6 تحرير، 4 قراءة، 2 bash19 bash، 8 قراءة، 3 grep4 تحرير، 1 كتابة، 1 bash
حجم الملف المكتوب19,569 بايت10,812 بايت11,326 بايت
أخطاء وحدة التحكم عند التحميل15012
ما كان مكسورًاكل مسار قارة مشوه، لا علامة ISS، شارة "قديم" عالقة إلى الأبدلا شيءدوائر المسار كلها cx="NaN"، العلامة متوقفة عند 0,0، خط العرض مطبوع كـ -34.76° S

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

فشل التشغيل أ هو الأكثر إفادة. لوحة القياس عن بعد كانت مثالية: ارتفاع 431 كم، سرعة 27,547 كم/ساعة، خط عرض/طول صحيح، يتم تحديثها مباشر. الخريطة تحتها كانت كتلة خضراء، لأن جميع مسارات القارات الخمسة عشر انتهت بحرف L عشوائي بدون إحداثيات ("... L48.0 624.0 L Z"). والشارة تقول "قديم، الاحتفاظ بآخر موقع" مع "آخر تحديث: -" بينما ثلاث عمليات جلب ناجحة كانت موجودة في علامة تبويب الشبكة. لقد حصل على الجزء الصعب بشكل صحيح والجزء المرئي بشكل خاطئ.

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

التشغيل ج هو أكثر تسلية وأسوأ. لقد ادعى أنه أصلح خطأ تلاشي المسار ومنطق لاحقة N/S. المسار هو بالضبط ما هو معطل (اثنتي عشرة دائرة NaN، لا يظهر أي مسار على الإطلاق)، وملصق خط العرض يقرأ -34.76° S، وهو مزدوج الإشارة. لم يصلح أيًا من الأمرين اللذين قال إنه أصلحهما، وتحقق من عمله باستخدام node --check، الذي يحلل بناء جملة JavaScript ولا يعرف شيئًا عن ما إذا كان مسار SVG قانونيًا.

لوحة تحكم متتبع محطة الفضاء الدولية مع خريطة عالمية وإحداثيات فورية

صفحة متتبع ISS للتشغيل الثالث مع مسار ذو موقع NaN، وعلامة عالقة في الزاوية اليسرى العليا، وملصق خط عرض مزدوج الإشارة

التشغيل ج، تشغيل 50 ثانية: جميل، مباشر، ومعطل بهدوء في المكانين اللذين ادعى أنه أصلحهما.

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

الخطوة 4: الإصلاح المكون من سطرين، وعرض مسار DeepSeek Harness الذي وجده

استغراق التشغيل ب 2.8 مرة أطول من التشغيل أ لم يكن منطقيًا بالنسبة لي. نفس النموذج، نفس المهمة، والفرق الوحيد كان بضعة أسطر من YAML. لذا ذهبت إلى المسار (Trajectory).

الوصف الرسمي دقيق، وهو أمر نادر أكثر مما ينبغي: "كل شيء يراه النموذج يتم تسجيله في سجل جلسة للإضافة فقط: المطالبات النظامية، التفكير، استدعاءات الأدوات ونتائجها، جدولة العوامل الفرعية، وكل حقن سياق... في عرض المسار، يمكنك فحص هذه الأحداث حسب المصدر. الاستئناف، التفرع، البحث، وإعادة التشغيل كلها تعمل على نفس تدفق الأحداث" (DeepSeek Harness، أغسطس 2026).

إنه ليس تسويقًا. التدفق هو ملف حقيقي:

bash
1ls $DSH_HOME/sessions/<workspace>/session-<uuid>/session.jsonl.zstd
2

حدث JSON واحد لكل سطر، مؤطر بـ zstd، للإضافة فقط. أنتج التشغيل أ 606 حدثًا؛ أنتج التشغيل ب 1,709. قم بالتصفية حسب المصدر في واجهة المستخدم، أو فقط grep الملف المفكوك. أنواع الأحداث هي بالضبط ما يعد به الجملة أعلاه: turn/start، step/start، request/header، request/context، assistant/chunk، reasoning-chunks، tool-call-chunks، tool/call، tool/result، step/end، turn/end.

حدث request/header هو ما حل المشكلة. إنه يسجل التكوين الذي تم وضعه فعليًا على السلك:

jsonc
1// التشغيل أ
2{"config":{"provider":"atlas","model":"deepseek-ai/deepseek-v4-flash-0731","maxTokens":131072},
3 "adapterDefaults":{"maxTokens":true}}
4
5// التشغيل ب
6{"config":{"provider":"atlas","model":"deepseek-ai/deepseek-v4-flash-0731"}}
7

التشغيل ب لم يرسل أي حد للإخراج على الإطلاق، وتضخم تفكيره إلى 72,420 حرفًا عبر 33 كتلة مقابل 6,094 عبر 9 للتشغيل أ. هذا هو المكان الذي ذهبت إليه الـ 270 ثانية الإضافية والـ 44,170 رمز إخراج إضافي.

السبب موثق، ولكن ليس على موقع الوثائق. إنه مدفون في packages/llm/llm-pi-ai/README.md: لهجة التفكير يتم تخمينها من عنوان URL لنقطة النهاية. بكلمات القائمين على الصيانة: compat.thinkingFormat هو شيء "pi-ai يخمن من عنوان URL لنقطة النهاية؛ عنوان URL لبوابة خاصة لا يقول شيئًا، لذلك سيتم التحدث إلى بوابة لهجة DeepSeek بلهجة OpenAI دون أي طريقة لتصحيحها."

نقطة النهاية الخاصة بي تعيد reasoning_content، التهجئة DeepSeek. اسم المضيف الخاص بها لا يقول شيئًا عن ذلك. لذلك في التشغيل ب، تراجع المهايئ إلى لهجة OpenAI، ولم يتمكن من إرسال مستوى تفكير، وفكر النموذج بافتراضيته الخاصة في كل واحدة من 36 استدعاء. بشكل منفصل، إدخال نموذج يعلن فقط id يرث القيم الاحتياطية للمسار defaultContextWindow: 262144 و defaultMaxTokens: 32768، لذلك يفقد النموذج ذو السعة 1,048,576 رمزًا بهدوء ثلاثة أرباع نافذته.

كلاهما سطران:

yaml
1llm-pi-ai:
2  providers:
3    atlas:
4      api: openai-completions             # compat.* موجودة فقط تحت هذا البروتوكول
5      baseURL: https://api.atlascloud.ai/v1
6      apiKeyEnv: ATLAS_API_KEY
7      compat:
8        thinkingFormat: deepseek          # التوقف عن التخمين من عنوان URL
9        supportsReasoningEffort: true
10      models:
11        - id: deepseek-ai/deepseek-v4-flash-0731
12          contextWindow: 1048576          # تجاوز القيمة الاحتياطية 262,144
13          maxTokens: 131072               # ترك مساحة حقيقية للتفكير
14

شيئان يجب تذكرهما. ترتيب الحل هو النموذج، ثم المسار، ثم إدخال الكتالوج المثبت، ثم تخمين URL الخاص بـ pi-ai، لذا فإن القيمة على مستوى النموذج تفوز. و compat.* موجودة فقط تحت api: openai-completions؛ ضعها في أي مكان آخر ويفشل الحل تمامًا. المهايئ أيضًا لا يدعم عمدًا Bedrock، Vertex، Azure، أو Codex، لأن مصادقتها تحتاج أكثر من مفتاح، ونقطة نهاية، ورؤوس.

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

لوحة تحكم تظهر أعداد أحداث سجل الجلسة، رؤوس الطلبات، ونص التفكير

تدفق أحداث الجلسة للإضافة فقط من تشغيل حقيقي لـ DeepSeek Harness، مع أعداد الأحداث ورأس الطلب الذي كشف مشكلة التكوين

تدفق أحداث المسار من التشغيل أ: 606 أحداث، والحدث الذي كشف عن حد الإخراج المفقود.

ما كلفته مراجعة DeepSeek Harness هذه، وهل هي جاهزة للإنتاج

ثلاث تشغيلات كاملة للعامل لمهمة غير تافهة، مباشرة من المسارات، بالسعر الثابت $0.14 داخلي / $0.28 خارجي لكل 1M:

التشغيل أالتشغيل بالتشغيل جالمجموع
استدعاءات LLM1536859
رموز الإدخال غير المخبأة38,452109,40820,781168,641
رموز الإخراج12,74056,9106,96976,619
رموز قراءة المخبأ280,8322,150,144108,8002,539,776
حصة المخبأ من المطالبة88.0%95.2%84.0%93.8%
الإدخال غير المخبأ + الإخراج$0.0090$0.0313$0.0049$0.0452
إذا تمت فوترة كل رمز مخبأ بمعدل الإدخال الكامل$0.0483$0.3323$0.0201$0.4007

شيئان يستحقان الاستخراج من ذلك. أولاً، أرقام المخبأ حقيقية ونقطة النهاية تبلغ عنها: 93.8% من جميع رموز المطالبة عبر التشغيلات الثلاثة عادت كقراءات مخبأ، وهو ما يجعل حلقة العامل ميسورة التكلفة على الإطلاق. ثانيًا، التشغيل غير المهيأ كلف 3.5 ضعف التشغيل المضبوط لمهمة ذات حجم مماثل. هذا هو السعر الفعلي لسطرين YAML.

لاحظ شكل الاستدعاء الأول في كل تشغيل: حوالي 11,000 رمز إدخال قبل أن يفعل العامل أي شيء. هذا هو المطالبة النظامية، وصيغ الأدوات، وكتالوج المهارات الذي يتضمنه "كل شيء هو مكون إضافي"، وتدفعه في كل جلسة جديدة. هذا هو السبب في أن معدل إصابة المخبأ يهم أكثر في هذا الحزام منه في حزام أرق، ولماذا يستحق تشغيل الوضع الأدنى (bash بالإضافة إلى محرر ملفات فقط) المحاولة إذا كانت مهمتك لا تحتاج إلى مجموعة الأدوات الكاملة.

إذًا هل يمكنك وضعه في الإنتاج؟ لا، والمشروع يتفق معك. كلمات README الخاصة به: "DeepSeek Harness حاليًا في مرحلة المعاينة للمطورين ويتكرر بسرعة. سيكون هناك تغييرات مكسرة للتوافق." تفتح واجهة الويب مع نافذة منبثقة تقول "DeepSeek Harness 0.1 لا يزال قيد الاختبار لمطوري Harness." رخصة MIT تعني أنه يمكنك فعل ما يحلو لك به؛ لا يعني ذلك أن واجهة برمجة التطبيقات التي تبني عليها ستكون موجودة الشهر القادم.

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

باقي قائمة المخاطر قصيرة وحقيقية. هناك معرف UUID عن بعد مجهول. المكونات الإضافية وخوادم MCP يتم تنفيذها خارج صندوق حماية bash، لذا فإن المكون الإضافي هو كود تختار الوثوق به. وكما وجدت هذه المراجعة بالطريقة الصعبة، فإن الإعدادات التي تتحكم في التكلفة والصحة موثقة في README حزمة بدلاً من الدليل، مما يعني أن فاتورتك الأولى يمكن أن تكون عدة أضعاف ما ينبغي لأسباب لن يخبرك بها أي رسالة خطأ.

مراجعة DeepSeek Harness: الأسئلة الشائعة

هل DeepSeek Harness جاهز للإنتاج؟

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

ما مقدار المساحة التخزينية والذاكرة التي يستخدمها DeepSeek Harness فعليًا؟

على macOS، npm install @deepseek-ai/dsh سحب 531 حزمة و 306 ميجابايت، منها حزمة dsh نفسها 172 كيلوبايت. الرقم المذكور على نطاق واسع 1.5 جيجابايت هو بناء مصدر كامل، وليس تثبيت وقت التشغيل. عملية خادم الويب بقيت خاملة عند 35 إلى 40 ميجابايت RSS مع جلسة نشطة مفتوحة، بعد أن بلغت ذروتها قرب 212 ميجابايت أثناء الإقلاع. ذاكرة واجهة المستخدم نفسها يتم تحميلها على متصفحك، وليس على dsh.

لماذا تشغيل DeepSeek Harness الخاص بي أبطأ بكثير وأكثر تكلفة من المتوقع؟

على الأرجح أن إدخال النموذج الخاص بك لا يعلن سوى id. هذا يرث القيم الاحتياطية للمسار defaultContextWindow: 262144 و defaultMaxTokens: 32768، ويسمح للمهايئ بتخمين لهجة التفكير من اسم مضيف نقطة النهاية الخاصة بك. في اختباري، أنتج هذا المزيج 36 خطوة بدلاً من 15 و 3.5 أضعاف تكلفة الرمز لنفس المهمة. قم بتعيين compat.thinkingFormat، و contextWindow حقيقي، و maxTokens حقيقي.

هل يعمل DeepSeek Harness مع نقاط نهاية غير DeepSeek؟

نعم، أي عنوان URL أساسي متوافق مع OpenAI يعمل، وهذه هي الطريقة التي سيشغلها معظم الناس. المشكلة هي أن لهجة التفكير يتم استنتاجها من عنوان URL، لذا يتم التحدث إلى بوابة لهجة DeepSeek على اسم مضيف محايد بلهجة OpenAI. compat.thinkingFormat: deepseek هو الإصلاح، وهو موجود فقط تحت api: openai-completions. Bedrock، Vertex، Azure، و Codex غير مدعومة عمدًا.

هل عرض المسار (Trajectory view) مفيد بالفعل، أم أنه تسويق؟

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

DeepSeek Harness مقابل Claude Code أو OpenCode، أيهما يجب أن أستخدم يوميًا؟

إذا كنت تريد شيئًا لكتابة كود بشكل موثوق اليوم، ليس هذا، وليس بعد. اختر Harness عندما يكون وقت تشغيل العامل نفسه هو ما تريد تغييره، لأن تبديل الحلقة، أو الأدوات، أو واجهة المستخدم هو تكوين هنا بدلاً من شوكة. لمقارنة قائمة على الأرقام حول استخدام الرموز، راجع DeepSeek Harness vs OpenCode، ومن أجل طبقة التوسيع، أي المكونات الإضافية تستحق التثبيت.


تم إجراء التشغيلات في 18 أغسطس 2026 على macOS، Node v24.15.0، @deepseek-ai/[email protected]، النموذج deepseek-ai/deepseek-v4-flash-0731 الذي تم تقديمه عبر نقطة نهاية متوافقة مع OpenAI على Atlas Cloud. كل عدد رمز، ووقت حائط، وخطأ وحدة تحكم في هذه المقالة جاء من سجلات الجلسة ووحدات تحكم المتصفح لهذه التشغيلات.

أحدث النماذج

واجهة برمجية واحدة لكل وسائط الذكاء الاصطناعي.

استكشف جميع النماذج