اگر همین حالا در حال بررسی دستی دهها خروجی مدل زبانی هستید تا متوجه شوید کدام نسخه بهتر عمل میکند، در واقع در حال تلف کردن زمان گرانبهای خود هستید. برای ساخت یک ابزار استدلالی قابلاعتماد، شما به یک «کارنامهی بازتولیدپذیر» نیاز دارید، نه حدس و گمان. این پیادهسازی عملی، جزئیات ساخت یک چارچوب ارزیابی مبتنی بر پایتون را با استفاده از Oxlo.ai برای خودکارسازی امتیازدهی به پاسخهای مدلهای زبانی کاندید شرح میدهد.
ارزیابی کیفیت مدلها اغلب برای برنامهنویسان شبیه به یک بازی حدسزدنی است. همانطور که در تحلیل قبلی ما دربارهی بهینهسازی گلوگاههای استنتاج با Solid Queue و استفاده از فیبرها (Fibers) برای مقیاسبندی بارهای کاری I/O-bound اشاره کردیم، چالش اصلی همچنان این است که چگونه بفهمیم خروجی واقعاً درست است؟ اکثر تیمها به بررسیهای تصادفی و دستی (Spot-checks) تکیه میکنند که با رشد حجم مجموعهدادهها، بهسادگی شکست میخورد و دیگر مقیاسپذیر نیست.
طبق مستندات آموزشی این پروژه، راهکار جایگزین، معماری مدل زبانی بهمثابه داور (LLM-as-a-judge) است. این سیستم — که شبیه به داشتن یک استاد سختگیر است که پاسخهای چندین دانشآموز را با کلید پاسخ مقایسه میکند — ابتدا پاسخهای کاندید را از چندین مدل مختلف میگیرد و سپس آنها را به یک مدل «داور» مجزا با قدرت استدلال بالا میسپارد تا بر اساس یک مجموعه مرجع استاندارد (Gold-standard reference set) امتیازدهی شوند.
پیشنیازها و زیرساخت
برای پیادهسازی این سیستم ارزیابی، توسعهدهندگان به یک پشته فنی (Technical Stack) حداقلی نیاز دارند. این سیستم مستلزم استفاده از پایتون نسخه ۳.۱۰ یا جدیدتر و SDK شرکت OpenAI است که میتوان آن را از طریق دستور pip install openai نصب کرد. مدیریت دسترسی به مدلها نیز از طریق کلید API سرویس Oxlo.ai انجام میشود که از طریق وبسایت https://portal.oxlo.ai قابل دریافت است.
یک تمایز کلیدی در این ساختار، پیشبینیپذیری مالی است. بر اساس گزارشهای فنی، برخلاف صورتحسابهای سنتی مبتنی بر توکن — که مانند تاکسیمتر است و شما تا رسیدن به مقصد نمیدانید چقدر پرداخت میکنید — سرویس Oxlo.ai برای هر درخواست یک نرخ ثابت (Flat rate) دریافت میکند. این ویژگی به توسعهدهندگان اجازه میدهد تا پیش از شروع یک اجرای ارزیابی، با مراجعه به بخش قیمتگذاری در https://oxlo.ai/pricing، هزینه دقیق عملیات را به طور کامل پیشبینی کنند.
جزئیات پیادهسازی فنی
این ارزیاب از یک خط لوله (Pipeline) پنجمرحلهای پیروی میکند:
- ایجاد مجموعه داده: یک ست پاسخهای مرجع (Gold) تعریف میشود. برای نسخه دمو، از یک لیست کوچک در حافظه (in-memory) استفاده شده است، اگرچه در محیطهای عملیاتی معمولاً دادهها از یک فایل JSONL خوانده میشوند. مثالهایی از این دادهها شامل معماهای منطقی است؛ مانند قطاری که ۱۲۰ کیلومتر را در ۲ ساعت طی میکند (پاسخ مرجع: ۳۰۰ کیلومتر در ۵ ساعت) یا کشاورزی با ۱۷ گوسفند که تمام آنها به جز ۹ عدد میمیرند (پاسخ مرجع: ۹ گوسفند باقی مانده است).
- تولید پاسخهای کاندید: سیستم مدلهایی مانند llama-3.3-70b، qwen-3-32b یا deepseek-v3.2 را از طریق API سرویس Oxlo.ai فراخوانی میکند. در این مرحله از یک پرامپت سیستمی استفاده میشود تا مدلها مجبور شوند پاسخهایی کوتاه و شفاف ارائه دهند. آدرس پایه (Base URL) برای این فراخوانیها
https://api.oxlo.ai/v1است. - پرامپتنویسی داور: یک پرامپت سیستمی تخصصی، داور را مجبور میکند که بسیار سختگیر باشد. داور موظف است خروجی را «فقط» در قالب یک شیء JSON با چهار کلید مشخص بازگرداند:
correctness(صحت: ۱-۱۰)،clarity(شفافیت: ۱-۱۰)،completeness(کمال: ۱-۱۰) وreasoning(استدلال: یک توضیح تکجملهای). - اجرای داوری: مدل kimi-k2.6 به دلیل توانایی بالای پیروی از دستورات (Instruction-following)، بهعنوان داور انتخاب شده است. پیادهسازی کد شامل منطقی برای مدیریت حصارهای Markdown (مانند
```json) است تا اطمینان حاصل شود که پاسخ خام بهدرستی به یک دیکشنری پایتون تبدیل (Parse) میشود. - گزارشدهی: سیستم با پیمایش تمام دادهها، میانگین امتیازات را در هر معیار محاسبه کرده و یک مقایسه پهلوی (Side-by-Side) ارائه میدهد. این بخش شامل تابعی به نام
print_reportاست که امتیازات دقیق و استدلال تکجملهای برای هر سوال را چاپ میکند.
یک نکته حیاتی در اینجا مدیریت هزینه است. از آنجایی که Oxlo.ai از قیمتگذاری نرخ ثابت به ازای هر درخواست استفاده میکند، محاسبه هزینه کل یک عملیات ریاضی ساده و خطی است: (تعداد درخواستهای تولید + تعداد درخواستهای داور) ضربدر نرخ ثابت. این ساختار نیاز به شمارش پیچیده توکن (Token) — تکههای کوچکی از متن که مدلها پردازش میکنند — را که در سایر سرویسدهندهها رایج است، کاملاً حذف میکند.
تحلیل نتایج و عملکرد
در یک اجرای آزمایشی که شامل ۱۸ درخواست در مجموع بود (محاسبه شده از ۳ مدل * ۳ سوال * ۲ درخواست برای هر سوال)، تفاوتهای عملکردی آشکاری مشاهده شد:
- deepseek-v3.2: با میانگین شفافیت ۱۰.۰ و نمره صحت و کمال ۹.۷، قویترین عملکرد را از خود نشان داد.
- qwen-3-32b: در معیارهای صحت و کمال نمره ۹.۷ را کسب کرد، هرچند در برخی موارد ذکر شد که پاسخهای آن «کمی بیش از حد طولانی» (Verbose) بود.
- llama-3.3-70b: میانگین صحت ۹.۳ داشت. این مدل نتوانست نکته ظریف یک معمای مربوط به برداشتن ۳ سیب از یک سبد را متوجه شود و در نتیجه برای آن مورد خاص، نمره صحت ۸ را دریافت کرد.
این شکاف اندازهگیریپذیر ثابت میکند که داوری خودکار میتواند نکاتی را برملا کند — مانند اینکه آیا یک مدل فریب یک تله منطقی را میخورد یا خیر — که یک انسان ممکن است در بررسیهای سریع و گذرا از آنها غافل شود. این چرخش در متدولوژی، ارزیابی مدلهای زبانی را از «حس خوب» یا همان Vibes به یک چارچوب «تست رگرسیون» تبدیل میکند. با نگاه به ارزیابی مدل بهعنوان یک مجموعه تست نرمافزاری، توسعهدهندگان میتوانند افت کیفیت را پیش از آنکه نسخه جدید مدل در محیط عملیاتی (Production) مستقر شود، شناسایی کنند.
گامهای تکمیلی برای بهبود
برای ارتقای بیشتر این سیستم، توسعهدهندگان میتوانند اقدامات زیر را انجام دهند:
۱. انتقال از لیستهای ثابت در حافظه به مجموعهدادههای پویا که در S3 یا Git میزبانی میشوند.
۲. پیادهسازی حالت «مقایسه زوجی» (Pairwise Comparison)؛ در این حالت، داور بهجای امتیازدهی مجزا به هر پاسخ، بین دو خروجی مختلف یک برنده انتخاب میکند. این کار دقت بنچمارک را بیشتر افزایش میدهد.
۳. تعریف معیارهای سختگیرانهتر برای مدلهای تخصصی در حوزههایی مانند پزشکی یا حقوقی.
هر دو مورد اول، توسعههای سادهای از همان کد کلاینت Oxlo.ai هستند. اما تأثیر این مدل قیمتگذاری بر استراتژیهای استقرار مدلهای بازمتن حتی عمیقتر است — به بررسی ما دربارهی مدلهای با وزنهای باز مراجعه کنید.




گفتگو