বিল্ট-ইন AI দিয়ে শুরু করুন

আলেকজান্দ্রা ক্লেপার
Alexandra Klepper

প্রকাশিত: ১২ ডিসেম্বর, ২০২৪, সর্বশেষ হালনাগাদ: ২০ মে, ২০২৫

অন্তর্নির্মিত এআই এপিআই-এর সাহায্যে, আপনার ওয়েব অ্যাপ্লিকেশন নিজস্ব এআই মডেল স্থাপন বা পরিচালনা করার প্রয়োজন ছাড়াই এআই-চালিত কাজ সম্পাদন করতে পারে। আমরা বিভিন্ন ব্রাউজারে এই এপিআইগুলোকে মানসম্মত করার জন্য কাজ করছি।

প্রয়োজনীয়তা

অন্তর্নির্মিত এআই ব্যবহার করার জন্য মডেল এবং হার্ডওয়্যারের কিছু আবশ্যকতা রয়েছে।

মডেল

Translator এবং Language Detector API-গুলো এক্সপার্ট মডেল ব্যবহার করে। অন্য সব API একটি ল্যাঙ্গুয়েজ মডেল ব্যবহার করে, যা ডেস্কটপ ও ল্যাপটপে স্থানীয়ভাবে চালানোর জন্য ডিজাইন করা হয়েছে।

Summarizer API, Writer API, Rewriter API, এবং Proofreader API শুধুমাত্র টেক্সট-টু-টেক্সট মোডালিটি সমর্থন করে। Prompt API-এর মাল্টিমোডাল সক্ষমতা রয়েছে

ক্রোমে জেমিনি ন্যানো

ক্রোম জেমিনি ন্যানো ল্যাঙ্গুয়েজ মডেল ব্যবহার করে। জেমিনি ন্যানো মোবাইল ডিভাইসে উপলব্ধ নয়।

ক্রোম ১৪০ থেকে, জেমিনি ন্যানো ইনপুট এবং আউটপুট টেক্সটের জন্য ইংরেজি, স্প্যানিশ এবং জাপানি ভাষা সমর্থন করে।

অন্তর্নির্মিত এআই এপিআই ব্যবহার করার আগে, গুগলের জেনারেটিভ এআই নিষিদ্ধ ব্যবহার নীতিটি স্বীকার করে নিন।

হার্ডওয়্যার

ক্রোমে এই এপিআইগুলো ব্যবহার করে ফিচার পরিচালনা করেন এমন ডেভেলপার এবং ব্যবহারকারীদের জন্য নিম্নলিখিত শর্তাবলী প্রযোজ্য। অন্যান্য ব্রাউজারের ক্ষেত্রে পরিচালনার শর্তাবলী ভিন্ন হতে পারে।

ল্যাঙ্গুয়েজ ডিটেক্টর এবং ট্রান্সলেটর এপিআইগুলো ডেস্কটপের ক্রোমে কাজ করে। এই এপিআইগুলো মোবাইল ডিভাইসে কাজ করে না।

নিম্নলিখিত শর্তগুলো পূরণ হলে Prompt API , Summarizer API , Writer API , Rewriter API , এবং Proofreader API ক্রোমে কাজ করে:

  • অপারেটিং সিস্টেম : উইন্ডোজ ১০ বা ১১; ম্যাকওএস ১৩+ (ভেনচুরা এবং তার পরবর্তী সংস্করণ); লিনাক্স; অথবা ক্রোমবুক প্লাস ডিভাইসে ক্রোমওএস (প্ল্যাটফর্ম ১৬৩৮৯.০.০ এবং তার পরবর্তী সংস্করণ)। জেমিনি ন্যানো ব্যবহারকারী এপিআইগুলো দ্বারা নন-ক্রোমবুক প্লাস ডিভাইসের অ্যান্ড্রয়েড, আইওএস এবং ক্রোমওএস-এর জন্য ক্রোম এখনও সমর্থিত নয়।
  • স্টোরেজ : আপনার ক্রোম প্রোফাইল ধারণকারী ভলিউমে কমপক্ষে ২২ জিবি খালি জায়গা থাকতে হবে।
  • জিপিইউ বা সিপিইউ : বিল্ট-ইন মডেলগুলো জিপিইউ বা সিপিইউ দিয়ে চলতে পারে।
    • জিপিইউ : অবশ্যই ৪ জিবির বেশি ভিআরএএম থাকতে হবে।
    • সিপিইউ : ১৬ জিবি বা তার বেশি র‍্যাম এবং ৪টি বা তার বেশি সিপিইউ কোর।
    • দ্রষ্টব্য : অডিও ইনপুট সহ প্রম্পট এপিআই ব্যবহার করার জন্য একটি জিপিইউ প্রয়োজন।
  • নেটওয়ার্ক : আনলিমিটেড ডেটা অথবা আনমিটারড কানেকশন।

ব্রাউজার মডেল আপডেট করার কারণে জেমিনি ন্যানো-র সঠিক আকার পরিবর্তিত হতে পারে। বর্তমান আকার জানতে, chrome://on-device-internals ওয়েবসাইটে যান।

নির্মাণ শুরু করুন

উন্নয়নের বিভিন্ন পর্যায়ে থাকা বেশ কয়েকটি বিল্ট-ইন এআই এপিআই রয়েছে। এর মধ্যে কিছু ক্রোম স্টেবল ভার্সনে আছে, কিছু অরিজিন ট্রায়ালের অংশগ্রহণকারীদের জন্য উপলব্ধ, এবং বাকিগুলো শুধুমাত্র আর্লি প্রিভিউ প্রোগ্রামের অংশগ্রহণকারীদের জন্য পাওয়া যায়।

প্রতিটি এপিআই-এর নিজস্ব নির্দেশাবলী রয়েছে, যা দিয়ে মডেলটি শুরু করা ও ডাউনলোড করা যায়; এটি অরিজিন ট্রায়াল ব্যবহার করে লোকাল প্রোটোটাইপিং এবং প্রোডাকশন এনভায়রনমেন্ট উভয়ের জন্যই প্রযোজ্য।

ক্রোম এক্সটেনশন তৈরি করার সময় এই সবগুলো এপিআই ব্যবহার করা যেতে পারে।

মডেল ডাউনলোড

এপিআই এবং মডেলগুলো ক্রোমের মধ্যেই অন্তর্নির্মিত থাকে। কোনো ব্যবহারকারী যখন প্রথমবার এই এপিআইগুলো ব্যবহার করেন, তখন মডেলটি ব্রাউজারে ডাউনলোড করতে হয়।

কোনো API ব্যবহারযোগ্য ও প্রস্তুত কিনা তা নির্ধারণ করতে, অ্যাসিঙ্ক্রোনাস availability() ফাংশনটি কল করুন, যা নিম্নলিখিত মানগুলির মধ্যে একটি সহ একটি প্রমিজ রিটার্ন করে:

  • "unavailable" : ব্যবহারকারীর ডিভাইস বা অনুরোধ করা সেশন অপশনগুলো সমর্থিত নয়। ডিভাইসটিতে অপর্যাপ্ত শক্তি বা ডিস্ক স্পেস থাকতে পারে।
  • "downloadable" : একটি সেশন তৈরি করার জন্য অতিরিক্ত ডাউনলোডের প্রয়োজন, যার মধ্যে একটি বিশেষজ্ঞ মডেল, একটি ভাষা মডেল, বা ফাইন-টিউনিং অন্তর্ভুক্ত থাকতে পারে। create() কল করার জন্য ব্যবহারকারীর সক্রিয়করণের প্রয়োজন হতে পারে।
  • "downloading" : ডাউনলোড চলছে এবং সেশনটি ব্যবহার করার আগে এটি অবশ্যই সম্পূর্ণ হতে হবে।
  • "available" : আপনি অবিলম্বে একটি সেশন তৈরি করতে পারেন।

কিছু API-এর প্রাপ্যতা কল করার সময় অতিরিক্ত বিকল্পের প্রয়োজন হয়। উদাহরণস্বরূপ, Prompt API-এর জন্য ভাষা সমর্থন ঘোষণা করতে হয়:

// Makes sure the model is available for English and Japanese.
await LanguageModel.availability({ languages: ["en", "ja"] });

ব্যবহারকারী সক্রিয়করণ

যদি ডিভাইসটি বিল্ট-ইন এআই এপিআই সমর্থন করে, কিন্তু মডেলটি এখনও ডাউনলোড করা না হয়ে থাকে, তাহলে আপনার অ্যাপ্লিকেশনটি create() মাধ্যমে একটি সেশন শুরু করার জন্য ব্যবহারকারীকে অবশ্যই আপনার পেজটির সাথে অর্থপূর্ণভাবে ইন্টারঅ্যাক্ট করতে হবে।

পেজটি লোড হওয়ার পর ব্যবহারকারী সরাসরি পেজটির সাথে ইন্টারঅ্যাক্ট করেছেন কিনা, তা নিশ্চিত করতে UserActivation.isActive প্রপার্টিটি ব্যবহার করুন। এর মধ্যে ট্যাপ, ক্লিক, কী প্রেস, mousedown বা অন্যান্য স্টিকি অ্যাক্টিভেশন ইভেন্ট অন্তর্ভুক্ত থাকতে পারে।

// Check for user activation.
if (navigator.userActivation.isActive) {
  // Create an instance of a built-in API
}

উদাহরণস্বরূপ, Summarizer API ব্যবহার করে, আপনি Summarizer.create() সক্রিয় করার জন্য ব্যবহারকারীদের "Summarize" লেখা একটি বোতামে ইন্টারঅ্যাক্ট করতে বলতে পারেন, অথবা ব্যবহারকারী টাইপ করা শুরু করার সাথে সাথে (একটি keydown ইভেন্টের মাধ্যমে) সামারাইজারটি তৈরি করতে পারেন।

লোকালহোস্টে এপিআই ব্যবহার করুন

ক্রোমে localhost সমস্ত এপিআইগুলো পাওয়া যায়।

  1. chrome://flags/#optimization-guide-on-device-model -এ যান।
  2. সক্ষম নির্বাচন করুন।
  3. রিলঞ্চ-এ ক্লিক করুন অথবা ক্রোম রিস্টার্ট করুন।

যেসব API Gemini Nano ব্যবহার করে, সেগুলোর জন্য আপনাকে অবশ্যই chrome://flags/#prompt-api-for-gemini-nano কে Enabled অথবা Enabled multilingual-এ সেট করতে হবে। মডেলটি ডাউনলোড হয়েছে এবং প্রত্যাশিতভাবে কাজ করছে কিনা, তা আপনি DevTools Console- এ নিশ্চিত করতে পারেন। কনসোলে await LanguageModel.availability(); রান করুন।

লোকালহোস্টের সমস্যা সমাধান করুন

যদি chrome://flags এ ফ্ল্যাগগুলো দেখা না যায়, তাহলে নিশ্চিত করুন যে আপনি Chrome-এর সর্বশেষ সংস্করণটি ডাউনলোড করেছেন।

যদি মডেলটি প্রত্যাশা অনুযায়ী কাজ না করে, তাহলে এই ধাপগুলো অনুসরণ করুন:

  1. ক্রোম পুনরায় চালু করুন।
  2. chrome://on-device-internals -এ যান।
  3. মডেল স্ট্যাটাস ট্যাবটি নির্বাচন করুন এবং নিশ্চিত করুন যে কোনো ত্রুটি নেই।
  4. DevTools খুলুন এবং কনসোলে LanguageModel.availability(); টাইপ করুন। এটি available রিটার্ন করবে।

প্রয়োজন হলে কিছুক্ষণ অপেক্ষা করুন এবং এই ধাপগুলো আবার করুন।

মান প্রক্রিয়া

আমরা এই এপিআইগুলোকে মানসম্মত করার জন্য কাজ করছি, যাতে এগুলো সব ব্রাউজারে কাজ করে। এর জন্য আমরা ওয়েব প্ল্যাটফর্ম কমিউনিটির কাছে এপিআইগুলো প্রস্তাব করেছি এবং আরও আলোচনার জন্য সেগুলোকে W3C ওয়েব ইনকিউবেটর কমিউনিটি গ্রুপে স্থানান্তর করেছি।

আমরা প্রতিটি এপিআই-এর জন্য W3C, মোজিলা এবং ওয়েবকিট-এর কাছ থেকে মতামত চেয়েছি।

অংশগ্রহণ করুন এবং মতামত জানান

আপনি যদি বিল্ট-ইন এআই ব্যবহার করে থাকেন এবং আপনার কোনো মতামত থাকে, তবে আমরা তা শুনতে আগ্রহী।