Summarizer API সাহায্য করে redBus এবং Miravia-কে সাহায্য করে ব্যবহারকারীর পর্যালোচনার সারাংশ তৈরি করতে, The Summarizer API সাহায্য করে redBus এবং Miravia-কে সাহায্য করে ব্যবহারকারীর পর্যালোচনার সারাংশ তৈরি করতে, The Summarizer API সাহায্য করে redBus এবং Miravia-কে সাহায্য করে ব্যবহারকারীর পর্যালোচনার সারাংশ তৈরি করতে, The Summarizer API সাহায্য করে redBus এবং Miravia ব্যবহারকারীর পর্যালোচনা তৈরি করতে সাহায্য করে

সিসিলিয়া কং
Cecilia Cong
হাদিয়ান আন্দিকা
Hadyan Andika

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

ব্যবহারকারীর পর্যালোচনা সহ ওয়েবসাইটগুলি, যেমন ইকমার্স বা ভ্রমণ সাইটগুলিতে প্রায়ই প্রচুর পরিমাণে তথ্য থাকে৷ এটি ব্যবহারকারীদের একটি ক্রয়ের বিষয়ে সিদ্ধান্ত নেওয়ার জন্য প্রচুর পর্যালোচনার মাধ্যমে যাচাই করা সময়সাপেক্ষ করে তুলতে পারে। পর্যালোচনা সারাংশ প্রদান ব্যবহারকারীদের প্রতিক্রিয়া বুঝতে এবং সময় বাঁচাতে সাহায্য করতে পারে। redBus এবং Miravia কীভাবে সিদ্ধান্ত গ্রহণ এবং ক্রয়ের অভিজ্ঞতা উন্নত করতে সামারিজার API ব্যবহার করে তা জানুন।

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

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

redBus গ্রাহকদের সেরা বাস বিকল্পের সিদ্ধান্ত নিতে সাহায্য করে

redBus হল ভারতের বৃহত্তম বাস প্রদানকারী, 30 মিলিয়নেরও বেশি গ্রাহকের সাথে, দেশব্যাপী সংযুক্ত প্রায় 10,000টি শহর ও শহরে বাস পরিষেবা প্রদান করে। ডেটা এবং প্রতিক্রিয়ার মাধ্যমে, redBus বুঝতে পেরেছে যে ব্যবহারকারী-উত্পাদিত পর্যালোচনাগুলি গ্রাহকদের তাদের ভ্রমণের প্রয়োজনের জন্য কোন রুট এবং কোন বাসটি সেরা তা নির্ধারণ করতে সহায়তা করার ক্ষেত্রে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। redBus রিভিউ একটি উচ্চ ভলিউম পায়, এবং প্রতিটি পর্যালোচনা সঠিক আগমন এবং প্রস্থান পয়েন্ট এবং সময় নির্দিষ্ট।

গ্রাহকদের নির্দিষ্ট শহর বা রুটের জন্য উচ্চ-স্তরে বুঝতে সাহায্য করার জন্য, তারা প্রাসঙ্গিক পর্যালোচনা থেকে মূল অন্তর্দৃষ্টি উপস্থাপন করার জন্য Summarizer API ব্যবহার করে।

একজন গ্রাহক ব্যাঙ্গালোর থেকে ম্যাঙ্গালুরু যাওয়ার পথ খুঁজছেন। সংক্ষিপ্তকারী উপলব্ধ পর্যালোচনাগুলি দেখে এবং গ্রাহকদের তাদের ভ্রমণের জন্য সেরা বাস খুঁজে পেতে সাহায্য করার জন্য একটি দরকারী ওভারভিউ ক্যাপচার করে৷

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

— অমিত কুমার, সিনিয়র ইঞ্জিনিয়ারিং ম্যানেজার, রেডবাস

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

কার্যকরী সারাংশ তৈরি করতে, redBus গ্রাহকের পর্যালোচনা ছাড়াও Summarizer API-তে নিম্নলিখিত প্রসঙ্গ সরবরাহ করে:

//Context to provide a useful summary
const promptContext =
  'Summarize the following reviews in 30 words or less.' +
  'Focus on key positives and negatives, such as comfort, maintenance,' +
  'pricing, and cleanliness. Reviews are separated by {end}.' +
  'Give the summary in just one paragraph.';

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

একটি সংক্ষিপ্ত কোড নমুনা দেখুন যা সংক্ষিপ্তসারের প্রাপ্যতা পরীক্ষা করে, প্রসঙ্গ দেয় এবং ব্যবহারকারীর অনুসন্ধান প্রশ্নের উপর ভিত্তি করে পর্যালোচনাগুলি পুনরুদ্ধার করে৷

// The Summarizer API is available
if ('Summarizer' in self) {
  try {
    const available = await Summarizer.availability();
    let summarizer;
    if (available === 'unavailable') {
      return null;
    }
    if (available === 'available') {
      //model is already available, use immediately
      summarizer = await Summarizer.create();
    } else {
      //trigger model download and wait
      summarizer = await Summarizer.create();
    }

    // Context to provide a useful summary
    const promptContext =
      'Summarize the following reviews in 30 words or less.' +
      'Focus on key positives and negatives, such as comfort, maintenance,' +
      'pricing, and cleanliness. Reviews are separated by {end}.' +
      'Give the summary in just one paragraph.';

    // Retrieve the reviews to be summarized based on user's search query
    let reviews = getIndividualBusReviews();
    if (reviews) {
      const reviewSummary = await summarizer.summarize(reviews, {
        context: promptContext
      });
    }
  } catch (e) {
    console.error("SUMMARIZER_API_ERROR: ", e);
    return null
  }
}

ব্যাঙ্গালোর থেকে ম্যাঙ্গালুরু পর্যন্ত অনুসন্ধানের উদাহরণ সহ, সারাংশের আউটপুট নিম্নরূপ:

<Bus Provider X> সাধারনত আরাম, পরিচ্ছন্নতা এবং কর্মীদের পরিষেবার জন্য ইতিবাচক পর্যালোচনা পেয়েছে। কিছু অভিজ্ঞ ছোটখাটো সমস্যা যেমন বিলম্ব, ড্রাইভারের আচরণ (অভদ্র), সুযোগ-সুবিধার অভাব (লাইভ ট্র্যাকিং, কম্বল), এবং অস্বস্তি (সিটের আকার, খারাপ শক শোষণকারী)।

এই পর্যালোচনাটি একটি সংক্ষিপ্ত অনুচ্ছেদে ইতিবাচক এবং নেতিবাচক সহ অনুরোধ করা প্রয়োজনীয়তাগুলি পূরণ করে, যা 308টি উপলব্ধ পৃথক পর্যালোচনার চেয়ে পড়া অনেক সহজ।

মিরাভিয়া ইকমার্স রিভিউ সংক্ষিপ্ত করেছে

মিরাভিয়া হল স্পেনের একটি নেতৃস্থানীয় ইকমার্স প্ল্যাটফর্ম, লক্ষ লক্ষ মাসিক সক্রিয় ব্যবহারকারী। যখনই ব্যবহারকারীরা পর্যালোচনাগুলি ফিল্টার করে (উদাহরণস্বরূপ, পণ্যের রেটিং দ্বারা), একটি নতুন সারাংশ তৈরি হয়৷ এটি গ্রাহকের প্রতিক্রিয়ার একটি সংক্ষিপ্ত ওভারভিউ প্রদান করে, উদ্বেগ এবং সুপারিশ হাইলাইট করে।

ব্যবহারকারীরা বিভিন্ন রেটিং এর জন্য পণ্য পর্যালোচনা সারাংশ তৈরি করতে পারেন।

"আগে, পণ্যের পর্যালোচনাগুলির মধ্যে মূল সুবিধা এবং অসুবিধাগুলি বোঝার জন্য ব্যবহারকারীদের বিস্তারিত পৃষ্ঠায় অসংখ্য পৃথক মন্তব্যের মাধ্যমে পড়তে হত৷ ব্যবহারকারীদের সামগ্রিক গ্রাহকের অনুভূতি দ্রুত উপলব্ধি করতে সহায়তা করার জন্য, আমরা Summarizer API চালু করেছি৷ যখনই একজন ব্যবহারকারী পর্যালোচনাগুলি ফিল্টার করে তখন এই সারাংশটি গতিশীলভাবে আপডেট হয় (যেমন, তারকা রেটিং বা অন্যান্য দ্রুত কম্প্রিটেরিয়া প্রদান করে) ক্রেতার প্রতিক্রিয়া।"

— জিয়া লিয়াং, সিনিয়র সফটওয়্যার ইঞ্জিনিয়ার, মিরাভিয়া

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

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

প্রথমত, মিরাভিয়া বৈশিষ্ট্য এবং ডিভাইসের সামঞ্জস্যের জন্য পরীক্ষা করে।

// Compatibility check for device with built-in AI
export const deviceCheck = async () => {
  // Query the browser's AI capabilities
  const availability = await Summarizer.availability();

  // Case 1: Device doesn't support AI summarization
  if (availability === 'unavailable') {
    return {
      summarizationAvailable: false,
      message:
        'AI summarization tools are not supported on this device, or the appropriate permissions have not be set.',
    };
  }

  // Case 2: Device supports AI but requires model download
  if (availability === 'downloadable') {
    // Try to trigger an installation
    Summarizer.create();

    return {
      summarizationAvailable: false,
      message: 'Installing in the background. This may take a few minutes...',
    };
  }

  // Case 3: Device supports AI summarization
  return {
    summarizationAvailable: true,
    message: 'Ready for use.',
  };
};

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

/**
 * Summarizes a list of reviews using Chrome's Built-in AI
 * @param {Array<string>} reviewContentList - Array of review texts to summarize
 * @returns {Promise<string>} The generated summary text
 * @throws {Error} If summarization is not available or fails
 */
export const reviewSummarize = async (reviewContentList) => {
  // Validate input
  if (!Array.isArray(reviewContentList) || !reviewContentList.length) {
    throw new Error('Please provide a non-empty array of reviews to summarize');
  }

  // Check device compatibility
  const { summarizationAvailable, message } = await deviceCheck();

  if (summarizationAvailable) {
    try {
      // Configure and create the summarizer with appropriate parameters
      const summarizer = await Summarizer.create({
        type: 'tl;dr',
        length: 'short',
        sharedContext:
          'Summarize the given user reviews. Maintain a polite and formal tone.',
      });

      // Generate the summary from the joined review texts
      const summary = await summarizer.summarize(reviewContentList.join('. '));

      // Return the generated summary
      return summary;
    } catch (error) {
      // Handle any errors during summarization
      throw new Error(`Summarization failed: ${error.message}`);
    }
  } else {
    // If summarization is not available, throw an error with the message from deviceCheck
    throw new Error(
      message ||
        'AI summarization tools are not supported on this device or browser.'
    );
  }
};

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

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

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

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

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

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

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

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

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

ভাবছেন কিভাবে সামারাইজার API অন্যান্য ব্যবহারের ক্ষেত্রে সাহায্য করতে পারে? সামারাইজার API কীভাবে নিবন্ধের ব্যস্ততা বাড়াতে সাহায্য করে তাও আমরা শেয়ার করেছি।

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

সম্পদ

স্বীকৃতি

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