مقاله

مطالعه موردی سیستم ترجمه: بیش از 1000 صفحه Strapi در 24 ساعت

چگونه ترجمه را از کاری دستی به بخشی از زیرساخت Strapi CMS v5 تبدیل کردیم.

ترجمه دستی کار می‌کند—تا وقتی محتوای شما سریع‌تر از تیم‌تان رشد کند. این مطالعه موردی سیستم ترجمه مبتنی بر هوش مصنوعی را که روی Strapi CMS v5 ساختیم مستندسازی می‌کند؛ سیستمی که بیش از 1000 صفحه را در کمتر از 24 ساعت به چند زبان ترجمه کرد، در حالی که ساختار، قالب‌بندی و سئو را حفظ می‌کرد.

#ترجمه Strapi، سیستم ترجمه مبتنی بر هوش مصنوعی، بومی‌سازی با GPT، CMS چندزبانه، پردازش‌های پس‌زمینه، دسته‌بندی محتوا، OpenAI API، منطقه‌های پویا، Strapi CMS v5، بومی‌سازی محتوا در مقیاس وسیع
مطالعه موردی سیستم ترجمه: بیش از 1000 صفحه Strapi در 24 ساعت
+0K
تعداد کل صفحات Strapi که در لوکال‌ها ترجمه شده‌اند.
شامل مقالات، کامپوننت‌ها و ورودی‌ها با منطقه‌های پویا.
<0H
زمان انتها-به-انتها برای ترجمه و انتشار همه صفحات.
شامل استخراج، ترجمه، ذخیره‌سازی و مدیریت روابط.
0 LANG
لوکال‌های هدف در مدل برآورد.
ما این کار را برای آلمانی، ترکی، فرانسوی، اسپانیایی و ایتالیایی انجام دادیم، اما محدودیت در واقع فقط نیاز شماست!
0 K
تعداد تقریبی فیلدهای قابل ترجمه پردازش‌شده.
1000 صفحه × 50 فیلد در هر صفحه.
ترجمهٔ دستی کار می‌کند تا وقتی محتوای شما سریع‌تر از تیم‌تان رشد کند. آن لحظه است که همه‌چیز شروع به فروپاشی می‌کند.
E
Emre Yılmazمدیر ارشد محتواDISEEC

وقتی ترجمه دیگر یک وظیفه نیست

Section image

در ابتدا، فقط «یک زبانِ دیگر» است. یک ورودی تکراری. چند فیلد کپی‌شده. کسی روابط را دوباره بررسی می‌کند. دیگری قالب‌بندی را اصلاح می‌کند. آزاردهنده است، اما قابل مدیریت.

بعدها محتوا به رشد خود ادامه می‌دهد.

صفحات بیشتر. کامپوننت‌های بیشتر. نواحی داینامیک بیشتر. افراد بیشتری روی همان ورودی‌ها کار می‌کنند. ناگهان ترجمه دیگر یک وظیفه نیست—بلکه یک فرایند است. و آن فرایند شروع به نشتِ زمان، اطمینان و انسجام در جاهایی می‌کند که توضیح‌شان سخت اما حس‌کردنشان آسان است.

آنچه اوضاع را بدتر می‌کند این است که از لحاظ فنی چیزی خراب نیست. صفحات منتشر می‌شوند. محتوا وجود دارد. با این حال هر زبان جدید اصطکاک را افزایش می‌دهد. هر به‌روزرسانی خطرناک به نظر می‌رسد. هر قدم دستی تبدیل به نقطه‌ای دیگر می‌شود که ممکن است به‌طور پنهانی اشتباه پیش برود.

این همان نقطه‌ای است که تیم‌ها معمولاً دربارهٔ ابزارها، هزینه‌ها یا تعداد نیروی انسانی بحث می‌کنند.

این بحث اشتباه است.

مشکل واقعی زبان نیست. مشکل مقیاس است. و مقیاس برای اینکه شما چقدر محتاط هستید اهمیتی قائل نیست—تنها به سیستم‌ها واکنش نشان می‌دهد.

این مطالعهٔ موردی بررسی می‌کند که چه اتفاقی می‌افتد وقتی ترجمه به‌عنوان یک ویژگی یا یک دکمه در نظر گرفته نشود، بلکه به‌عنوان زیرساخت محسوب شود.


چرا از مترجم هوش مصنوعی داخلی Strapi استفاده نکنیم؟

این ابزار خودکار نیست، پشتیبانی محدودی از ترجمهٔ دسته‌ای ارائه می‌دهد و همچنان نیاز به کار دستی برای تنظیم روابط، انتشار صفحات و مدیریت تصاویر دارد. وقتی با یک تیم کوچک بیش از 10 زبان را مدیریت می‌کنید، انجام این کار به‌صورت دستی دیگر واقع‌گرایانه نیست.

معماری راه‌حل و جریان داده‌ها

یک افزونهٔ ترجمهٔ سفارشی برای Strapi CMS که ترجمه‌ها را به‌صورت کارهای پس‌زمینه پردازش می‌کند با پیگیری پیشرفت در زمان واقعی، ساختارهای پیچیدهٔ تو در توی محتوا مانند کامپوننت‌ها، نواحی داینامیک و بلوک‌ها را مدیریت می‌کند و HTML، Markdown، URLها، جای‌نشانه‌ها و سایر قالب‌بندی‌های ویژه را حفظ می‌کند.

20251221_1458_Emerald Flow Pipeline_simple_compose_01kd0an8j1e6xvxqyrfyh23wt8.jpg

همچنین از لغو کارها، منطق تلاش مجدد و بازیابی خطای مقاوم پشتیبانی می‌کند، در حالی که یک رابط کاربری مدیر زیبا فراهم می‌آورد که به کاربران اجازه می‌دهد مدل‌ها را انتخاب کنند و تنظیمات ترجمه را به‌راحتی پیکربندی کنند.

ویژگی‌های کلیدی

سامانهٔ وظایف پس‌زمینه

20251221_1727_Abstract Translation System_simple_compose_01kd0k66wpf0htsag51dhfr8b0.jpg

ترجمه‌ها به‌صورت وظایف پس‌زمینه‌ای پردازش می‌شوند که توسط یک مدیریت‌کنندهٔ وظایف اختصاصی اداره می‌گردند. این امکان اجرای عملیات طولانی، پی‌گیری پیشرفت به‌صورت لحظه‌ای، لغو و رفتار تلاش مجدد را بدون مسدود کردن رابط کاربری مدیریت Strapi فراهم می‌کند.

استخراج هوشمند محتوا

20251221_1721_Abstract Translation System_simple_compose_01kd0jvcj2e0evccs7weaccw21.jpg

یک استخراج‌کنندهٔ محتوا در ورودی‌ها، کامپوننت‌ها و نواحی پویا (dynamic zones) در Strapi جستجو می‌کند تا فیلدهای قابل‌ترجمه را بیابد و در عین حال ساختارهای غیرقابل‌ترجمه مانند شناسه‌ها (IDs)، روابط و ارجاعات رسانه‌ای را حفظ کند.

پشتیبانی از چند مدل

20251221_1659_Abstract SaaS Progress Dashboard_simple_compose_01kd0hjm80fhr9kt2qxrywe62p.jpg

مترجم از چندین مدل OpenAI GPT پشتیبانی می‌کند تا تیم‌ها بتوانند با توجه به پروژه و مقصد زبانی، هزینه، سرعت و کیفیت را متعادل کنند.

گروه‌بندی هوشمند

20251221_1614_AI Translation Pipeline_simple_compose_01kd0ezqa2esbsqjywz78c2wcx.jpg

فیلدها به‌صورت گروه‌هایی دسته‌بندی می‌شوند تا استفاده از توکن‌ها کارآمد بماند و در عین حال در محدودیت‌های نرخ قرار گیرد. این گروه‌بندی برای رسیدن به بیش از ۱۰۰۰+ صفحه در بازهٔ ۲۴ ساعته حیاتی است.

تنظیمات رفتار ترجمه

20251221_1616_Abstract SaaS Dashboard_simple_compose_01kd0f3y0wezcbky1hjgkpbks0.jpg

مدیران می‌توانند تنظیم کنند که محتوا تا چه حد لفظی یا آزاد ترجمه شود، آیا اصطلاحات برند حفظ شوند، و چگونه با جای‌نگهدارها (placeholders)، HTML و Markdown برخورد شود.

پرِامپت‌هایی که به مدل‌های GPT ارسال می‌شوند قابل پیکربندی هستند، که امکان تنظیم لحن، درجهٔ رسمیت و اولویت‌های مخصوص locale برای هر پروژه را فراهم می‌کند.

مدیریت روابط

20251221_1705_Abstract Digital Workspace_simple_compose_01kd0hx65ye87arbyet9dbswdc.jpg

سیستم روابط بین ورودی‌ها را پس از ترجمه رعایت و بازسازی می‌کند تا محتوای محلی‌سازی‌شده در تمامی لوکال‌ها (locales) به‌درستی مرتبط باقی بماند.

توان عملیاتی و برآورد برای ۱۰۰۰ صفحه

با فرض میانگین ۵۰ فیلد قابل‌ترجمه در هر صفحه و ۵ زبان هدف:

1000 pages × 50 fields = 50,000 فیلد برای ترجمه
50,000 fields ÷ 20 batch size = 2,500 API calls
2,500 calls × 5 seconds average = 12,500 ثانیه =
 ~3.5 ساعت برای هر زبان

5 languages × 3.5 hours = ~17.5 ساعت مجموع
+ Overhead (extraction, saving, relations) = ~۲۰–۲۴ ساعت

گام بعدی

وقتی محتوا به حجم مشخصی می‌رسد، میزان تلاش دیگر به‌صورت خطی افزایش نمی‌یابد.

آنچه در ده صفحه کار می‌کند، بی‌صدا در صد صفحه شکست می‌خورد. آنچه در یک زبان قابل مدیریت به‌نظر می‌رسد، در ده زبان آسیب‌پذیر می‌شود. نه به این دلیل که افراد از توجه دست می‌کشند—بلکه به این دلیل که فرایندهای دستی با رشد دوام نمی‌آورند.

پرخرج‌ترین شکست‌ها به‌ندرت آشکار هستند. آن‌ها خود را به‌صورت تردید در ویرایش محتوا، ترس از انتشار یا جریان‌های کاری‌ای که دیگر هیچ‌کس کامل به آن‌ها اعتماد ندارد نشان می‌دهند. وقتی این مشکلات قابل‌مشاهده می‌شوند، معمولاً مدت‌هاست که وجود داشته‌اند.

همین آگاهی ما را به اینجا رساند.

این سیستم ترجمه از ابتدا به‌عنوان یک محصول یا یک قابلیت شروع نشد—بلکه به‌عنوان پاسخی به محدودیت‌های واقعی در یک محیط تولیدی آغاز شد. و به‌سرعت روشن شد که این مشکل منحصر به یک تیم یا یک پروژه نیست.

بنابراین آن را عمومی می‌کنیم.

ما در حال آماده‌سازی برای متن‌باز کردن کل سیستم هستیم—نه یک نسخه نمایشی، نه یک مثال ساده‌شده، بلکه زیرساخت واقعی که این خط‌لوله را در محیط تولید اجرا می‌کند. سیستم وظایف، منطق مدیریت محتوا، استراتژی‌های دسته‌بندی، مکانیزم‌های حفاظتی—همه چیز لازم برای کار در مقیاس.

در حال حاضر در حال نهایی‌سازی مستندات و رفع آخرین نواقص قبل از انتشار مخزن هستیم.

اگر می‌خواهید بدانید چه زمانی منتشر می‌شود، دسترسی زودهنگام بگیرید، یا روند تکامل آن را در فضای متن‌باز دنبال کنید، مشترک شوید.

من همچنین درس‌های عملی از ساخت و اجرای سیستم‌هایی مثل این را به اشتراک می‌گذارم—مقیاس‌بندی CMS، هوش مصنوعی در تولید، و مصالحه‌هایی که در آموزش‌ها دیده نمی‌شوند.

بدون هیاهو. بدون حرف‌های بی‌محتوا. فقط چیزهایی که کار می‌کنند.

اگر این مفید به‌نظر می‌رسد، می‌دانید چه کار باید بکنید.

مترجم هوش مصنوعی داخلی Strapi برای ترجمه‌های موردی مفید است، اما برای بومی‌سازی خودکار در مقیاس بزرگ طراحی نشده است. این ابزار از پردازش واقعی پس‌زمینه، پردازش حجمی هزاران ورودی یا مدیریت خودکار روابط، جریان‌های انتشار و تصاویر پشتیبانی نمی‌کند. وقتی بیش از 10 زبان یا بیش از 1000 صفحه را مدیریت می‌کنید، استفادهٔ دستی از ابزار داخلی دیگر واقع‌بینانه نیست.
این سیستم برای اسکیم‌های پیچیدهٔ Strapi CMS v5 طراحی شده است. آن مؤلفه‌های تو در تو، زون‌های پویا، بلوک‌های متن غنی و ورودی‌های مرتبط را مدیریت می‌کند. استخراج‌کنندهٔ محتوا تشخیص می‌دهد کدام فیلدها باید ترجمه شوند در حالی که شناسه‌ها، روابط، ارجاعات رسانه، HTML، Markdown، URLها و نگهدارنده‌ها را حفظ می‌کند.
کیفیت توسط ترکیبی از مدل‌های OpenAI GPT و تنظیمات صریح رفتار ترجمه تأمین می‌شود. مدیران می‌توانند پرومپت‌ها، لحن، میزان رسمیت و نحوهٔ برخورد با اصطلاحات برند را پیکربندی کنند. گروه‌بندی هوشمند ورودی‌ها را ساختارمند نگه می‌دارد و مدیریت خطای مقاوم با تلاش‌های مجدد از دست رفتن داده را جلوگیری می‌کند. نتیجه ترجمه‌هایی حرفه‌ای است که قالب‌بندی و عناصر SEO را حفظ می‌کنند.
توان عملیاتی از نگاه داشتن ترجمه به‌عنوان زیرساخت به‌جای یک وظیفهٔ دستی حاصل می‌شود. کارهای پس‌زمینه عملیات ترجمهٔ بلندمدت را در سمت سرور اجرا می‌کنند، در حالی که گروه‌بندی هوشمند تماس‌های API به OpenAI را بهینه می‌سازد. یک اجرای معمولی فرض می‌کند 50,000 فیلد وجود دارد که در گروه‌های 20تایی دسته‌بندی می‌شوند و میانگین هر تماس حدود 5 ثانیه است. این منجر به حدود 3.5 ساعت برای هر زبان به‌علاوه سربار می‌شود و برای پنج زبان در محدودهٔ 20–24 ساعت قرار می‌گیرد.
بله. برنامه این است که کل سیستم را متن‌باز کنیم — نه یک دموی ساده یا مثال نمونه، بلکه زیرساخت واقعی مورد استفاده در تولید. این شامل سیستم کارها، منطق استخراج و بازسازی محتوا، استراتژی‌های دسته‌بندی، تضمین‌های مدیریت خطا و افزونهٔ رابط کاربری ادمین Strapi است. مستندسازی قبل از انتشار مخزن در حال نهایی شدن است.

هنگامی که سیستم ترجمهٔ Strapi متن‌باز شد، اطلاع‌رسانی دریافت کنید

ما در حال آماده‌سازی برای انتشار کاملِ زیرساخت ترجمهٔ مبتنی بر هوش مصنوعی هستیم. برای دریافت دسترسی زودهنگام، یادداشت‌های پیاده‌سازی و درس‌های عملی دربارهٔ مقیاس‌دهی محتوای چندزبانه با Strapi و مدل‌های GPT مشترک شوید.