نود Google Translate در N8N
نود Google Translate در N8N یکی از نودهای کاربردی برای ترجمه خودکار متن در ورکفلوها است. با استفاده از این نود میتوانید متنهای ورودی از ایمیل، فرم، چت، فایل، دیتابیس، وبسایت یا API را به زبانهای مختلف ترجمه کنید و خروجی ترجمهشده را در سرویسهای دیگر ذخیره یا ارسال کنید.
این نود زمانی بسیار مفید است که بخواهید فرآیندهای چندزبانه بسازید؛ برای مثال ترجمه خودکار پیامهای مشتریان، تولید نسخه چندزبانه محتوای سایت، ترجمه تیکتهای پشتیبانی یا ارسال اعلانهای بینالمللی.
معرفی نود در N8N
Google Translate یک نود Integration در N8N است که به سرویس Google Cloud Translation متصل میشود و متن را از یک زبان به زبان دیگر ترجمه میکند. این نود معمولاً به عنوان یک نود Action در میانه ورکفلو استفاده میشود؛ یعنی دادهای را از نودهای قبلی دریافت میکند، عملیات ترجمه را انجام میدهد و نتیجه را به نودهای بعدی تحویل میدهد.
دستهبندی نود
- نوع نود: Integration / Action
- سرویس متصل: Google Cloud Translation API
- کاربرد اصلی: ترجمه متن از یک زبان مبدا به یک زبان مقصد
- محل استفاده در ورکفلو: بعد از دریافت داده و قبل از ذخیرهسازی، ارسال یا پردازش نهایی
اهمیت نود در ورکفلوها
در بسیاری از پروژههای اتوماسیون، دادهها از منابع مختلف و به زبانهای متفاوت وارد سیستم میشوند. نود Google Translate کمک میکند بدون نیاز به ترجمه دستی، متنها را به زبان موردنظر تبدیل کنید. این موضوع برای تیمهای پشتیبانی، تولید محتوا، فروش بینالمللی، تحلیل دادههای متنی و ساخت باتهای چندزبانه بسیار کاربردی است.
موارد استفاده
ترجمه خودکار پیامهای مشتریان
فرض کنید پیامهای کاربران از طریق فرم سایت یا چت آنلاین وارد N8N میشود. با استفاده از Google Translate میتوانید پیامها را به زبان فارسی یا انگلیسی ترجمه کرده و سپس برای تیم پشتیبانی ارسال کنید.
- Webhook دریافت پیام کاربر
- Google Translate ترجمه پیام
- Slack یا Telegram ارسال پیام ترجمهشده به تیم پشتیبانی
ساخت محتوای چندزبانه برای وبسایت
اگر مقالات سایت به یک زبان نوشته میشوند، میتوانید بعد از انتشار مقاله، متن را با Google Translate به زبانهای دیگر ترجمه کرده و در CMS ذخیره کنید.
- RSS Feed یا Webhook دریافت مقاله جدید
- Google Translate ترجمه عنوان و متن مقاله
- WordPress یا Webflow انتشار نسخه ترجمهشده
ترجمه ایمیلهای دریافتی
در شرکتهایی که مشتریان بینالمللی دارند، ایمیلها ممکن است به زبانهای مختلف دریافت شوند. میتوانید ایمیل را دریافت کرده، متن آن را ترجمه کنید و نسخه ترجمهشده را در Gmail، Notion، Airtable یا CRM ذخیره کنید.
- Gmail Trigger دریافت ایمیل جدید
- Google Translate ترجمه متن ایمیل
- Notion یا Airtable ذخیره متن اصلی و ترجمهشده
ترجمه تیکتهای پشتیبانی
در سیستمهای Helpdesk مانند Zendesk، Freshdesk یا ابزارهای سفارشی، میتوان متن تیکتها را به زبان تیم پشتیبانی ترجمه کرد تا زمان پاسخگویی کاهش پیدا کند.
- HTTP Request دریافت تیکت جدید از Helpdesk
- Google Translate ترجمه متن تیکت
- IF تشخیص اولویت یا نوع پیام
- CRM یا Helpdesk ذخیره نتیجه
ترجمه دادههای خروجی از API
گاهی اطلاعات از یک API خارجی دریافت میشود و نیاز است توضیحات، عنوانها یا پیامها به زبان مشخصی تبدیل شوند. در این حالت Google Translate میتواند بین HTTP Request و نود مقصد قرار بگیرد.
- HTTP Request دریافت داده از API
- Set انتخاب فیلدهای متنی موردنیاز
- Google Translate ترجمه متنها
- Database ذخیره خروجی ترجمهشده
پارامترها و تنظیمات
پارامترهای دقیق نود ممکن است بسته به نسخه N8N کمی متفاوت باشند، اما ساختار اصلی نود Google Translate معمولاً شامل تنظیمات زیر است.
Credentials
- نام پارامتر: Credentials
- نوع داده: Credential / اتصال حساب
- توضیح کاربرد: برای اتصال N8N به Google Cloud Translation API استفاده میشود. معمولاً باید یک پروژه در Google Cloud داشته باشید، API ترجمه را فعال کنید و احراز هویت مناسب را در N8N تنظیم کنید.
- مثال عملی: اتصال به یک Google Cloud Project که Cloud Translation API در آن فعال شده است.
Operation
- نام پارامتر: Operation
- نوع داده: Options / انتخابی
- توضیح کاربرد: مشخص میکند نود چه عملیاتی انجام دهد. در این نود رایجترین عملیات، Translate است.
- مثال عملی: انتخاب گزینه Translate برای ترجمه متن دریافتی از فرم تماس.
Text
- نام پارامتر: Text
- نوع داده: String / Expression
- توضیح کاربرد: متنی که باید ترجمه شود. این مقدار میتواند به صورت دستی وارد شود یا از خروجی نود قبلی با Expression گرفته شود.
- مثال عملی: اگر متن پیام در فیلد message قرار دارد، مقدار این پارامتر میتواند به شکل {{$json.message}} تنظیم شود.
Translate From / Source Language
- نام پارامتر: Translate From یا Source Language
- نوع داده: String / Options / Expression
- توضیح کاربرد: زبان مبدا متن را مشخص میکند. در بعضی نسخهها اگر این گزینه خالی بماند، Google زبان مبدا را به صورت خودکار تشخیص میدهد.
- مثال عملی: en برای انگلیسی، fa برای فارسی، ar برای عربی، fr برای فرانسوی.
Translate To / Target Language
- نام پارامتر: Translate To یا Target Language
- نوع داده: String / Options / Expression
- توضیح کاربرد: زبان مقصد ترجمه را مشخص میکند. این فیلد معمولاً اجباری است.
- مثال عملی: fa برای ترجمه متن به فارسی، en برای انگلیسی، de برای آلمانی، es برای اسپانیایی.
Format
- نام پارامتر: Format
- نوع داده: Options
- توضیح کاربرد: مشخص میکند متن ورودی به صورت Plain Text یا HTML پردازش شود. اگر متن شامل تگهای HTML باشد، انتخاب HTML کمک میکند ساختار تگها بهتر حفظ شود.
- مثال عملی: اگر متن ورودی <p>Hello world</p> باشد، بهتر است Format روی HTML قرار بگیرد.
Model
- نام پارامتر: Model
- نوع داده: Options
- توضیح کاربرد: در برخی نسخهها امکان انتخاب مدل ترجمه وجود دارد. معمولاً مدل Neural Machine Translation یا مدل پیشفرض Google استفاده میشود.
- مثال عملی: استفاده از مدل پیشفرض برای ترجمه عمومی پیامهای کاربران.
Additional Fields / Options
- نام پارامتر: Additional Fields یا Options
- نوع داده: Object / Options
- توضیح کاربرد: بسته به نسخه نود، ممکن است تنظیمات تکمیلی مانند فرمت متن، مدل، یا گزینههای مربوط به API در این بخش قرار داشته باشد.
- مثال عملی: فعال کردن حالت HTML برای ترجمه توضیحات محصول همراه با تگهای قالببندی.
نکات مهم هنگام پیکربندی
- برای استفاده از این نود معمولاً باید Google Cloud Translation API را در پروژه Google Cloud فعال کنید.
- در بسیاری از موارد، فعال بودن Billing در Google Cloud الزامی است.
- کد زبانها باید مطابق استانداردهای پشتیبانیشده توسط Google باشد؛ مانند en، fa، fr، de، ar و es.
- اگر زبان مبدا را نمیدانید، در صورت پشتیبانی نسخه نود، فیلد Source Language را خالی بگذارید تا تشخیص خودکار انجام شود.
- برای متنهای طولانی، بهتر است متن را به بخشهای کوچکتر تقسیم کنید تا با محدودیت API یا Timeout مواجه نشوید.
- اگر متن شامل HTML است، از Format مناسب استفاده کنید تا تگها به هم نریزند.
- برای فیلدهای پویا، از Expression استفاده کنید و قبل از اجرا مطمئن شوید مقدار ورودی خالی نیست.
ورودیها و خروجیها
ورودی نود
ورودی نود Google Translate معمولاً یک یا چند آیتم JSON است که شامل متن موردنظر برای ترجمه میشود. این متن میتواند از نودهای قبلی مانند Webhook، Gmail، HTTP Request، Set، Airtable یا Google Sheets آمده باشد.
نمونه ورودی:
[ { "json": { "message": "Hello, how can I help you?", "customerName": "John", "targetLanguage": "fa" } }]در این مثال، میتوانید فیلد Text را برابر با {{$json.message}} و فیلد Target Language را برابر با {{$json.targetLanguage}} قرار دهید.
خروجی نود
خروجی نود معمولاً شامل متن ترجمهشده و در بعضی موارد زبان تشخیص دادهشده است. ساختار دقیق خروجی میتواند بسته به نسخه N8N و پاسخ Google API متفاوت باشد، اما معمولاً فیلدی مانند translatedText در خروجی دیده میشود.
نمونه خروجی:
[ { "json": { "translatedText": "سلام، چطور میتوانم به شما کمک کنم؟", "detectedSourceLanguage": "en" } }]مثال کاربردی با Expression
فرض کنید از یک فرم، پیام کاربر را دریافت کردهاید و میخواهید آن را به فارسی ترجمه کنید.
- Text: {{$json.body.message}}
- Translate To: fa
- Translate From: خالی یا en
اگر زبان مقصد برای هر کاربر متفاوت است، میتوانید آن را به صورت پویا تنظیم کنید.
- Text: {{$json.message}}
- Translate To: {{$json.userPreferredLanguage}}
نکات پیشرفته و ترفندها
استفاده از زبان مقصد پویا
یکی از کاربردیترین قابلیتها این است که زبان مقصد را از داده ورودی بخوانید. برای مثال اگر در دیتابیس کاربران، زبان مورد علاقه هر کاربر ذخیره شده باشد، میتوانید همان مقدار را در فیلد Target Language استفاده کنید.
- دریافت اطلاعات کاربر از دیتابیس
- خواندن فیلد language
- ارسال متن به Google Translate با زبان مقصد پویا
جلوگیری از ترجمه غیرضروری
اگر زبان متن با زبان مقصد یکی باشد، نیازی به اجرای Google Translate نیست. میتوانید قبل از نود ترجمه از IF استفاده کنید.
- اگر sourceLanguage برابر targetLanguage بود، ترجمه انجام نشود.
- اگر زبانها متفاوت بودند، متن وارد نود Google Translate شود.
ترجمه دستهای با Split In Batches
برای ترجمه تعداد زیادی متن، بهتر است آیتمها را به صورت دستهای پردازش کنید. این کار باعث کنترل بهتر روی مصرف API، کاهش خطاهای محدودیت نرخ درخواست و مدیریت بهتر منابع میشود.
- Google Sheets دریافت لیست متنها
- Split In Batches تقسیم دادهها به دستههای کوچک
- Google Translate ترجمه هر آیتم
- Google Sheets یا Database ذخیره خروجی
ذخیره ترجمهها برای کاهش هزینه
اگر متنهای تکراری زیاد دارید، بهتر است ترجمهها را در یک دیتابیس یا Data Store ذخیره کنید. قبل از ارسال متن به Google Translate، بررسی کنید آیا قبلاً ترجمه همان متن وجود دارد یا نه.
- محاسبه کلید یکتا بر اساس متن و زبان مقصد
- جستجو در دیتابیس یا Data Store
- اگر ترجمه وجود داشت، استفاده از مقدار ذخیرهشده
- اگر ترجمه وجود نداشت، ارسال به Google Translate و ذخیره نتیجه
ترکیب با نود AI برای بازنویسی ترجمه
در بعضی موارد ترجمه ماشینی از نظر معنا قابل قبول است اما لحن آن نیاز به بهبود دارد. میتوانید بعد از Google Translate از یک نود AI یا OpenAI استفاده کنید تا متن ترجمهشده را بازنویسی، رسمیتر، کوتاهتر یا مناسب برند کند.
- Google Translate ترجمه اولیه
- OpenAI یا AI Agent بازنویسی و بهبود لحن
- ارسال خروجی نهایی به کاربر یا ذخیره در CMS
حفظ ساختار HTML
اگر متن ورودی شامل تگهای HTML است، بهتر است از گزینه Format با مقدار HTML استفاده شود. همچنین قبل از ترجمه، HTML نامعتبر یا شکسته را اصلاح کنید تا خروجی دچار مشکل نشود.
- برای متن ساده از Text استفاده کنید.
- برای محتوای وبلاگ، توضیح محصول یا ایمیل HTML از HTML استفاده کنید.
- بعد از ترجمه، در صورت نیاز خروجی را با HTML Extract یا Code Node بررسی و پاکسازی کنید.
محدودیتها و خطاها
محدودیتها
- استفاده از این نود به فعال بودن Google Cloud Translation API وابسته است.
- ممکن است برای استفاده از API نیاز به فعالسازی Billing در Google Cloud داشته باشید.
- ترجمه ماشینی همیشه برای متنهای تخصصی، حقوقی، پزشکی یا ادبی کاملاً دقیق نیست.
- کیفیت ترجمه برای بعضی زبانها و ترکیبهای زبانی بهتر از برخی دیگر است.
- متنهای بسیار طولانی ممکن است با محدودیت حجم درخواست یا Timeout مواجه شوند.
- برخی قابلیتهای پیشرفته Google Cloud Translation مانند Glossary یا مدلهای سفارشی ممکن است مستقیماً در نود ساده Google Translate در دسترس نباشند.
- ساختار HTML پیچیده یا نامعتبر ممکن است بعد از ترجمه دچار تغییر شود.
خطاهای رایج و راهحلها
- خطای 401 Unauthorized: اطلاعات احراز هویت اشتباه است یا دسترسی لازم وجود ندارد. Credential را در N8N بررسی و دوباره متصل کنید.
- خطای 403 Forbidden: API فعال نیست، Billing فعال نشده یا حساب دسترسی لازم به پروژه Google Cloud ندارد. Cloud Translation API و تنظیمات پروژه را بررسی کنید.
- خطای API has not been used or is disabled: سرویس Cloud Translation API در پروژه فعال نشده است. از Google Cloud Console آن را فعال کنید.
- خطای Invalid language code: کد زبان اشتباه وارد شده است. از کدهای استاندارد مانند en، fa، ar، de، fr و es استفاده کنید.
- خطای Quota exceeded: سهمیه مصرف API تمام شده یا تعداد درخواستها زیاد است. پردازش دستهای، تأخیر بین درخواستها یا افزایش Quota را بررسی کنید.
- خطای Text is empty: مقدار Text خالی است. قبل از نود ترجمه با IF یا Set بررسی کنید که فیلد موردنظر مقدار داشته باشد.
- خروجی با کاراکترهای HTML Entity: در برخی موارد کاراکترهایی مانند " یا ' در خروجی دیده میشود. میتوانید با Code Node یا تنظیمات پردازش متن، خروجی را Decode کنید.
- ترجمه ناقص متن طولانی: متن را به چند بخش کوچکتر تقسیم کنید و سپس خروجیها را با Merge یا Code Node دوباره ترکیب کنید.
ایده ها
- بات پشتیبانی چندزبانه: دریافت پیام کاربر از Telegram، ترجمه به زبان تیم پشتیبانی، دریافت پاسخ و ترجمه پاسخ به زبان کاربر.
- مترجم خودکار مقالات: دریافت مقاله جدید از WordPress، ترجمه عنوان و محتوا، انتشار نسخه چندزبانه در سایت.
- تحلیل نظرات بینالمللی: جمعآوری کامنتها از شبکههای اجتماعی، ترجمه همه به یک زبان و ارسال به ابزار تحلیل احساسات.
- ترجمه خودکار توضیحات محصول: دریافت اطلاعات محصول از Google Sheets یا Shopify و تولید توضیحات چندزبانه برای فروشگاه.
- سیستم خلاصهسازی چندزبانه: ترجمه متنهای خارجی به فارسی و سپس خلاصهسازی آنها با یک نود AI برای گزارشهای داخلی.
