“লং-কনটেক্সট এআই” (Long-context AI) এর ব্যাপারটা হল, সবাই হলফ করে বলে যে তাদের কাছে এটা আছে—যতক্ষণ না আপনি ৪৭ নম্বর পৃষ্ঠা সম্পর্কে বিস্তারিত প্রশ্ন করছেন। তারপর, হঠাৎ করেই, এর স্মৃতি একটা গোল্ডফিশের মতো হয়ে যায় যার মাথায় আঘাত লেগেছে। DeepSeek-OCR এই জগাখিচুড়ির ঠিক মাঝখানে এসে একটা সরল-যদি-সত্য দাবি করে: যা গুরুত্বপূর্ণ তা কম্প্রেস করুন, গঠন বজায় রাখুন এবং এমনভাবে টোকেন পোড়ানো বন্ধ করুন যেন এটা ২০২৩ সাল। প্রতিশ্রুতিটা এমন নয় যে “OCR কিন্তু আরও ভালো।” এটা হল OCR যা লেআউটকে সম্মান করে এবং আপনার কনটেক্সট উইন্ডোকে নয়েজ দিয়ে ফুলিয়ে দেওয়া থেকে বিরত থাকে।
এবং হ্যাঁ, বেশিরভাগ তথাকথিত লং-কনটেক্সট পাইপলাইনগুলো ঠিক এই জায়গাতেই ভুল করে। তারা মডেলের মধ্যে কাঁচা টেক্সট ঠেসে দেয় এবং দিন শেষ বলে ঘোষণা করে। সেই দিনের সমাপ্তি ঘটে বিভ্রমের মধ্যে দিয়ে।
আসুন, DeepSeek-OCR-কে কীভাবে একটি বাস্তব লং-কনটেক্সট পাইপলাইনে একত্রিত করা যায় তা খুঁটিয়ে দেখি—যেটা আসলে স্কেল করে, চোখের জল না ফেলে কম্পিউট বিল পরিশোধ করে এবং PDF-এ টেবিল, পাদটীকা অথবা, ঈশ্বর বাঁচান, আইনি প্রদর্শনী থাকলে ভেঙে পড়ে না।
DeepSeek-OCR কেন আলাদা (এবং দরকারি)
- লেআউট হল ডেটা: দীর্ঘ ডকুমেন্ট শুধু টেক্সট নয়; এগুলো স্থানিক যুক্তি। হেডিং, কলাম, টেবিল, চিত্রের ক্যাপশন—সবকিছুরই একটা অর্থ আছে। DeepSeek-OCR সেই গঠনকে প্রথম শ্রেণির নাগরিক হিসেবে সংরক্ষণ করতে চায়, যা আসলে প্লট না হারিয়ে শত শত পৃষ্ঠা জুড়ে যুক্তি দেওয়ার জন্য লং-কনটেক্সট মডেলগুলোর প্রয়োজন।
- লোবোটমি (lobotomy) ছাড়া কম্প্রেশন: সবকিছুকে একটি ৮K উইন্ডোতে চেপে ঢুকানোটা মূল উদ্দেশ্য নয়। মূল উদ্দেশ্য হল সংকেত ধরে রাখা—ঘন, structured, সহজে নেভিগেট করা যায়—এবং বাকি খরচ কমানো।
- এটা ডাউনস্ট্রিম ধাপগুলোর সাথে ভালোভাবে কাজ করে: RAG, সামারাইজেশন, লং-কনটেক্সট ট্রান্সফরমার, এমনকি এজেন্টও। আপনার OCR লেয়ার যত ভালো হবে, আপনার রিট্রিভাল (retrieval) এবং রিজনিং (reasoning) লেয়ারগুলোকে এর জন্য তত কম ক্ষমা চাইতে হবে।
আপনি যা তৈরি করছেন: মেরুদণ্ডসহ একটি লং-কনটেক্সট পাইপলাইন
পাইপলাইনটিকে পাঁচটি অংশ হিসেবে ভাবুন, প্রতিটি একটি কাজ ভালোভাবে করছে:
- ইনজেস্ট (ingest) এবং নরমালাইজ (normalize)
- ইনপুট প্রকার: PDF (born-digital এবং স্ক্যান করা), ছবি, স্ক্যানার থেকে TIFF, অগোছালো অফিসের এক্সপোর্ট।
- প্রিপ্রসেসিং: ডি-স্কেউ (de-skew), ডিনয়েজ (denoise), প্রয়োজনে বাইনারাইজ (binarize) করুন এবং পৃষ্ঠাগুলি সামঞ্জস্যপূর্ণভাবে বিভক্ত করুন। প্রতি-পৃষ্ঠার মেটাডেটা রাখুন—পৃষ্ঠা নম্বর, উৎস ফাইল, বিভাগ অ্যাঙ্কর।
- আউটপুট টার্গেট: একটি অনুমানযোগ্য ফরম্যাটে (PNG বা JPEG) স্থিতিশীল DPI সহ ছবি বা পৃষ্ঠা ক্যানভাস।
- স্ট্রাকচার (structure) সহ OCR
- বের করার জন্য প্রতিটি পৃষ্ঠায় DeepSeek-OCR চালান:
- বাউন্ডিং বক্স (bounding boxes) সহ টেক্সট স্প্যান (x, y, width, height)
- ব্লক প্রকার: হেডিং, প্যারাগ্রাফ, তালিকা, টেবিল, চিত্র, পাদটীকা
- পড়ার ক্রম এবং হায়ারারকিক্যাল স্ট্রাকচার (document tree)
- কাঁচা টেক্সট এবং লেআউট বৈশিষ্ট্য উভয়ই রাখুন। যদি এটি টোকেন-লেভেল ম্যাপ এক্সপোর্ট করতে পারে তবে সেটিও রাখুন। টেবিলগুলো structured (CSV/HTML) হওয়া উচিত এবং তাদের কোঅর্ডিনেটগুলোর সাথে লিঙ্ক করা উচিত।
- লেআউট-অ্যাওয়্যার কম্প্রেশন
- কৌশল: নির্বোধ টোকেন ছেঁটে ফেলার পরিবর্তে ব্লক গুরুত্ব অনুসারে কম্প্রেস করুন।
- হিউরিস্টিকস (heuristics) যা আসলে কাজ করে:
- হেডিং এবং বিভাগ সারসংক্ষেপ: আক্ষরিকভাবে রাখুন।
- প্যারাগ্রাফ: একটি লাইটওয়েট র্যাঙ্কার ব্যবহার করে বাক্য-স্তরের নির্বাচন ({BM25}/{ColBERT}-স্টাইল বা একটি ছোট স্থানীয় এনকোডার)।
- টেবিল: হেডার এবং টপ-{k} পরিসংখ্যানগতভাবে ভিন্ন সারি সংরক্ষণ করুন; সংখ্যাসূচক কলামগুলি সম্পূর্ণরূপে অক্ষত রাখুন; সম্পূর্ণ টেবিলটিকে আউট-অফ-ব্যান্ডে রাখুন।
- ক্যাপশন এবং পাদটীকা: রাখুন; কম টোকেন, বেশি অর্থ।
- দুটি আর্টিফ্যাক্ট তৈরি করুন:
- একটি কমপ্যাক্ট, লেআউট-অ্যাওয়্যার ন্যারেটিভ কনটেক্সট: মূল টোকেনের ১০-২০%, সুসংগত, নেভিগেটযোগ্য।
- একটি সাইডকার ইনডেক্স: কম্প্রেসড স্প্যান থেকে ফুল-ফিডেলিটি ব্লকের দিকে নির্দেশক।
- রিট্রিভাল (retrieval) এবং রাউটিং (routing) (RAG যেন একজন প্রাপ্তবয়স্কের কাজ)
- বাক্য/অনুচ্ছেদে সিমেন্টিক সার্চের জন্য ডেন্স ভেক্টর।
- সঠিক লুকআপের জন্য স্পার্স ({BM25})—কোড, উদ্ধৃতি, শনাক্তকারী।
- টেবিল-অ্যাওয়্যার ইনডেক্স: সংখ্যাসূচক প্রশ্নের জন্য প্রতি-সারি এবং প্রতি-সেল এম্বেডিং।
- কীওয়ার্ড-ভারী প্রশ্ন → প্রথমে স্পার্স, ডেন্স দিয়ে পুনরায় র্যাঙ্ক করুন।
- বিশ্লেষণাত্মক বা “কেন” প্রশ্ন → প্রথমে ডেন্স, স্পার্স অ্যাঙ্কর দিয়ে পুনরায় র্যাঙ্ক করুন।
- টেবিল/গণিত প্রশ্ন → সরাসরি টেবিল ইনডেক্স, সারি/কলাম প্রোভেনেন্স (provenance) সহ।
- সামগ্রিক প্রম্পটের জন্য লং-কনটেক্সট {LLM} (নীতি নথি, {RFP}, গবেষণাপত্র)।
- মাল্টি-হপ কাজের জন্য স্টেপওয়াইজ, টুল-কলিং এজেন্ট: রিট্রিভ → বিশ্লেষণ → যাচাই → উদ্ধৃত করুন।
- মডেলের মধ্যে পুরো কমপ্যাক্ট ন্যারেটিভকে কখনও ব্লাস্ট (blast) করবেন না। জাস্ট-ইন-টাইম কনটেক্সট একত্রিত করুন: উদ্দেশ্য অনুসারে শীর্ষ বিভাগ, প্রাসঙ্গিক টেবিল এবং কাছাকাছি অনুচ্ছেদ। ব্রেডক্রাম্বস (বিভাগের নাম, পৃষ্ঠা রেফ, চিত্রের আইডি) দিয়ে সেলাই করুন।
যা বেরিয়ে আসে: রসিদসহ উত্তর। প্রতিটি দাবি একটি ব্লক আইডি, পৃষ্ঠা নম্বর এবং কোঅর্ডিনেট রেঞ্জের সাথে লিঙ্ক করে যা আপনি মূল {PDF}-এ হাইলাইট করতে পারেন। এভাবেই আপনি বিশ্বাস অর্জন করেন।
ব্যবহারিক ব্লুপ্রিন্ট: কাঁচা {PDF} থেকে লং-কনটেক্সট উত্তর
পর্যায় ১: ডকুমেন্ট গ্রহণ
- ফাইল যাচাই করুন: যদি পাসওয়ার্ড-সুরক্ষিত বা দূষিত হয়, দ্রুত ব্যর্থ হন।
- একটি নির্দিষ্ট {DPI}-তে (৩০০ ভালো; গতির জন্য ২০০) পৃষ্ঠা ছবি রেন্ডার করুন।
- পৃষ্ঠা-স্তরের হ্যাশ রাখুন যাতে আপনি {OCR} ক্যাশ করতে পারেন।
পর্যায় ২: DeepSeek-OCR পাস
- {GPU} থ্রুপুট জন্য ব্যাচ পেজ।
- ব্লক এবং পড়ার ক্রম বের করুন। একটি সামঞ্জস্যপূর্ণ পৃষ্ঠা স্থানে কোঅর্ডিনেটগুলি নরমালাইজ করুন।
- {JSON}: প্রকার, টেক্সট, bbox, পৃষ্ঠা সহ ব্লক তালিকা।
- {CSV}/{HTML} হিসাবে টেবিল এবং প্রতিটি সেলের জন্য bbox ম্যাপ।
- লেআউট ইঙ্গিত সহ একটি ঐচ্ছিক স্টিচড মার্কডাউন (হেডিংয়ের জন্য ##, টেবিলের জন্য :::table, ইত্যাদি)।
পর্যায় ৩: পোস্ট-{OCR} ক্লিনার
- লাইন ব্রেক জুড়ে হাইফেনেটেড শব্দ মার্জ (merge) করুন।
- কলাম সমাধান করুন: যদি কোনও পৃষ্ঠায় দুটি কলাম থাকে তবে নিশ্চিত করুন যে পড়ার ক্রম কলামকে সম্মান করে।
- যদি সরবরাহ করা না হয় তবে ফন্ট/আকারের হিউরিস্টিকস (heuristics) এর মাধ্যমে হেডিং সনাক্ত করুন; একটি {TOC} ট্রি তৈরি করুন।
- ডুপ্লিকেট করা হেডার/ফুটারগুলি ডিডুপ্লিকেট করুন (স্ক্যান করা চুক্তিতে সাধারণ)।
পর্যায় ৪: স্ট্রাকচারসহ কম্প্রেশন
- বাক্য-বিভক্ত অনুচ্ছেদ। আপনার ডোমেনে প্রশিক্ষিত একটি সস্তা র্যাঙ্কার দিয়ে বাক্য স্কোর করুন।
- উচ্চ-স্কোর বাক্য রাখুন; সর্বদা প্রতিটি হেডিংয়ের অধীনে প্রথম বাক্যটি রাখুন।
- টেবিলের জন্য: ভ্যারিয়েন্স/গুরুত্ব অনুসারে হেডার সারি + টপ-{k} সারি এবং সম্পূর্ণ টেবিলের একটি রেফারেন্স রাখুন।
- কমপ্যাক্ট ন্যারেটিভ এবং ইনডেক্স সাইডকার তৈরি করুন যা প্রতিটি রাখা বাক্যকে তার মূলের সাথে লিঙ্ক করে।
পর্যায় ৫: ইনডেক্সিং
- বাক্যগুলির জন্য ডেন্স এম্বেডিং (প্রয়োজনে একটি শক্তিশালী বহুভাষিক মডেল ব্যবহার করুন)।
- পুরো কর্পাসের উপর স্পার্স ইনডেক্স (শিরোনাম, হেডিং, কোড, উদ্ধৃতি, শনাক্তকারী, ইউনিট)।
- সারি এবং সেল স্তরে টেবিল এম্বেডিং; দ্রুত ফিল্টারগুলির জন্য সংখ্যাসূচক পরিসংখ্যান (min, max, mean) রাখুন।
- প্রোভেনেন্স (provenance) স্টোর করুন: doc_id, page, bbox, block_id।
পর্যায় ৬: কোয়েরি রাউটিং এবং রিট্রিভাল
- কোয়েরি উদ্দেশ্য শ্রেণিবদ্ধ করুন: লুকআপ বনাম বিশ্লেষণ বনাম টেবিল গণিত বনাম তুলনা।
- উপযুক্ত রিট্রিভাল রেসিপি চালান:
- লুকআপ: স্পার্স → ডেন্স রির্যাঙ্ক।
- বিশ্লেষণ: ডেন্স → বিভাগ প্রতিবেশী।
- টেবিল গণিত: টেবিল ইনডেক্স + সারি ফিল্টার; প্রসঙ্গের জন্য কাছাকাছি টেক্সট সংযুক্ত করুন।
- একটি প্রম্পট প্যাক কম্পাইল করুন:
- ৩-৬টি পুনরুদ্ধার করা প্যাসেজ (হেডিং এবং পৃষ্ঠা রেফ সহ)
- প্রয়োজনে, ১-২টি ছোট টেবিল বা গণনা করা পরিসংখ্যান
- মডেল-নির্দিষ্ট মিষ্টি স্পটের অধীনে প্রম্পটগুলি রাখুন। দীর্ঘ কনটেক্সট অসীম কনটেক্সট নয়।
পর্যায় ৭: উদ্ধৃতিসহ উত্তর সংশ্লেষণ
- স্ট্রাকচারড আউটপুট জিজ্ঞাসা করুন: বিভাগযুক্ত উত্তর এবং ইনলাইন উদ্ধৃতি যেমন [Doc §2.3, p. 47, tbl A]।
- কঠিন দাবির জন্য, একটি যাচাইকরণ পাস ট্রিগার করুন: সঠিক স্প্যান পুনরায়-পুনরুদ্ধার করুন, একটি লক্ষ্যযুক্ত প্রশ্ন পুনরায় জিজ্ঞাসা করুন, বিরোধ নিষ্পত্তি করুন।
- একটি প্রোভেনেন্স ট্রেইল সহ একটি উত্তর দিন যাতে ব্যবহারকারীরা ক্লিক করতে পারে।
পারফরম্যান্স নোট যা আসল অর্থ সাশ্রয় করে
- {GPU}-কে {YOLO} করবেন না: {OCR} অদ্ভুত পরিবর্তনে {I/O} আবদ্ধ এবং {GPU} আবদ্ধ। কার্নেল পুনরায় ব্যবহার সর্বাধিক করার জন্য পৃষ্ঠা গণনা দ্বারা ব্যাচ করুন এবং চিত্রের আকার নরমালাইজ করুন।
- আগ্রাসীভাবে ক্যাশ করুন: যদি উৎস ডকের পরিবর্তন না হয় তবে পুনরায়-{OCR} করবেন না। ফাইলের নয়, পৃষ্ঠার বিটম্যাপের কনটেন্ট হ্যাশ করুন।
- টেবিলগুলি ল্যান্ডমাইন: তারা টোকেন গণনা বাড়িয়ে তোলে এবং গুণমান কমিয়ে দেয়। এগুলি পরিষ্কারভাবে বের করুন এবং আপনার সাধারণ কনটেক্সট থেকে দূরে রাখুন যদি না প্রশ্নের জন্য তাদের প্রয়োজন হয়।
- চঙ্কিং (chunking) কোনও ধর্ম নয়: টোকেন দৈর্ঘ্যের পরিবর্তে লেআউট (হেডিং, অনুচ্ছেদ) অনুসারে চঙ্ক করুন। টোকেন-দৈর্ঘ্য চঙ্কিং হল কীভাবে আপনি যুক্তির গঠন হারাবেন।
- সংক্ষিপ্ত করার আগে যাচাই করুন: পুনরুদ্ধার কনটেক্সট সংকীর্ণ না করা পর্যন্ত অস্পষ্ট প্যাসেজগুলি সংক্ষিপ্ত করবেন না; আপনি ভুল জিনিস কম্প্রেস করবেন।
এরর হ্যান্ডলিং: আনসেক্সি অংশ যা গুরুত্বপূর্ণ
- ভাঙা {PDF}: একটি রাস্টেরাইজেশন ফলব্যাক চেষ্টা করুন। এখনও ভাঙা থাকলে, একটি ডায়াগনস্টিক আর্টিফ্যাক্ট ফেরত দিন। নীরব ব্যর্থতা কোনও উত্তর না দেওয়ার চেয়ে খারাপ।
- আবর্জনা স্ক্যান (ফ্যাক্স-গ্রেড): একটি ডিনয়েজ/কনট্রাস্ট বাম্প চেষ্টা করুন; যদি আত্মবিশ্বাস থ্রেশহোল্ডের নীচে নেমে যায় তবে মানুষের পর্যালোচনার জন্য ফ্ল্যাগ করুন। আপনি যা জানেন না তা স্বীকার করুন।
- নন-ল্যাটিন স্ক্রিপ্ট: নিশ্চিত করুন যে {OCR} মডেল আপনার স্ক্রিপ্ট সেট সমর্থন করে; অন্যথায় একটি বিশেষ {OCR} ভ্যারিয়েন্টে রুট করুন।
- টেবিল যা শিল্পের মতো দেখায়: যদি টেবিল সনাক্তকরণ ব্যর্থ হয় তবে ভান করবেন না। ক্যাপশন সহ একটি চিত্র হিসাবে বিবেচনা করুন এবং একটি “ম্যানুয়াল উত্তোলনের প্রয়োজন” বিজ্ঞপ্তি ফেরত দিন।
ডেটা মডেল: অঞ্চল সহ ম্যাপ রাখুন
- প্রস্থ/উচ্চতা, {dpi}, হ্যাশ
- প্রকার: হেডিং/অনুচ্ছেদ/তালিকা/টেবিল/চিত্র/পাদটীকা
- টেক্সট (ঐচ্ছিক), bbox, ক্রম, শৈলী ইঙ্গিত
- সারি, কলাম, সেল টেক্সট, সেল bbox, হেডার ফ্ল্যাগ
- doc_id, page, block_id, অফসেট, bbox
সুরক্ষা এবং সম্মতি
- সংবেদনশীল {PDF} তৃতীয় পক্ষের {API}-তে আপলোড করবেন না যদি না আপনার নীতি বলে যে আপনি পারেন। যদি করতেই হয়, তবে ট্রানজিটে এবং বিশ্রামের সময় এনক্রিপ্ট করুন।
- সম্ভব হলে {OCR} ধাপে {PII} রিডাক্ট (redact) করুন—পোস্ট-হক স্ট্রিং মাস্কিংয়ের চেয়ে বাউন্ডিং-বক্স রিডাকশন শক্তিশালী।
- নিষিদ্ধ যেখানে সামগ্রী লগিং না করে রিট্রিভাল এবং উত্তর জেনারেশন লগ করুন। কাঁচা টেক্সট নয়, হ্যাশ এবং আইডি রাখুন।
হাইপ ছাড়া লং-কনটেক্সট মডেল পছন্দ
- যদি আপনার প্রশ্নগুলি বেশিরভাগই হয় “এটি কোথায় X বলে,” তাহলে নিছক কনটেক্সট দৈর্ঘ্যের চেয়ে রিট্রিভাল এবং উদ্ধৃতিকে অগ্রাধিকার দিন। একটি সংক্ষিপ্ত, নির্ভুল কনটেক্সট একটি 1M-টোকেন হ্যালুসিনেশনকে হার মানায়।
- যদি আপনার ডকুমেন্টগুলি বর্ণনাকারী হয় (গবেষণা, প্রতিবেদন), লং-কনটেক্সট মডেলগুলি সহায়তা করে, তবে কেবল তখনই যখন বিভাগের কাঠামো দ্বারা পরিচালিত হয়।
- টেবিল-ভারী কর্মপ্রবাহ একটি বিভক্ত মস্তিষ্ক চায়: গদ্যের জন্য ভাষা মডেল, গাণিতিক এবং ফিল্টারিংয়ের জন্য একটি লাইটওয়েট প্রোগ্রাম।
ভার্সনিং এবং ড্রিফট
- {OCR} আরও ভাল হয়; ডকুমেন্ট পরিবর্তন হয়; এম্বেডিং ড্রিফট। সবকিছু ভার্সন করুন:
- {OCR} ইঞ্জিন সংস্করণ এবং কনফিগারেশন
- যখন কোনও সংস্করণ পরিবর্তিত হয়, তখন ক্রমবর্ধমানভাবে পুনরায় ইনডেক্স করুন। প্যারিটি প্রমাণ না করা পর্যন্ত পুরানো এবং নতুন উভয়ই রাখুন।
ডেভেলপার ইন্টিগ্রেশন স্কেচ
- ওয়ার্কার ১: গ্রহণ → পৃষ্ঠা রেন্ডার করুন → সারিবদ্ধ করুন।
- ওয়ার্কার ২ ({GPU}): DeepSeek-OCR প্রতি পৃষ্ঠায় → স্ট্রাকচারড {JSON} → টেবিল।
- ওয়ার্কার ৩: ক্লিনার + লেআউট ট্রি → কম্প্রেশন।
- ওয়ার্কার ৪: ইনডেক্স তৈরি (ডেন্স + স্পার্স + টেবিল) → প্রকাশ করুন।
- পরিষেবা: কোয়েরি রাউটার → রিট্রিভাল → প্রম্পট অ্যাসেম্বলি → {LLM} → যাচাই → প্রতিক্রিয়া।
- স্টোরেজ: পৃষ্ঠা ছবি এবং সাইডকারের জন্য অবজেক্ট স্টোর; ব্লক এবং প্রোভেনেন্সের জন্য {DB}; ভেক্টর এবং স্পার্স ইনডেক্স।
সরঞ্জামের উপর একটি শব্দ যা একটি জগাখিচুড়ি তৈরি করে না
কম ঝলমলে অংশ প্রায়শই পাইপলাইন তৈরি করে। টাইট {OCR} যা লেআউটকে সম্মান করে, একটি ইনডেক্স যা বলতে পারে “আমি জানি না” এবং একটি প্রম্পট বিল্ডার যা অতিরিক্ত স্টাফ করতে অস্বীকার করে। এটাই কাজ। যদি আপনি এটিকে একটি ব্যবহারিক কর্মপ্রবাহে বোল্ট করতে চান—যেমন, চুক্তি সংক্ষিপ্ত করা, ৩০০-পৃষ্ঠার {RFI} এর মাধ্যমে একত্রিত করা বা {SOP} ম্যানুয়াল অডিট করা—Sider.AI আসলে {OCR}, রিট্রিভাল এবং দীর্ঘ-কনটেক্সট প্রম্পটিংয়ের মধ্যে আঠালো স্তর হিসাবে কাজ করে, বিশেষত যখন আপনি এটিকে একজন জাদুকরের চেয়ে বেশি একজন সুশৃঙ্খল ফোরম্যানের মতো ব্যবহার করেন। এটি অর্কেস্ট্রেট (orchestrate) করতে ব্যবহার করুন: ইনজেস্ট টাস্ক, চঙ্কিং নীতি, মডেল নির্বাচন এবং “বিশ্বাস করার আগে যাচাই করুন” লুপ। আপনি যখন এই কাজগুলি দলগুলিতে স্কেল করতে এবং ফলাফলগুলি পুনরুত্পাদনযোগ্য রাখতে চান তখন এটি তার মূল্য অর্জন করে। “গটচাস” আপনি শুক্রবারের মধ্যে আঘাত করবেন
- ওভার-কম্প্রেশন: আপনি খুব বেশি কেটে ফেলেছেন এবং উত্তরগুলি সূক্ষ্মতা হারিয়েছে। উত্তরের দৈর্ঘ্য/কভারেজ মেট্রিকগুলি দেখুন; আত্মবিশ্বাস কমে গেলে পুরো ব্লকটি আনার জন্য একটি ফলব্যাক যুক্ত করুন।
- ওভার-রিট্রিভাল: আপনি প্রম্পটে ৬০টি চঙ্ক টেনে আনেন এবং কনটেক্সট past blow করেন। এটিকে ক্যাপ করুন এবং সন্নিহিততার দিকে পক্ষপাতিত্ব করুন (প্রতিবেশী বিভাগগুলি স্বর্ণ)।
- টেবিলের বিভ্রম: মডেলটি দৃ conv়ভাবে একটি সংখ্যা উদ্ধৃত করে—তবে ভুল সারি থেকে। সর্বদা প্রম্পটে একটি সারি কী সহ টেবিল স্নিপেট যুক্ত করুন।
- ডুপ্লিকেট পৃষ্ঠা: স্ক্যানিং কর্মপ্রবাহ পুনরাবৃত্তি করতে পছন্দ করে। পৃষ্ঠাগুলি হ্যাশ করুন; {OCR} এর জন্য অর্থ প্রদানের আগে পৃষ্ঠা স্তরে ডিডুপ করুন।
- ক্রস-রেফ এবং পাদটীকা: তারা আইনত অর্থবহ সতর্কতা বহন করে। নীতি/আইনী ডকুমেন্টগুলিতে কখনই পাদটীকা বাদ দেবেন না; এগুলি একটি কম-টোকেন লেনে রাখুন।
গুণমান মেট্রিক যা মিথ্যা বলে না
- টপ-k উদ্ধৃতি যথার্থতা: উদ্ধৃত ব্লকটি কি আসলে দাবি সমর্থন করে?
- টেবিল সেল যথার্থতা: সংখ্যাসূচক উত্তরে সঠিক সেল রেফারেন্সের হার।
- কম্প্রেশন বিশ্বস্ততা: সংকুচিত বর্ণনাকারী এবং প্রতিটি বিভাগের জন্য মূলের মধ্যে {ROUGE}/{LFQA}-স্টাইল ওভারল্যাপ।
- লোডের অধীনে কোয়েরি লেটেন্সি: {P95} এন্ড-টু-এন্ড, শুধু {LLM} সময় নয়।
- মানবিক বিশ্বাসের স্কোর: ব্যবহারকারীরা প্রথম নজরে উত্তর গ্রহণ বা প্রত্যাখ্যান করেন? এটি একমাত্র মেট্রিক যা গ্রহণের পূর্বাভাস দেয়।
একটি ন্যূনতম কার্যকারী উদাহরণ (ধারণাগত)
- ইনপুট: ১৮০-পৃষ্ঠার ক্রয় স্পেসিফিকেশন পরিশিষ্ট এবং পাঁচটি জটিল টেবিল সহ।
- আপনি DeepSeek-OCR চালান; এটি বাক্স এবং একটি বিশ্বস্ত {TOC} সহ স্ট্রাকচারড ব্লক নির্গত করে।
- কম্প্রেশন সমস্ত হেডিং, প্রথম বাক্য এবং টেবিল থেকে প্রয়োজনীয় সারি রাখে। সাইডকার সবকিছুতে ফিরে নির্দেশ করে।
- ব্যবহারকারী জিজ্ঞাসা করে: “বৈদ্যুতিক উপাদানগুলির জন্য কোন বিভাগ ওয়ারেন্টি সময়কাল নির্ধারণ করে?”
- রাউটার স্পার্স → ডেন্স চয়ন করে।
- রিট্রিভাল দুটি বিভাগ এবং একটি পরিশিষ্ট ফেরত দেয়।
- প্রম্পট ইনলাইন উদ্ধৃতি সহ হেডিং+অনুচ্ছেদ ফিড করে।
- মডেল উত্তর দেয়: “বিভাগ ৪.২.১, পৃ. ৬৭: ‘বৈদ্যুতিক উপাদানগুলি কমপক্ষে ৩৬ মাসের ওয়ারেন্টি বহন করে…’” একটি লিঙ্ক সহ যা সঠিক স্প্যান হাইলাইট করে।
- ব্যবহারকারী জিজ্ঞাসা করে: “র্যাক জুড়ে মোট পাওয়ার বাজেট কত?”
- রাউটার টেবিল ইনডেক্স নির্বাচন করে। এটি সঠিক সারি বের করে, একটি সাধারণ সরঞ্জাম দিয়ে দুটি কলাম যোগ করে এবং সারি কী সহ টেবিল B-3 উদ্ধৃত করে। কোনও হ্যালুসিনেটেড গণিত নেই।
অন্যরা যখন না করে তখন এটি কেন কাজ করে
কারণ এটি {OCR}, রিট্রিভাল এবং রিজনিংকে তাদের মধ্যে একটি চুক্তি সহ পৃথক কাজ হিসাবে বিবেচনা করে। DeepSeek-OCR আপনাকে স্ট্রাকচার দেয়; কম্প্রেশন অর্থ সংরক্ষণ করে; রিট্রিভাল সঠিক প্রমাণ নিয়ে আসে; দীর্ঘ-কনটেক্সট মডেল এটিকে ফিলার মধ্যে ডুবে যাওয়া ছাড়াই একত্রিত করে। শিল্পের ডিফল্ট হল সবকিছুকে একটি বৃহত্তর উইন্ডোতে জ্যাম করা এবং প্রার্থনা করা। প্রার্থনা কোনও কৌশল নয়।
আপনি যদি কোণগুলি কাটতে যাচ্ছেন তবে এগুলি শেষ কাটুন
- টেবিল এক্সট্রাকশন: আপনি যদি এখানে স্কিম্প করেন তবে প্রতিটি ডাউনস্ট্রিম পদক্ষেপ জগাখিচুড়ি উত্তরাধিকার সূত্রে পায়।
- প্রোভেনেন্স প্লাম্বিং: ব্যবহারকারীরা ধীরতা এবং এমনকি মাঝে মাঝে ভুল উত্তর ক্ষমা করে; তারা এমন উত্তর ক্ষমা করে না যা তারা যাচাই করতে পারে না।
- ক্যাশ এবং হ্যাশিং: আপনি যদি এটি সঠিকভাবে করেন তবে আপনার ক্লাউড বিল আপনাকে ক্ষমা করবে।
ডায়ালেক্টিক্যাল বিট: আপনার কি দীর্ঘ-কনটেক্সটের প্রয়োজন?
একটি মশলাদার চিন্তা: কখনও কখনও দীর্ঘ-কনটেক্সট খারাপ রিট্রিভালের জন্য একটি ক্রাচ। যদি আপনার প্রশ্নগুলি সংকীর্ণ এবং সুনির্দিষ্ট হয় তবে আরও ভাল ইনডেক্সিং এবং ছোট কনটেক্সটে বিনিয়োগ করুন। দীর্ঘ-কনটেক্সট উজ্জ্বল হয় যখন প্রশ্ন আপনাকে বিভাগগুলি জুড়ে সংশ্লেষণ করতে বলে — নীতি ব্যতিক্রম, ক্রস-রেফারেন্সড ধারা, সাহিত্য পর্যালোচনা। অন্যথায়, আপনি এমন মনোযোগের জন্য অর্থ প্রদান করছেন যা আপনার প্রয়োজন নেই।
এবং যদি আপনার সত্যই “পুরো জিনিসটি পড়ুন” বোঝার প্রয়োজন হয়? মডেলটিকে সবকিছু কার্যকারী স্মৃতিতে রাখতে বাধ্য করবেন না। এটি মঞ্চস্থ করুন: রূপরেখা → পুনরুদ্ধার → ন্যায্যতা। এমনকি মানুষও তাই করে।
মোড়ানো: রসিদ আনুন বা বিরক্ত করবেন না
একটি দীর্ঘ-কনটেক্সট পাইপলাইনে DeepSeek-OCR সংহত করা বৃহত্তর উইন্ডোগুলির বেদীতে উপাসনা করার বিষয়ে নয়। এটি ডকুমেন্টগুলিকে স্থানিক যুক্তি হিসাবে সম্মান করা, স্বাদ সহ সংকুচিত করা, উদ্দেশ্য সহ পুনরুদ্ধার করা এবং রসিদ সহ উত্তর দেওয়ার বিষয়ে। এটি করুন, এবং আপনার পাইপলাইন ৪৭ নম্বর পৃষ্ঠা মনে রাখার ভান করা বন্ধ করে দেয় — এবং এটি প্রমাণ করা শুরু করে।
Sider.AI, বুদ্ধিমানের সাথে ব্যবহৃত, এটিকে ব্যবহারিক করে তোলে: পর্যায়গুলি অর্কেস্ট্রেট করুন, প্রম্পটগুলিকে সৎ রাখুন এবং শৃঙ্খলা প্রয়োগ করুন যা দীর্ঘ-কনটেক্সট কাজের জন্য আসলে প্রয়োজন। যদি এটি আনসেক্সি শোনায়, ভাল। সেক্সি অংশটি হ'ল আপনি যে উত্তরগুলি বিশ্বাস করতে পারেন। FAQ
প্রশ্ন ১: একটি দীর্ঘ-কনটেক্সট পাইপলাইনে DeepSeek-OCR সংহত করার দ্রুততম উপায় কী?
{OCR}-কে কঠোর ক্যাশিংয়ের সাথে একটি {GPU} ব্যাচ পরিষেবা হিসাবে বিবেচনা করুন, তারপরে রিট্রিভালের আগে লেআউট (হেডিং, অনুচ্ছেদ, টেবিল) দ্বারা সংকুচিত করুন। একটি হাইব্রিড ইনডেক্স (ডেন্স + স্পার্স + টেবিল) যুক্ত করুন এবং পুরো ডকুমেন্ট ডাম্প করার পরিবর্তে ঠিক সময়ে প্রম্পটগুলি একত্রিত করুন।
প্রশ্ন ২: আমি যদি DeepSeek-OCR ব্যবহার করি তবে আমার কি সত্যিই দীর্ঘ-কনটেক্সট মডেলগুলির প্রয়োজন?
সবসময় না। যদি আপনার প্রশ্নগুলি সুনির্দিষ্ট হয় তবে আরও ভাল রিট্রিভাল এবং উদ্ধৃতিগুলি জোরপূর্বক কনটেক্সটকে হার মানায়। দীর্ঘ-কনটেক্সট তখনই ফলপ্রসূ হয় যখন আপনাকে বিভাগগুলি জুড়ে সংশ্লেষণের প্রয়োজন হয়, যখন আপনি ৬৭ পৃষ্ঠায় একটি ধারা সন্ধান করছেন তখন নয়।
প্রশ্ন ৩: টোকেন গণনা বিস্ফোরিত না করে আমি কীভাবে টেবিলগুলি পরিচালনা করব?
টেবিলগুলি গঠনগতভাবে বের করুন, হেডার এবং কয়েকটি উচ্চ-সংকেত সারি রাখুন এবং সম্পূর্ণ টেবিলটিকে ব্যান্ড থেকে সরিয়ে স্টোর করুন। টেবিলের প্রশ্নগুলি একটি টেবিল ইনডেক্সে রুট করুন এবং কেবল প্রয়োজনীয় সেলগুলি প্রম্পটে অন্তর্ভুক্ত করুন।
প্রশ্ন ৪: কোন মেট্রিক প্রমাণ করে যে পাইপলাইনটি আসলে কাজ করে?
উদ্ধৃতি যথার্থতা, টেবিল সেল যথার্থতা, বিভাগ প্রতি কম্প্রেশন বিশ্বস্ততা এবং {P95} এন্ড-টু-এন্ড লেটেন্সি ট্র্যাক করুন। সবচেয়ে আকর্ষণীয় হ'ল একটি মানবিক বিশ্বাসের স্কোর — ব্যবহারকারীরা প্রমাণের জন্য খনন না করে উত্তরটি গ্রহণ করেন?
প্রশ্ন ৫: Sider.AI এই সেটআপে কোথায় ফিট করে?
অর্কেস্ট্রেশন স্তর হিসাবে: এটি {OCR} শিডিউল করে, চঙ্কিং এবং রিট্রিভাল নীতি প্রয়োগ করে এবং প্রম্পটগুলিকে শৃঙ্খলাবদ্ধ রাখে। ফোরম্যান মনে করুন, জাদুকর নয় — এমন কিছু যা অন্য সমস্ত অংশকে সময়মতো এবং রসিদ সহ দেখাতে বাধ্য করে।