প্রকল্প সম্পর্কে

Semble হলো কোডিং এজেন্টদের জন্য তৈরি একটি কোড সার্চ লাইব্রেরি। এটি এজেন্টদের প্রাকৃতিক ভাষায় একটি কোডবেস কোয়েরি করতে দেয় এবং শুধুমাত্র প্রাসঙ্গিক কোড স্নিপেট পেতে দেয়, ফলে grep-and-read ওয়ার্কফ্লো এড়ানো যায় যা বড় কনটেক্সট উইন্ডো খরচ করে। এটি একটি MCP সার্ভার, একটি স্ট্যান্ডঅ্যালোন CLI, বা একটি Python লাইব্রেরি হিসেবে ব্যবহার করা যায় এবং Claude Code, Cursor, Codex, এবং OpenCode-এর মতো এজেন্টদের সাথে ইন্টিগ্রেট করে। মূল সক্ষমতাগুলোর মধ্যে রয়েছে দ্রুত CPU-শুধু ইনডেক্সিং এবং কোয়েরিং, লোকাল এবং রিমোট রিপোজিটরি সাপোর্ট, মাল্টি-রিপো সার্চ, কোড/ডকস/কনফিগ কনটেন্ট ফিল্টারিং, এবং সম্পর্কিত-কোড ডিসকভারি। ফাইল পরিবর্তন হলে ইনডেক্স ক্যাশ করা হয় এবং ইনক্রিমেন্টালি আপডেট করা হয়। ফাইল সিলেকশন .gitignore এবং .sembleignore মেনে চলে, সাথে নন-ডিফল্ট এক্সটেনশন জোরপূর্বক অন্তর্ভুক্ত করার অপশন রয়েছে। রিট্রিভাল পাইপলাইন স্ট্যাটিক Model2Vec এমবেডিং-এর সাথে BM25 লেক্সিক্যাল ম্যাচিং একত্রিত করে, Reciprocal Rank Fusion-এর মাধ্যমে ফিউজ করে এবং কোড-সচেতন সিগন্যাল যেমন ডেফিনিশন বুস্ট, আইডেন্টিফায়ার স্টেমিং, ফাইল কোহেরেন্স, এবং নয়েজ পেনাল্টি দিয়ে রির‍্যাংক করে। প্রকল্পটি বেঞ্চমার্ক ফলাফল রিপোর্ট করে যা দেখায় যে রিট্রিভাল কোয়ালিটি একটি কোড-স্পেশালাইজড ট্রান্সফরমারের সাথে তুলনীয়, যখন ইনডেক্সিং এবং কোয়েরিং উল্লেখযোগ্যভাবে দ্রুত, এবং সমতুল্য রিকলে grep+read-এর তুলনায় প্রায় ৯৯% টোকেন সাশ্রয়। Semble MIT লাইসেন্সের অধীনে একটি Python প্যাকেজ হিসেবে বিতরণ করা হয়। এটির জন্য কোনো API কী, GPU, বা এক্সটার্নাল সার্ভিস প্রয়োজন হয় না, যদিও প্রথম ব্যবহারে এমবেডিং মডেল Hugging Face থেকে ডাউনলোড করা হয়। একটি এনভায়রনমেন্ট ভেরিয়েবলের মাধ্যমে একটি কাস্টম Model2Vec-সামঞ্জস্যপূর্ণ মডেল কনফিগার করা যায়।