منتشر شده: ۲۴ سپتامبر ۲۰۲۴، آخرین بهروزرسانی: ۲۰ مه ۲۰۲۵
قبل از ترجمه متن از یک زبان به زبان دیگر، ابتدا باید مشخص کنید که در متن داده شده از چه زبانی استفاده شده است. پیش از این، ترجمه نیاز به آپلود متن در یک سرویس ابری، انجام ترجمه روی سرور و سپس دانلود نتایج داشت.
رابط برنامهنویسی کاربردی تشخیص زبان (Language Detector API) در سمت کلاینت کار میکند، به این معنی که میتوانید از حریم خصوصی کاربر محافظت کنید. اگرچه میتوان کتابخانه خاصی را ارائه داد که این کار را انجام دهد، اما برای دانلود به منابع اضافی نیاز دارد.
چه زمانی از تشخیص زبان استفاده کنیم
رابط برنامهنویسی کاربردی تشخیص زبان (Language Detector API) عمدتاً در سناریوهای زیر مفید است:
- زبان متن ورودی را تعیین کنید تا بتوان آن را ترجمه کرد.
- زبان متن ورودی را تعیین کنید، تا مدل صحیح برای وظایف خاص زبان، مانند تشخیص سمیت، بارگذاری شود.
- زبان متن ورودی را تعیین کنید تا بتوان آن را به درستی برچسبگذاری کرد، برای مثال، در سایتهای شبکههای اجتماعی آنلاین.
- زبان متن ورودی را تعیین کنید تا رابط کاربری برنامه بتواند بر اساس آن تنظیم شود. به عنوان مثال، در یک سایت بلژیکی، فقط رابط کاربری مربوط به کاربرانی که به زبان فرانسوی صحبت میکنند را نشان دهد.
شروع کنید
The Language Detector and Translator APIs work in Chrome on desktop. These APIs don't work on mobile devices.
برای بررسی اینکه آیا مرورگر از رابط برنامهنویسی کاربردی تشخیص زبان (Language Detector API) پشتیبانی میکند یا خیر، تشخیص ویژگی (feature detection) را اجرا کنید.
if ('LanguageDetector' in self) {
// The Language Detector API is available.
}
دانلود مدل
تشخیص زبان به مدلی بستگی دارد که برای وظیفه خاص تشخیص زبانها به دقت تنظیم شده باشد. در حالی که API در مرورگر ساخته شده است، این مدل به صورت درخواستی و اولین باری که یک سایت سعی میکند از API استفاده کند، دانلود میشود. در کروم، این مدل در مقایسه با سایر مدلها بسیار کوچک است. ممکن است از قبل وجود داشته باشد، زیرا این مدل توسط سایر ویژگیهای کروم استفاده میشود.
To determine if the model is ready to use, call the asynchronous LanguageDetector.availability() function. If the response to availability() was downloadable , listen for download progress and inform the user, as the download may take time.
To trigger the download and instantiate the language detector, check for user activation . Then, call the asynchronous LanguageDetector.create() function.
const detector = await LanguageDetector.create({
monitor(m) {
m.addEventListener('downloadprogress', (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
},
});
تشخیصدهندهی زبان را اجرا کنید
رابط برنامهنویسی کاربردی تشخیص زبان (Language Detector API) از یک مدل رتبهبندی برای تعیین اینکه کدام زبان به احتمال زیاد در یک متن مشخص استفاده میشود، استفاده میکند. رتبهبندی نوعی یادگیری ماشینی است که در آن هدف، مرتبسازی فهرستی از موارد است. در این مورد، رابط برنامهنویسی کاربردی تشخیص زبان، زبانها را از بالاترین احتمال تا پایینترین احتمال رتبهبندی میکند.
تابع detect() میتواند اولین نتیجه، محتملترین پاسخ، یا تکرار روی کاندیدهای رتبهبندی شده با سطح اطمینان را برگرداند. این به صورت لیستی از اشیاء {detectedLanguage, confidence} برگردانده میشود. سطح confidence به صورت مقداری بین 0.0 (کمترین اطمینان) و 1.0 (بیشترین اطمینان) بیان میشود.
const someUserText = 'Hallo und herzlich willkommen!';
const results = await detector.detect(someUserText);
for (const result of results) {
// Show the full list of potential languages with their likelihood, ranked
// from most likely to least likely. In practice, one would pick the top
// language(s) that cross a high enough threshold.
console.log(result.detectedLanguage, result.confidence);
}
// (Output truncated):
// de 0.9993835687637329
// en 0.00038279531872831285
// nl 0.00010798392031574622
// ...
زمین بازی API
با API تشخیص زبان در محیط API ما آزمایش کنید. متن نوشته شده به زبانهای مختلف را در ناحیه متن وارد کنید.
سیاست دسترسی، iframeها و Web Workerها
به طور پیشفرض، API تشخیص زبان فقط برای پنجرههای سطح بالا و iframe های هممبنای آنها در دسترس است. دسترسی به API را میتوان با استفاده از ویژگی allow="" به iframe های بینمنبعی واگذار کرد:
<!--
The hosting site at https://main.example.com can grant a cross-origin iframe
at https://cross-origin.example.com/ access to the Language Detector API by
setting the `allow="language-detector"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="language-detector"></iframe>
رابط برنامهنویسی کاربردی تشخیص زبان (Language Detector API) در Web Workerها موجود نیست. این به دلیل پیچیدگی ایجاد یک سند مسئول برای هر Worker به منظور بررسی وضعیت سیاست مجوزها (Permissions Policy) است.
بازخورد خود را به اشتراک بگذارید
ما میخواهیم ببینیم که شما با رابط برنامهنویسی کاربردی تشخیص زبان (Language Detector API) چه چیزی میسازید. وبسایتها و برنامههای وب خود را در X ، YouTube و LinkedIn با ما به اشتراک بگذارید.
اگر در مورد پیادهسازی کروم بازخوردی دارید، یک گزارش اشکال کرومیوم ثبت کنید.
Join the Early Preview Program for an early look at new built-in AI APIs and access to discussion on our mailing list.