সামারাইজার এপিআই ব্রাইট সাইট এবং টেরাকে আকর্ষক নিবন্ধের সারাংশ তৈরি করতে সাহায্য করে, সারমারাইজার এপিআই ব্রাইট সাইট এবং টেরাকে আকর্ষক নিবন্ধের সারাংশ তৈরি করতে সাহায্য করে, সারমাইজার এপিআই ব্রাইট সাইট এবং টেরাকে আকর্ষক নিবন্ধ সারাংশ তৈরি করতে সাহায্য করে, সারমারাইজার এপিআই ব্রাইট সাইট এবং টেরাকে আকর্ষণীয় নিবন্ধ সারাংশ তৈরি করতে সহায়তা করে

মারি ভায়ানা
Mari Viana

প্রকাশিত: 15 মে, 2025

জনসাধারণ স্থানীয়, জাতীয় এবং আন্তর্জাতিক ঘটনা সম্পর্কে তাদের অবহিত করার পাশাপাশি তাদের চিন্তাশীল দৃষ্টিভঙ্গি ভাগ করে নেওয়ার জন্য সংবাদ প্রকাশকদের উপর নির্ভর করে। আজকের দ্রুত-গতির পরিবেশে, নিবন্ধের সারাংশগুলি জটিল তথ্যগুলিকে অ্যাক্সেসযোগ্য স্নিপেটে সংকুচিত করার একটি মূল কৌশল, পাঠকদের আরও অন্বেষণ করতে উত্সাহিত করে৷ Summarizer API ব্যবহার করে ব্রাইট সাইট এবং টেরা কীভাবে এই কৌশলটি ব্যবহার করে তা জানুন।

ব্যাখ্যাকারী ওয়েব এক্সটেনশন ক্রোম স্ট্যাটাস অভিপ্রায়
MDN ক্রোম 138 ক্রোম 138 দেখুন জাহাজের অভিপ্রায়

Summarizer API আপনাকে বিভিন্ন দৈর্ঘ্য এবং বিন্যাসে বিভিন্ন ধরনের সারাংশ তৈরি করতে দেয়, যেমন বাক্য, অনুচ্ছেদ, বুলেট পয়েন্ট তালিকা এবং আরও অনেক কিছু। এই API, অনেক অন্তর্নির্মিত AI API-এর মতো, অনুমান সম্পাদন করতে বড় ভাষা মডেল ব্যবহার করে। ক্রোমে, আমাদের মডেল জেমিনি ন্যানো।

ব্রাইট সাইট দ্য স্ট্যান্ডার্ডে ব্যক্তিগতকৃত নিবন্ধের সারাংশ যোগ করে

ব্রাইট সাইটসের শীর্ষস্থানীয় সংবাদ প্রকাশনা প্ল্যাটফর্ম, ফ্লো , 150টির বেশি প্রকাশনার ক্ষমতা রাখে। Summarizer API-কে এর AI-চালিত CMS-এ একীভূত করার মাধ্যমে, ব্রাইট সাইটস দ্য স্ট্যান্ডার্ড , লন্ডনের আইকনিক নিউজ ব্র্যান্ডকে তার পাঠকদের জন্য নিবন্ধগুলির ব্যক্তিগতকৃত সারাংশ অফার করতে সক্ষম করে। এটি ব্যবহারকারীদের নিবন্ধের সাথে জড়িত হতে এবং দ্য স্ট্যান্ডার্ডের অন্যান্য নিবন্ধগুলিতে পুনঃপ্রবর্তন করতে উত্সাহিত করে।

"Chrome-এ Gemini-এর অত্যাধুনিক মডেলগুলির সাথে কাজ করা আমাদের ব্যস্ত দর্শকদের জন্য নতুন প্রযুক্তিগত উদ্ভাবনের সাথে আমাদের পাঠকদের জানার জন্য স্ট্যান্ডার্ডের 198 বছরের ঐতিহ্যকে একত্রিত করছে যারা আমাদের বিশ্বস্ত সাংবাদিকতাকে তাদের নখদর্পণে মূল্য দেয়৷ পাঠকদের তাদের নিজস্ব ডিভাইসে তৈরি সারাংশ ব্যবহার করে দ্রুত সংবাদ পরীক্ষা করতে সক্ষম করে যা আমরা স্ট্যান্ডার্ড এবং নতুন পদ্ধতির মধ্যে একটি নতুন উপায় তৈরি করছি৷ তাদের ডিজিটাল অভ্যাসের চারপাশে পাঠক-কেন্দ্রিক পণ্য।"

জ্যাক রিলে , চিফ ডিজিটাল অফিসার, দ্য স্ট্যান্ডার্ড

ক্লায়েন্ট-সাইড AI সারসংক্ষেপ অফার করা স্ট্যান্ডার্ডকে অতিরিক্ত ব্যবসায়িক খরচ ছাড়াই ব্যক্তিগতকৃত সারাংশ তৈরি করতে সক্ষম করেছে। ক্লায়েন্ট-সাইড করে, সারাংশ স্টাইল বা অবস্থানের মতো ডেটা পয়েন্ট ব্যবহার করে, ব্যবহারকারীরা ইন্টারনেট অ্যাক্সেস হারালেও পড়া চালিয়ে যেতে দেয়। অনেক ব্যবহারকারী যারা তাদের ল্যাপটপ নিয়ে লন্ডন আন্ডারগ্রাউন্ডে ভ্রমণ করেন তাদের জন্য এটি একটি ঘন ঘন ঘটনা।

প্রথমত, তারা মডেল এবং API-এর সমর্থন এবং উপলব্ধতা পরীক্ষা করে।

// Check if the device supports built-in AI
// Trigger the model download if not yet available, on capable devices
export const deviceCheck = async () => {
  const availability = await Summarizer.availability();
  if (!availability || availability === 'unavailable') {
    return {
      summarizationAvailable: false,
      message:
        "AI summarization tools are not supported on this device" +
        "or the appropriate permissions are not set.",
    }
  }
  if (availability === 'downloadable') {
    const shouldDownload = window.confirm(
      `This page contains an AI summary, using an AI model provided by your
      browser. Downloading the model, which could be multiple gigabytes in size,
      is required to view the summary. Would you like to download the model?`);

    if (!shouldDownload) {
      return {
        summarizationAvailable: false,
        message: "User declined installation.",
      }
    }

    // Trigger an installation
    Summarizer.create();
    return {
      summarizationAvailable: false,
      message: "Installing in the background. This may take a few minutes...",
    }
  }

  if (availability === 'available') {
    return {
      summarizationAvailable: true,
      message: "Ready for use.",
    }
  }
}

নিম্নলিখিত ফাংশনটি একটি জেনেরিক সারসংক্ষেপকে সংজ্ঞায়িত করে যা ভবিষ্যতে, অন্য একটি অন-ডিভাইস মডেল বা সার্ভার-সাইড মডেল ব্যবহার করতে পারে।

/**
* Define the summarizer.
**/
export const aiSummarize = async (textToSummarize, options) => {
  const availableSummarizationTools = getAvailableAiSummarizationTools()

  if (availableSummarizationTools.has('builtInAi') && options?.builtInAI) {
    // Generate the built-in AI summarizer and abort signal
    const summarizer = await createBuiltInAISummarizer(options.builtInAi.options)
    return await summarizer.summarize(textToSummarize, {
      signal: options.builtInAi.signal,
    })
  }
  throw new Error(
    'AI summarization tools are not supported on this device or browser.',
  )
}

স্ট্যান্ডার্ড ব্যক্তিগতকৃত সারাংশ অফার করার জন্য পাঠকদের সারাংশ পছন্দকে IndexedDB-তে সঞ্চয় করে।

/**
* Log preferences in IndexDB for personalization
**/
abortController.current = new AbortController()
const preferencesDB = new PreferencesDB()
const summarization = await aiSummarize(articleContent, {
 clientSideAI: {
   options: await preferencesDB.getCreatesummarizerPreferences(),
   signal: abortController.current.signal,
 },
})

Terra সাংবাদিকদের পর্তুগিজ নিবন্ধের জন্য একটি সম্পাদনাযোগ্য সারাংশ প্রদান করে

টেরা হল ব্রাজিলের বৃহত্তম কন্টেন্ট পোর্টালগুলির মধ্যে একটি, প্রতি মাসে 50 মিলিয়নেরও বেশি অনন্য দর্শকদের সাথে বিনোদন, সংবাদ এবং খেলাধুলা অফার করে৷ টেরা তাদের বিষয়বস্তু ব্যবস্থাপনা সিস্টেমে (CMS) সামারিজার API এবং অনুবাদক API যোগ করেছে যাতে সাংবাদিকদের তাৎক্ষণিকভাবে পর্তুগিজ ভাষায় সংবাদের সংক্ষিপ্ত বিবরণ দিতে সহায়তা করে। সাংবাদিকরা তখন শৈলীগত বা নির্ভুলতার উদ্দেশ্যে কিছু সম্পাদনা করতে পারে এবং সহ-সৃষ্ট সারসংক্ষেপ প্রকাশ করতে পারে, এটি সকল পাঠকদের জন্য সহজলভ্য করে তোলে।

যদিও টেরার সিএমএস ইতিমধ্যেই একটি সার্ভার-সাইড এলএলএম ব্যবহার করে, দলটি সম্ভাব্য নতুন সুবিধাগুলির সাথে একটি স্বতন্ত্র পদ্ধতি হিসাবে ক্লায়েন্ট-সাইড এআই অন্বেষণ করেছে৷ তারা ক্রোমে সামারিজার এপিআই এবং জেমিনি ন্যানো তাদের সার্ভার-সাইড বাস্তবায়নের সাথে তুলনামূলক গুণমান খুঁজে পেয়েছে। ক্লায়েন্ট-সাইড সমাধানটি যখন অনুবাদক API-এর সাথে ব্যবহার করা হয় তখন ইতিবাচক ফলাফল দেয়৷

টেরা মূল সুবিধার কারণে ক্রোমের বিল্ট-ইন AI এর বাস্তবায়ন গ্রহণ করেছে। ক্লায়েন্ট-সাইড এআই খরচ সঞ্চয় এবং সরলীকৃত ডেটা শাসনের প্রস্তাব দিয়েছে। যদিও দলটি কিছু চ্যালেঞ্জের সম্মুখীন হয়েছিল, বিশেষ করে সামারিজার এপিআই-এর সাথে বিষয়বস্তু উইন্ডোর সীমাবদ্ধতাগুলি পরিচালনা করার জন্য, তারা সাবধানে প্রয়োগের অনুশীলনের মাধ্যমে এগুলি কাটিয়ে উঠতে সক্ষম হয়েছিল।

প্রাথমিকভাবে, টেরা তাদের প্রয়োজনীয়তা মোকাবেলা করার জন্য কোন সারাংশের ধরন এবং ভাগ করা প্রসঙ্গ সর্বোত্তমভাবে সজ্জিত ছিল তা নির্ধারণে চ্যালেঞ্জের সম্মুখীন হয়েছিল। পরীক্ষা-নিরীক্ষার মাধ্যমে, তারা আবিষ্কার করেছে যে, অনুবাদক এপিআই-এর সাথে পর্তুগিজ ভাষায় অনুরূপ মানের আউটপুট তৈরির জন্য স্পষ্ট এবং দরকারী ইংরেজি সারাংশ অত্যন্ত গুরুত্বপূর্ণ। অন্তর্নির্মিত AI খেলার মাঠ এই চ্যালেঞ্জগুলি নেভিগেট করার জন্য সহায়ক ছিল, কারণ টেরা প্রতিবার তাদের কোড রিফ্যাক্টর না করে দ্রুত তাদের ধারণাগুলি পরীক্ষা করতে পারে।

নিম্নলিখিত নমুনাটি দেখায় কিভাবে টেরা সামারিজার এপিআই চালু করে এবং এটি অনুপলব্ধ হলে ব্যবহারকারীদের সতর্ক করে।

async function summarizerByBuiltInAI(text) {
  if (!(Summarizer)) {
    //Alert users in Portuguese that "Summarizer API is not available"
    cms_alert(ALERT_TYPE_ERROR, "Summarizer API não está disponível.")
    return null
  }

  try {
    const availability = await Summarizer.availability();
    if (availability !== 'available') {
      cms_alert(ALERT_TYPE_ERROR, "Summarizer API não está disponível.")
      return null 
    }

    const summaryContext = "Avoid jargon, use correct grammar, focus on clarity," +
    "and ensure the user can grasp the articles purpose," +
    "without needing to open the original content.";

    const options = {
      sharedContext: summaryContext,
      type: 'teaser',
      format: 'plain-text',
      length: 'long',
    }

    if (availability === 'available') {
      const summarizer = await Summarizer.create(options);
      return await summarizer.summarize(text, {
        context: summaryContext
      })
    }
    // return the download of the Summarizer Model
    if(availability === 'downloadable'){
      return await Summarizer.create();
    }
  } catch (error) {
    //EN: "Error using the Summarizer API"
    cms_alert(ALERT_TYPE_ERROR, "Erro ao usar o Summarizer API.");
    console.error("Erro ao usar o Summarizer API:", error);
    return null
  }
}

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

async function translateTextByBuiltInAI(text, sourceLanguage, targetLanguage) {
  if (!('translation' in self && 'createTranslator' in self.translation)) {
    return null
  }

  try {
    const translator = await Translator.create({
      sourceLanguage,
      targetLanguage,
    })
    return await translator.translate(text)
  } catch (error) {
    throw error
  }
}
const text = `Title: ${contentTitle};\n\n Sub-title: ${contentSubtitle};\n\n Article content: ${plainText}.`;

const canTranslate = await Translator.availability({
  sourceLanguage: 'pt',
  targetLanguage: 'en',
})

if (canTranslate !== 'available') {
  if (canTranslate === 'downloadable') {
    try {
      await Translator.create({
        sourceLanguage: 'pt',
        targetLanguage: 'en',
      })
      //EN: "Language download completed successfully."
      cms_alert(ALERT_TYPE_OK, "Download do idioma concluído com sucesso.");
    } catch (downloadError) {
      //EN: "Error downloading the language required for translation."
      cms_alert(ALERT_TYPE_ERROR, "Erro ao realizar download do idioma necessário para tradução.");
      return
    }
  } else {
    //EN: "Translation is not available or not ready."
    cms_alert(ALERT_TYPE_ERROR, "A tradução não está disponível ou não está pronta.");
    return
  }
}

const translatedText = await translateTextByBuiltInAI(text, 'pt', 'en') 
const summarizedText = await summarizerByBuiltInAI(translatedText) 
const translatedBackText = await translateTextByBuiltInAI(summarizedText, 'en', 'pt')

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

সর্বোত্তম অনুশীলন

পর্যালোচনা ইনপুট টোকেন সীমা অতিক্রম করলে, এই প্রশমনগুলি অনুসরণ করুন:

  • API-তে একটি ছোট নমুনা (যেমন সাম্প্রতিক 4টি পর্যালোচনা) ব্যবহার করুন। এটি দ্রুত ফলাফল তৈরি করতে সাহায্য করে। ক্লায়েন্ট-সাইড সারমাইজেশন স্কেলিং সম্পর্কে আমাদের নির্দেশিকা পড়ুন।
  • QuotaExceededError ইনপুটে অনুরোধ করা টোকেন সম্পর্কে আরও তথ্য প্রদান করে। summarizer অবজেক্টের একটি inputQuota বৈশিষ্ট্য রয়েছে যা API-এর টোকেন সীমা নির্দেশ করে। ইনপুট সীমা ছাড়িয়ে গেলে এটি রিয়েল-টাইম প্রতিক্রিয়া এবং কার্যকারিতা নিষ্ক্রিয় করার অনুমতি দেয়।

আপনি একটি হাইব্রিড পদ্ধতি বিবেচনা করতে চাইতে পারেন, সমস্ত ব্যবহারকারীদের জন্য একটি বিরামহীন অভিজ্ঞতা নিশ্চিত করতে। প্রথমবার একটি অন্তর্নির্মিত AI API কল করা হলে, ব্রাউজারটিকে অবশ্যই মডেলটি ডাউনলোড করতে হবে।

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

আপনার সর্বদা একটি বন্ধুত্বপূর্ণ এবং যোগাযোগমূলক ইন্টারফেস তৈরি করার চেষ্টা করা উচিত:

  • মডেল ডাউনলোডের জন্য একটি অগ্রগতি বার প্রয়োগ করুন এবং প্রতিক্রিয়া বিলম্ব হ্রাস করুন।
  • মডেল ডাউনলোড সম্পর্কে স্বচ্ছতা বিবেচনা করুন. ব্রাইট সাইটগুলি স্বচ্ছতা এবং সম্পদ ব্যবহারের সম্মতি দেওয়ার জন্য মডেল ডাউনলোড সম্পর্কে ব্যবহারকারীদের অবহিত করেছে। এইভাবে, ব্যবহারকারীরা এগিয়ে যাওয়ার আগে গ্রহণ বা প্রত্যাখ্যান করতে পারে।

উপসংহার এবং সুপারিশ

ব্রাইট সাইটস এবং টেরার উদাহরণগুলি কন্টেন্ট অ্যাক্সেসিবিলিটি এবং পাঠকের ব্যস্ততা বাড়াতে সামারিজার এপিআই-এর মান প্রদর্শন করে। এই ক্লায়েন্ট-সাইড API ব্যবহার করে, এই প্ল্যাটফর্মগুলি অতিরিক্ত ব্যবসায়িক খরচ ছাড়াই এবং সরলীকৃত ডেটা শাসন সহ পড়ার অভিজ্ঞতা এবং ব্যক্তিগতকরণকে উন্নত করেছে। Summarizer API-এর মতই, সমস্ত অন্তর্নির্মিত AI API ব্যবহারিক ক্লায়েন্ট-সাইড AI সক্ষম করে।

ভাবছেন কিভাবে সামারাইজার API অন্যান্য ব্যবহারের ক্ষেত্রে সাহায্য করতে পারে? আমরা এটাও শেয়ার করেছি যে কীভাবে সামারাইজার API redBus এবং Miravia-কে সহায়ক ব্যবহারকারী পর্যালোচনা সারাংশ তৈরি করতে সাহায্য করে

আপনি কি এই API গুলি দিয়ে নতুন কিছু তৈরি করছেন? X-এ @ChromiumDev-এ অথবা LinkedIn-এ ডেভেলপারদের জন্য Chromium-এ আমাদের সাথে শেয়ার করুন।

সম্পদ

স্বীকৃতি

টেরা থেকে গুইলহার্মে মোসার এবং ফার্নান্দো ফিশার , CWI-এর অ্যালাইন সুজা , ব্রায়ান আলফোর্ড , কেভাল প্যাটেল , জ্যাক রিলি এবং ব্রাইটসাইটস ইঞ্জিনিয়ারিং দল, স্বেথা গোপালকৃষ্ণান , আলেকজান্দ্রা ক্লেপার , থমাস স্টেইনার এবং কেনজি বাহেক্সকে ধন্যবাদ এই নথিটি লিখতে এবং পর্যালোচনা করতে সাহায্য করার জন্য।