Published: September 24, 2024, Last updated: May 20, 2025
قبل از ترجمه متن از یک زبان به زبان دیگر، ابتدا باید مشخص کنید که در متن داده شده از چه زبانی استفاده شده است. پیش از این، ترجمه نیاز به آپلود متن در یک سرویس ابری، انجام ترجمه روی سرور و سپس دانلود نتایج داشت.
رابط برنامهنویسی کاربردی تشخیص زبان (Language Detector API) در سمت کلاینت کار میکند، به این معنی که میتوانید از حریم خصوصی کاربر محافظت کنید. اگرچه میتوان کتابخانه خاصی را ارائه داد که این کار را انجام دهد، اما برای دانلود به منابع اضافی نیاز دارد.
چه زمانی از تشخیص زبان استفاده کنیم
The Language Detector API is primarily useful in the following scenarios:
- Determine the language of input text, so it can be translated.
- Determine the language of input text, so the correct model can be loaded for language-specific tasks, such as toxicity detection.
- Determine the language of input text, so it can be labeled correctly, for example, in online social networking sites.
- Determine the language of input text, so an app's interface can be adjusted accordingly. For example, on a Belgian site to only show the interface relevant to users who speak French.
شروع کنید
بررسی نیازمندیهای سختافزاری
الزامات زیر برای توسعهدهندگان و کاربرانی که از ویژگیهای این APIها در Chrome استفاده میکنند، وجود دارد. مرورگرهای دیگر ممکن است الزامات عملیاتی متفاوتی داشته باشند.
رابطهای برنامهنویسی کاربردی (API) تشخیصدهنده زبان و مترجم در کروم نسخه دسکتاپ کار میکنند. این رابطهای برنامهنویسی کاربردی (API) روی دستگاههای تلفن همراه کار نمیکنند.
APIهای Prompt ، Summarizer ، Writer ، Rewriter و Proofreader در کروم زمانی کار میکنند که شرایط زیر برقرار باشند:
- سیستم عامل : ویندوز ۱۰ یا ۱۱؛ macOS 13+ (Ventura و بعد از آن)؛ لینوکس؛ یا ChromeOS (از پلتفرم ۱۶۳۸۹.۰.۰ و بعد از آن) در دستگاههای Chromebook Plus . Chrome برای اندروید، iOS و ChromeOS در دستگاههای غیر Chromebook Plus هنوز توسط APIهایی که از Gemini Nano استفاده میکنند پشتیبانی نمیشوند.
- فضای ذخیرهسازی : حداقل ۲۲ گیگابایت فضای خالی در درایوی که نمایه کروم شما در آن قرار دارد.
- پردازنده گرافیکی (GPU) یا پردازنده مرکزی (CPU) : مدلهای توکار میتوانند با پردازنده گرافیکی (GPU) یا پردازنده مرکزی (CPU) کار کنند.
- پردازنده گرافیکی (GPU) : دقیقاً بیش از ۴ گیگابایت حافظه ویدیویی (VRAM).
- پردازنده : ۱۶ گیگابایت رم یا بیشتر و ۴ هسته پردازنده یا بیشتر.
- توجه : رابط برنامهنویسی کاربردی Prompt با ورودی صدا به پردازنده گرافیکی (GPU) نیاز دارد.
- شبکه : داده نامحدود یا اتصال بدون محدودیت حجمی.
اندازه دقیق Gemini Nano ممکن است با بهروزرسانی مدل مرورگر تغییر کند. برای تعیین اندازه فعلی، به chrome://on-device-internals مراجعه کنید.
Run feature detection to see if the browser supports the Language Detector API.
if ('LanguageDetector' in self) {
// The Language Detector API is available.
}
دانلود مدل
تشخیص زبان به مدلی بستگی دارد که برای وظیفه خاص تشخیص زبانها به دقت تنظیم شده باشد. در حالی که API در مرورگر ساخته شده است، این مدل به صورت درخواستی و اولین باری که یک سایت سعی میکند از API استفاده کند، دانلود میشود. در کروم، این مدل در مقایسه با سایر مدلها بسیار کوچک است. ممکن است از قبل وجود داشته باشد، زیرا این مدل توسط سایر ویژگیهای کروم استفاده میشود.
برای تعیین اینکه آیا مدل آماده استفاده است یا خیر، تابع ناهمزمان LanguageDetector.availability() را فراخوانی کنید. اگر پاسخ به availability() downloadable بود، به پیشرفت دانلود گوش دهید و به کاربر اطلاع دهید، زیرا ممکن است دانلود زمان ببرد.
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
Experiment with the Language Detector API in our API playground . Enter text written in different languages in the textarea.
سیاست دسترسی، 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>
The Language Detector API isn't available in Web Workers. This is due to the complexity of establishing a responsible document for each worker in order to check the Permissions Policy status.
بازخورد خود را به اشتراک بگذارید
We want to see what you're building with the Language Detector API. Share your websites and web applications with us on X , YouTube , and LinkedIn .
اگر در مورد پیادهسازی کروم بازخوردی دارید، یک گزارش اشکال کرومیوم ثبت کنید.
Join the Early Preview Program for an early look at new built-in AI APIs and access to discussion on our mailing list.