প্রকাশিত: 11 নভেম্বর, 2024, সর্বশেষ আপডেট: জুলাই 30, 2025
ব্যাখ্যাকারী | ওয়েব | এক্সটেনশন | ক্রোম স্ট্যাটাস | অভিপ্রায় |
---|---|---|---|---|
MDN | দেখুন | জাহাজের অভিপ্রায় |
আপনি আপনার ব্যবহারকারীদের দীর্ঘ নিবন্ধ, জটিল নথি, বা এমনকি প্রাণবন্ত চ্যাট কথোপকথনগুলিকে সংক্ষিপ্ত এবং অন্তর্দৃষ্টিপূর্ণ সারসংক্ষেপে ডিস্টিল করার ক্ষমতা দিতে পারেন।
Summarizer API বিভিন্ন দৈর্ঘ্য এবং বিন্যাসে বিভিন্ন ধরনের সারাংশ তৈরি করতে ব্যবহার করা যেতে পারে, যেমন বাক্য, অনুচ্ছেদ, বুলেট পয়েন্ট তালিকা এবং আরও অনেক কিছু। আমরা বিশ্বাস করি যে এই API নিম্নলিখিত পরিস্থিতিতে দরকারী:
- একটি নিবন্ধ বা একটি চ্যাট কথোপকথন মূল পয়েন্ট সারসংক্ষেপ.
- নিবন্ধের জন্য শিরোনাম এবং শিরোনাম প্রস্তাব করা।
- একটি দীর্ঘ পাঠ্যের একটি সংক্ষিপ্ত এবং তথ্যপূর্ণ সারাংশ তৈরি করা।
- একটি বই পর্যালোচনার উপর ভিত্তি করে একটি বইয়ের জন্য একটি টিজার তৈরি করা হচ্ছে৷
শুরু করুন
সামারিজার API Chrome 138 স্থিতিশীল থেকে উপলব্ধ।
আপনি এই API ব্যবহার করার আগে, Google এর জেনারেটিভ AI নিষিদ্ধ ব্যবহারের নীতি স্বীকার করুন৷
ব্রাউজারটি সামারিজার API সমর্থন করে কিনা তা দেখতে বৈশিষ্ট্য সনাক্তকরণ চালান।
if ('Summarizer' in self) {
// The Summarizer API is supported.
}
হার্ডওয়্যার প্রয়োজনীয়তা পর্যালোচনা করুন
নিম্নলিখিত প্রয়োজনীয়তাগুলি বিকাশকারী এবং ব্যবহারকারীদের জন্য বিদ্যমান যারা Chrome-এ এই APIগুলি ব্যবহার করে বৈশিষ্ট্যগুলি পরিচালনা করে৷ অন্যান্য ব্রাউজারগুলির বিভিন্ন অপারেটিং প্রয়োজনীয়তা থাকতে পারে।
ল্যাঙ্গুয়েজ ডিটেক্টর এবং ট্রান্সলেটর এপিআই ডেস্কটপে Chrome-এ কাজ করে। এই APIগুলি মোবাইল ডিভাইসে কাজ করে না। প্রম্পট API, Summarizer API, Writer API, এবং Rewriter API Chrome-এ কাজ করে যখন নিম্নলিখিত শর্তগুলি পূরণ হয়:
- অপারেটিং সিস্টেম : উইন্ডোজ 10 বা 11; macOS 13+ (ভেন্টুরা এবং তার পরে); বা লিনাক্স। Android, iOS এবং ChromeOS-এর জন্য Chrome এখনও জেমিনি ন্যানো ব্যবহার করে এমন API দ্বারা সমর্থিত নয়৷
- সঞ্চয়স্থান : আপনার Chrome প্রোফাইলে থাকা ভলিউমে কমপক্ষে 22 GB খালি স্থান।
- GPU : কঠোরভাবে 4 GB এর বেশি VRAM।
- নেটওয়ার্ক : সীমাহীন ডেটা বা একটি আনমিটার সংযোগ।
ব্রাউজার মডেল আপডেট করার সাথে সাথে জেমিনি ন্যানো এর সঠিক আকার পরিবর্তিত হতে পারে। বর্তমান আকার নির্ধারণ করতে, chrome://on-device-internals
যান এবং মডেল স্ট্যাটাসে যান। মডেলের আকার নির্ধারণ করতে তালিকাভুক্ত ফাইল পাথ খুলুন।
মডেল ডাউনলোড
Summarizer API উচ্চ-মানের সারাংশ তৈরি করতে প্রশিক্ষিত একটি মডেল ব্যবহার করে। এপিআইটি ক্রোমের মধ্যে তৈরি করা হয়েছে এবং জেমিনি ন্যানো মডেলটি প্রথমবার ডাউনলোড করা হয়েছে যখন কোনো ওয়েবসাইট এই API ব্যবহার করে।
মডেলটি ব্যবহারের জন্য প্রস্তুত কিনা তা নির্ধারণ করতে, অ্যাসিঙ্ক্রোনাস Summarizer.availability()
ফাংশনটি কল করুন। যদি availability()
এর প্রতিক্রিয়া downloadable
হয়, তাহলে ডাউনলোডের অগ্রগতি সম্পর্কে ব্যবহারকারীকে জানাতে শুনুন, কারণ এতে সময় লাগতে পারে।
const availability = await Summarizer.availability();
মডেল ডাউনলোড ট্রিগার করতে এবং সারাংশ তৈরি করতে, ব্যবহারকারীর সক্রিয়করণ পরীক্ষা করুন, তারপর অ্যাসিঙ্ক্রোনাস Summarizer.create()
ফাংশনটি কল করুন৷
// Proceed to request batch or streaming summarization
const summarizer = await Summarizer.create({
monitor(m) {
m.addEventListener('downloadprogress', (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
}
});
API ফাংশন
create()
ফাংশন আপনাকে আপনার প্রয়োজন অনুযায়ী একটি নতুন সারসংক্ষেপ বস্তু কনফিগার করতে দেয়। এটি নিম্নলিখিত পরামিতিগুলির সাথে একটি ঐচ্ছিক options
অবজেক্ট নেয়:
-
sharedContext
: অতিরিক্ত শেয়ার করা প্রসঙ্গ যা সারসংক্ষেপকে সাহায্য করতে পারে। -
type
: অনুমোদিত মানkey-points
(ডিফল্ট),tldr
,teaser
এবংheadline
সহ সংক্ষিপ্তসারের ধরন। বিস্তারিত জানার জন্য নিম্নলিখিত টেবিল দেখুন. -
format
: সংক্ষিপ্তকরণের বিন্যাস, অনুমোদিত মানmarkdown
(ডিফল্ট) এবংplain-text
সহ। -
length
: সংক্ষিপ্তকরণের দৈর্ঘ্য, অনুমোদিত মানshort
,medium
(ডিফল্ট) এবংlong
। এই দৈর্ঘ্যের অর্থ অনুরোধ করাtype
উপর নির্ভর করে পরিবর্তিত হয়। উদাহরণস্বরূপ, Chrome এর বাস্তবায়নে, একটি সংক্ষিপ্ত কী-পয়েন্ট সারাংশে তিনটি বুলেট পয়েন্ট থাকে এবং একটি সংক্ষিপ্ত সারাংশ হল একটি বাক্য।
একবার সেট হয়ে গেলে পরামিতি পরিবর্তন করা যাবে না। আপনার যদি পরামিতিগুলিতে পরিবর্তন করার প্রয়োজন হয় তবে একটি নতুন সংক্ষিপ্ত বস্তু তৈরি করুন।
নিম্নলিখিত সারণী বিভিন্ন ধরনের সারাংশ এবং তাদের সংশ্লিষ্ট দৈর্ঘ্য প্রদর্শন করে। দৈর্ঘ্য সর্বাধিক সম্ভাব্য মান উপস্থাপন করে, যেমন কখনও কখনও, ফলাফল ছোট হতে পারে।
টাইপ | অর্থ | দৈর্ঘ্য | ||||||
---|---|---|---|---|---|---|---|---|
"tldr" | সারাংশ সংক্ষিপ্ত এবং বিন্দু হতে হবে, ইনপুট একটি দ্রুত ওভারভিউ প্রদান, একটি ব্যস্ত পাঠক জন্য উপযুক্ত. |
| ||||||
"teaser" | সারাংশ ইনপুটের সবচেয়ে আকর্ষণীয় বা কৌতূহলী অংশগুলিতে ফোকাস করা উচিত, পাঠককে আরও পড়ার জন্য আকৃষ্ট করার জন্য ডিজাইন করা হয়েছে। |
| ||||||
"key-points" | সারাংশ ইনপুট থেকে সবচেয়ে গুরুত্বপূর্ণ পয়েন্ট বের করা উচিত, একটি বুলেটেড তালিকা হিসাবে উপস্থাপিত। |
| ||||||
"headline" | সারাংশে কার্যকরভাবে একটি নিবন্ধের শিরোনামের বিন্যাসে একটি একক বাক্যে ইনপুটের মূল পয়েন্টটি থাকা উচিত। |
|
উদাহরণস্বরূপ, আপনি মার্কডাউনে একটি মাঝারি দৈর্ঘ্যের মূল পয়েন্টগুলি আউটপুট করার জন্য একটি সংক্ষিপ্তসার শুরু করতে পারেন।
const options = {
sharedContext: 'This is a scientific article',
type: 'key-points',
format: 'markdown',
length: 'medium',
monitor(m) {
m.addEventListener('downloadprogress', (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
}
};
const availability = await Summarizer.availability();
if (availability === 'unavailable') {
// The Summarizer API isn't usable.
return;
}
// Check for user activation before creating the summarizer
if (navigator.userActivation.isActive) {
const summarizer = await Summarizer.create(options);
}
সামারাইজার চালান
সামারাইজার চালানোর দুটি উপায় রয়েছে: স্ট্রিমিং এবং ব্যাচ (নন-স্ট্রিমিং)।
ব্যাচ সারসংক্ষেপ
ব্যাচ সংক্ষিপ্তকরণের সাথে, মডেলটি সম্পূর্ণরূপে ইনপুট প্রক্রিয়া করে এবং তারপর আউটপুট তৈরি করে।
একটি ব্যাচ সারাংশ পেতে, summarize()
ফাংশন কল করুন. প্রথম যুক্তি হল পাঠ্য যা আপনি সংক্ষিপ্ত করতে চান। দ্বিতীয়, ঐচ্ছিক যুক্তি হল একটি context
ক্ষেত্র সহ একটি বস্তু। এই ক্ষেত্রটি আপনাকে পটভূমির বিবরণ যোগ করতে দেয় যা সারসংক্ষেপকে উন্নত করতে পারে।
const longText = document.querySelector('article').innerHTML;
const summary = await summarizer.summarize(longText, {
context: 'This article is intended for a tech-savvy audience.',
});
স্ট্রিমিং সারাংশ
স্ট্রিমিং সারাংশ রিয়েল-টাইমে ফলাফল অফার করে। ইনপুট যোগ এবং সামঞ্জস্য করার সাথে সাথে আউটপুট ক্রমাগত আপডেট হয়। একটি স্ট্রিমিং সারাংশ পেতে, summarize summarizeStreaming()
summarize()
এ কল করুন।
const longText = document.querySelector('article').innerHTML;
const stream = summarizer.summarizeStreaming(longText, {
context: 'This article is intended for junior developers.',
});
for await (const chunk of stream) {
console.log(chunk);
}
ডেমো
আপনি Summarizer API প্লেগ্রাউন্ডে Summarizer API ব্যবহার করে দেখতে পারেন।
অনুমতি নীতি, iframes, এবং ওয়েব কর্মী
ডিফল্টরূপে, Summarizer API শুধুমাত্র শীর্ষ-স্তরের উইন্ডোতে এবং তাদের একই-অরিজিন আইফ্রেমে উপলব্ধ। পারমিশন পলিসি allow=""
অ্যাট্রিবিউট ব্যবহার করে এপিআই-এর অ্যাক্সেস ক্রস-অরিজিন আইফ্রেমগুলিতে অর্পণ করা যেতে পারে:
<!--
The hosting site at https://main.example.com can grant a cross-origin iframe
at https://cross-origin.example.com/ access to the Summarizer API by
setting the `allow="summarizer"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="summarizer"></iframe>
অনুমতি নীতির স্থিতি পরীক্ষা করার জন্য প্রতিটি কর্মীর জন্য একটি দায়িত্বশীল নথি প্রতিষ্ঠার জটিলতার কারণে, সামারিজার API আপাতত ওয়েব ওয়ার্কারগুলিতে উপলব্ধ নেই৷
প্রমিতকরণ প্রচেষ্টা
আমরা ক্রস-ব্রাউজার সামঞ্জস্যের জন্য Summarizer API-কে মানসম্মত করার জন্য কাজ করছি।
সামারাইজার এপিআই এবং অন্যান্য রাইটিং অ্যাসিসট্যান্স এপিআই W3C ওয়েবএমএল ওয়ার্কিং গ্রুপ দ্বারা গৃহীত হয়েছে। আমরা Mozilla এবং WebKit কে তাদের স্ট্যান্ডার্ড পজিশনের জন্য জিজ্ঞাসা করেছি।
মতামত শেয়ার করুন
সামারিজার API দিয়ে আপনি কী তৈরি করছেন তা আমরা দেখতে চাই। X , YouTube , এবং LinkedIn- এ আমাদের সাথে আপনার ওয়েবসাইট এবং ওয়েব অ্যাপ্লিকেশন শেয়ার করুন।
Chrome এর বাস্তবায়ন সম্পর্কে প্রতিক্রিয়ার জন্য, একটি বাগ রিপোর্ট বা একটি বৈশিষ্ট্য অনুরোধ ফাইল করুন৷