عن المشروع

Semble مكتبة بحث برمجي مبنية لوكلاء البرمجة. تتيح للوكلاء الاستعلام عن قاعدة برمجية باللغة الطبيعية واستلام مقتطفات الشيفرة ذات الصلة فقط، مما يتجنب سير عمل grep-and-read الذي يستهلك نوافذ سياق كبيرة. يمكن استخدامها كخادم MCP أو أداة CLI مستقلة أو مكتبة Python، وتتكامل مع وكلاء مثل Claude Code وCursor وCodex وOpenCode. تشمل القدرات الرئيسية الفهرسة والاستعلام السريعين على CPU فقط، ودعم المستودعات المحلية والبعيدة، والبحث في مستودعات متعددة، وتصفية محتوى الشيفرة والوثائق والإعدادات، واكتشاف الشيفرة ذات الصلة. تُخزَّن الفهارس مؤقتًا وتُحدَّث تدريجيًا عند تغير الملفات. يحترم اختيار الملفات ملفات .gitignore و.sembleignore، مع خيارات لفرض تضمين امتدادات غير افتراضية. تجمع خط أنابيب الاسترجاع بين تضمينات Model2Vec الثابتة ومطابقة BM25 المعجمية، مدموجة عبر Reciprocal Rank Fusion ومعاد ترتيبها بإشارات واعية بالشيفرة مثل تعزيز التعريفات وتجذيع المعرفات وتماسك الملفات وعقوبات الضوضاء. يقدم المشروع نتائج معيارية تُظهر جودة استرجاع مماثلة لمحول متخصص في الشيفرة مع فهرسة واستعلام أسرع بكثير، وتوفير في الرموز بنحو 99% مقارنة بـ grep+read عند استدعاء مكافئ. يُوزَّع Semble كحزمة Python تحت رخصة MIT. لا يتطلب مفاتيح API أو GPU أو خدمات خارجية، رغم تنزيل نموذج التضمين من Hugging Face عند أول استخدام. يمكن تكوين نموذج مخصص متوافق مع Model2Vec عبر متغير بيئة.