يطلب الناس من روبوتات الدردشة ترجمة جداول بيانات كاملة: ملف تصدير من Shopify قبل افتتاح متجر ألماني، أو كتالوج مورّد، أو جدول بمقالات مركز المساعدة. أردنا أن نعرف أين ينجح ذلك وأين يتوقف، فأعطينا في 20 أكتوبر 2026 نموذجًا واحدًا ملف CSV طويلًا واحدًا، وتحققنا من كل خلية عادت إلينا.

الاختبار

كان الملف تصدير منتجات Shopify مُختلقًا من 400 صف و20 عمودًا. احتاجت خمسة أعمدة إلى الترجمة: Title وBody (HTML) وImage Alt Text وSEO Title وSEO Description. أما الأعمدة الخمسة عشر الأخرى، ومنها Handle وVariant SKU والأسعار وروابط الصور، فكان يجب أن تبقى كما هي تمامًا. معظم الصفوف كانت متغيّرات بعنوان فارغ، وهذا شكل ملفات Shopify المصدَّرة فعلًا، وهو بالضبط نوع الصفوف الذي قد يُسقطه النموذج.

لصقنا الملف في GPT-6.1 Sol عبر واجهة API مع تعليمات من جملتين، كما يفعل أي شخص، ومرّرنا الملف نفسه عبر مترجم CSV وExcel لدينا.

ما الذي عاد

GPT-6.1 Sol، رسالة واحدة NoCutoff
الصفوف في أماكنها 400 من 400 400 من 400
التغييرات في الأعمدة الـ15 المحمية 0 0
الأوصاف التي تغيّرت وسوم HTML فيها 0 0
خلايا النص المترجمة 800 من 800 790 من 800
الوقت 9 دقائق، رد واحد 14 دفعة
التكلفة 0.55$ 0.17$
تشغيل واحد لكل منهما، 20 أكتوبر 2026، عبر واجهة API بسقف رد 64,000 رمز.

كان نموذج الدردشة دقيقًا. حافظ على كل صف متغيّر فارغ، وكل handle، وكل وسم. أما أداتنا فتركت عشر خلايا كما هي لأن النموذج رأى أنها أسماء منتجات، مثل "Field Merino Beanie"، وهذا تقدير معقول في الألمانية.

أين يتوقف

احتاج الرد إلى 45,326 رمز إخراج، أي نحو 113 للصف. يجب أن يعود الملف المترجم كاملًا في الإجابة، بما فيه الأعمدة التي لم تُمسّ، لذا تكبر الإجابة مع كبر الملف. وبهذا المعدل:

  • 400 صف: نحو 45,000 رمز. يتسع.
  • 560 صفًا: نحو 64,000 رمز، وهو السقف الذي حددناه.
  • 2,000 صف: نحو 225,000 رمز. لا يتسع لها أي رد واحد.

هذه عملية حسابية وليست قياسًا ثانيًا. في دراستنا السابقة عن أربع مهام طويلة، توقف نموذجان من ثلاثة في منتصف الرسالة عندما بلغت ترجمة محادثة من 2,000 رسالة السقف نفسه، دون أن يذكرا ذلك. وغالبًا ما تضع تطبيقات الدردشة سقفًا للردود أقل مما تضعه واجهة API.

لماذا يفيد تقسيم الملف

أداة الترجمة لا تحتاج إلى أن يكتب النموذج الملف بنفسه. فهي تقرأ ملف CSV إلى خلايا، وترسل نص الأعمدة المختارة فقط في كتل صغيرة، وتتحقق مما يعود، ثم تكتب الترجمات داخل نسخة من الملف الأصلي. أما المعرّفات (handles) والأسعار فلا تغادر ملفك أبدًا، ولذلك لا يمكن أن تتغير، كما أنه لا يوجد ردّ طويل بما يكفي ليصطدم بحدّ أقصى. وتستبدل أداتنا كذلك وسوم HTML برموز قبل الترجمة وتتحقق من عودة كل رمز منها، وتعرض لك كل خلية لم يصمد فيها عنصر نائب أو اسم علامة تجارية.

كيف تتحقق بنفسك من ملف CSV المترجم

  1. قارن عدد الصفوف بالملف الأصلي، وكذلك معرّف الصف الأخير أو الـ handle الخاص به.
  2. افتح الملفين جنبًا إلى جنب وتأكد من أن أعمدة المعرّف (ID) ورمز المنتج (SKU) والسعر متطابقة.
  3. ابحث في عمود HTML عن بضعة وسوم، مثل <li>، وقارن أعدادها.
  4. استورد الملف إلى متجر تجريبي أو إلى نسخة من جدولك قبل الاستيراد الفعلي.

ماذا تستخدم بدلًا من ذلك

لبضع مئات من الصفوف، يستطيع نموذج دردشة قوي أن ينجز المهمة، كما يظهر هذا الاختبار؛ لكن راجع النتيجة. أما للكتالوج الكامل، فإن أداة ترجمة ملفات CSV وExcel تترجم الصفوف الأولى مجانًا، وتترجم الملف كاملًا مقابل $5، دفعة واحدة. وبالنسبة لملفات نصوص التطبيقات، تقدّم أداة ترجمة ملفات التوطين الخدمة نفسها لملفات JSON وPO وstrings.

المنهج والبيانات

التاريخ: 20 أكتوبر 2026. طريقة الوصول: واجهة chat completions API عبر OpenRouter، وليس تطبيق ChatGPT.

المدخلات: ملف تصدير منتجات Shopify خيالي كتبه سكربت لأجل هذا الاختبار: 160 منتجًا و400 صف (صف لكل متغيّر، ومعظمها بعنوان ووصف فارغين) و20 عمودًا، والأوصاف بصيغة HTML تتضمن فقرات وقوائم ونصًا غامقًا وبعض الرموز التعبيرية. حجم الملف 127,637 بايت.

نموذج الدردشة: openai/gpt-6.1-sol، برسالة مستخدم واحدة فيها تعليمات من جملتين والملف كاملًا، دون رسالة نظام، وبدرجة الحرارة الافتراضية، وسقف الرد (max_tokens) 64,000. تشغيل واحد، لذا قد يختلف تشغيل آخر.

الأداة: ترجمة ملفات CSV وExcel في NoCutoff بالأعمدة الخمسة نفسها واللغة الهدف نفسها، مع google/gemini-3.8-flash، على دفعات تصل إلى 60 خلية.

ما قاسه السكربت: الصفوف العائدة ومطابقتها بالـ handle والـ SKU، وعدد الأعمدة، وكل خلية في الأعمدة الـ15 المحمية، وتسلسل وسوم HTML في كل وصف، والخلايا التي تغيّرت أو بقيت كما هي. التكلفة: 0.73$ للتشغيلين معًا.

المصادر

  1. RFC 4180: Common Format and MIME Type for Comma-Separated Values (CSV) Files — IETF
  2. OpenRouter API reference — OpenRouter