মূল কনটেন্টে যান
OpenAI

৮ জুলাই, ২০২৬

গবেষণাপাবলিকেশন

কোডিং মূল্যায়নে সংকেত ও গোলমাল আলাদা করা

বিস্তারিত অডিটে আমরা SWE-Bench Pro-তে ব্যাপক কাজ-সংক্রান্ত সমস্যা পাই এবং অনুমান করি যে প্রায় ৩০% কাজ ভাঙা.

লোডিং…

আমাদের মডেলগুলোর সক্ষমতা সঠিকভাবে মাপা সুসংগত ডিপ্লয়মেন্ট ও নিরাপত্তা সিদ্ধান্তের জন্য গুরুত্বপূর্ণ, যার মধ্যে OpenAI-এর প্রিপেয়ার্ডনেস ফ্রেমওয়ার্ক(একটি নতুন উইন্ডোতে খোলে)-এর অধীনে নেওয়া সিদ্ধান্তও রয়েছে. প্রতিটি মডেল রিলিজের সঙ্গে আমরা মডেলের অগ্রগতি অনুসরণ করতে নানা বাহ্যিক ও অভ্যন্তরীণ বেঞ্চমার্কের ফল জানাই. মূল্যায়নে এমন ত্রুটি থাকলে যা ফলকে প্রভাবিত করে, তা সক্ষমতা সম্পর্কে ভুল ধারণা দিতে পারে, নিরাপত্তা-সংক্রান্ত যুক্তি ভুলভাবে উপস্থাপন করতে পারে এবং গবেষণার অগ্রাধিকারকে প্রভাবিত করতে পারে.

আমরা সম্প্রতি তদন্ত করেছি যে বহুল ব্যবহৃত কোডিং বেঞ্চমার্কগুলোর একটি, SWE-bench Verified-এ মৌলিক নকশাগত ও দূষণজনিত সমস্যা ছিল, এবং দেখেছি যে এই মূল্যায়ন আর সফটওয়্যার উন্নয়ন সক্ষমতা সম্পর্কে অর্থবহ সংকেত দিচ্ছে না. তখন আমরা বৃহত্তর কমিউনিটিকে SWE-Bench Pro-তে সরে যেতে উৎসাহিত করেছিলাম.

SWE-Bench Pro(একটি নতুন উইন্ডোতে খোলে) তৈরি করা হয়েছিল SWE-bench Verified-এর উন্নত সংস্করণ হিসেবে, যাতে দীর্ঘতর পরিসর ও আরও বাস্তবসম্মত কোডিং কাজে মডেলগুলোকে টেস্ট করে এজেন্টিক কোডিং সক্ষমতা আরও ভালোভাবে অনুসরণ করা যায়. SWE-bench Verified-এর মতোই, কাজগুলো একগুচ্ছ পাবলিক ও প্রাইভেট রিপোজিটরির ফিচার পরিবর্তনের ইতিহাস থেকে প্রোগ্রামগতভাবে নেওয়া হয়. মডেলগুলোকে এমন সমাধান বাস্তবায়ন করতে হয়, যা কোনো ফিচারের জন্য নতুন টেস্ট পাস করে এবং বিদ্যমান কার্যকারিতা নষ্ট করে না. ৭৩১-কাজের পাবলিক স্প্লিটে, অত্যাধুনিক মডেলগুলোর পাসের হার আট মাসে ২৩.৩% থেকে ৮০.৩%-এ উন্নীত হয়েছে.

এরপর আমরা SWE-Bench Pro-তেও অনুরূপ অডিট করেছি, ডেটাপয়েন্ট বিশ্লেষণ পাইপলাইন ব্যবহার করে ডেটাসেটটি পর্যালোচনা করেছি. পাইপলাইনটি সম্ভাব্য মূল্যায়ন-ত্রুটি চিহ্নিত করতে কাজটিতে মডেলের প্রচেষ্টা, কাজের মেটাডেটা এবং ব্যর্থতার ট্রেস পর্যালোচনা করেছে. এরপর প্রতিটি চিহ্নিত কাজ একাধিক তদন্তকারী-এজেন্ট পাসের মাধ্যমে মূল্যায়ন করা হয় এবং পাঁচজন অভিজ্ঞ সফটওয়্যার প্রকৌশলী স্বাধীনভাবে পর্যালোচনা করেন; মতভেদ হলে আরও তদন্তে পাঠানো হয়.

ডেটাসেটের উল্লেখযোগ্য অংশে ভাঙা সমস্যার প্রমাণ আমরা পাই. আমাদের ডেটাপয়েন্ট বিশ্লেষণ পাইপলাইন ২০০টি (২৭.৪%) ভাঙা কাজ চিহ্নিত করেছে, আর মানব অ্যানোটেশন ক্যাম্পেইন শনাক্ত করেছে ২৪৯টি (৩৪.১%).

সমস্যাগুলো প্রধানত চারটি শ্রেণিতে পড়েছে:

  • অতিরিক্ত কঠোর টেস্ট1 প্রম্পটে নির্দিষ্ট নয় এমন নির্দিষ্ট বাস্তবায়ন-সংক্রান্ত খুঁটিনাটি প্রয়োগ করে, ফলে কার্যগতভাবে সঠিক অনেক জমা দেওয়া সমাধান অকার্যকর হয়ে যায়.
  • অপর্যাপ্তভাবে নির্দিষ্ট প্রম্পট2 এমন প্রয়োজনীয়তা বাদ দেয়, যা গোপন টেস্টে প্রয়োগ করা হয় এবং যুক্তিসঙ্গতভাবে অনুমানযোগ্য নয়.
  • কম-কভারেজ টেস্ট অনুরোধ করা ফিচার যথেষ্টভাবে যাচাই করে না, তাই অসম্পূর্ণ সংশোধনও পাস করতে পারে.
  • একটি বিভ্রান্তিকর প্রম্পট মডেলগুলোকে ভুল আচরণের দিকে ঠেলে দেয় বা টেস্ট যা চায় তার সঙ্গে বিরোধ তৈরি করে.

আমাদের ফলাফল কঠিন কিন্তু ন্যায্য বেঞ্চমার্ক তৈরি করার জটিলতা এবং স্কেলযোগ্য ডেটা-মান যাচাইয়ে এজেন্টের ক্রমবর্ধমান উপযোগিতা দেখায়. এই ফলাফলের আলোকে, আমরা অনুমান করি যে SWE-bench Pro-এর প্রায় ৩০% কাজ ভাঙা, এবং মডেল ডেভেলপারদের ফলাফল সতর্কভাবে পরীক্ষা করার পরামর্শ দিই.

পদ্ধতি

আমাদের লক্ষ্য হলো নিশ্চিত করা যে কাজের ব্যর্থতা প্রকৃত মডেল-সীমাবদ্ধতাকে প্রতিফলিত করে, এবং কাজের সাফল্য প্রম্পটের প্রয়োজনীয়তার পূর্ণাঙ্গ ও বৈধ সমাধানকে প্রতিফলিত করে. মূল্যায়নে ব্যবহৃত ডেটার মান যাচাই করতে আমরা একটি গুণগত নিশ্চয়তা পাইপলাইন তৈরি করেছি, যা প্রতিটি ডেটাপয়েন্ট মডেল সক্ষমতাকে সঠিকভাবে প্রতিফলিত করে কি না তা মূল্যায়ন করে.

কাজের মান মূল্যায়নে স্বয়ংক্রিয় স্ক্রিনিং ও মানব পর্যালোচনা মিলিয়ে গঠিত গুণগত নিশ্চয়তা কর্মপ্রবাহ.

প্রাথমিক ডেটা-মান পাইপলাইন পর্যালোচনার জন্য সমস্যা চিহ্নিত করে. চিহ্নিত কাজগুলোর গভীরতর এজেন্ট-সহায়তাপ্রাপ্ত অডিট এবং অভিজ্ঞ প্রকৌশলীদের সঙ্গে পরিচালিত মানব অ্যানোটেশন ক্যাম্পেইনের মাধ্যমে আমরা যাচাই করি.

একটি প্রাথমিক স্বয়ংক্রিয় ফিল্টার সম্ভাব্য ভাঙা বা সমস্যাযুক্ত উদাহরণ চিহ্নিত করতে মডেলকে দেওয়া নির্দেশনা, কাজ সমাধানে মডেলের প্রচেষ্টা, এবং এসব প্রচেষ্টা গ্রেড করতে ব্যবহৃত টেস্টগুলো পর্যালোচনা করে. এই ফিল্টার ২৮৬টি সম্ভাব্য ভাঙা কাজ চিহ্নিত করেছে. তারপর আমরা সেই উপসেটের গভীরতর পর্যালোচনা দুইভাবে করেছি: মানব-তত্ত্বাবধানে এজেন্ট পর্যালোচনা, যেখানে তদন্তকারী এজেন্ট দিয়ে বিস্তৃত যাচাই ও শেষে মানব বিচার করা হয়; এবং অভিজ্ঞ সফটওয়্যার ডেভেলপারদের সঙ্গে মানব অ্যানোটেশন ক্যাম্পেইন.

মানব-তত্ত্বাবধানে এজেন্ট পর্যালোচনা

প্রতিটি চিহ্নিত সমস্যা Codex-ভিত্তিক তদন্তকারী এজেন্ট দিয়ে অডিট করা হয়, যাদের কাজের রিপোজিটরি ও পরিবেশে প্রবেশাধিকার দেওয়া হয়েছিল. এতে তারা যুক্তিসঙ্গত কাজ-সংক্রান্ত অস্পষ্টতা, যা কাছাকাছি কোড ও রিপোজিটরির রীতি দেখে প্রায়ই সমাধান করা যায়, সেটিকে প্রকৃত অপর্যাপ্ত নির্দিষ্টকরণ থেকে আলাদা করতে পারে. এজেন্ট টেস্ট চালাতে পারে, রিপোর ফাইল পরিদর্শন করতে পারে, এবং কাজটিতে মডেলের প্রচেষ্টা ও সেগুলোর সাধারণ ব্যর্থতার ধরন অনুসন্ধান করতে পারে. এই গভীরতর অডিট কয়েকবার স্বাধীনভাবে পুনরাবৃত্তির পর, একজন গবেষক সারাংশগুলো পর্যালোচনা করেন, চূড়ান্ত সিদ্ধান্ত দেন এবং সম্ভাব্য সমস্যাগুলোতে লেবেল দেন.

মানব অ্যানোটেশন ক্যাম্পেইন

একই সঙ্গে, আমরা চিহ্নিত উপসেটের ওপর একটি মানব অ্যানোটেশন ক্যাম্পেইন চালাই. আমরা অভিজ্ঞ সফটওয়্যার প্রকৌশলীদের সঙ্গে কাজ করেছি, যারা কাজ পর্যালোচনার আগে বেঞ্চমার্কের লক্ষ্য, সমস্যা-শ্রেণিবিন্যাস এবং প্রান্তিক কেস নিয়ে প্রশিক্ষণ পেয়েছিলেন. প্রতিটি কাজ পাঁচজন প্রকৌশলী পর্যালোচনা করেছেন.

পাইপলাইন বিশ্লেষণ বা ট্রান্সক্রিপ্ট সহায়ক প্রেক্ষাপট হিসেবে ব্যবহারের আগে, পর্যালোচকরা দৃশ্যমান সমস্যা-বিবৃতি, টেস্ট কেস এবং গ্রাউন্ড-ট্রুথ রেফারেন্স সমাধান (গোল্ড প্যাচ নামে পরিচিত) থেকে স্বাধীন বিচার গঠন করেন. এরপর পর্যালোচকরা নির্দিষ্ট প্রমাণের ভিত্তিতে একটি লেবেল ও তীব্রতার রেটিং দেন, এবং মতভেদ বা কম-আস্থার কেসগুলো আরও পর্যালোচনার জন্য পাঠান.

তদন্তকারী এজেন্টদের তুলনায় মানব পর্যালোচকরা কাজগুলোকে ভাঙা হিসেবে চিহ্নিত করার সম্ভাবনা বেশি ছিল. দুই পর্যালোচনা-পথের মধ্যে শ্রেণি নিয়েও কিছু মতভেদ ছিল, তবে কোনো চিহ্নিত কাজেই “ভাঙা নয়” সবচেয়ে সাধারণ মানব লেবেল ছিল না. এজেন্ট পাইপলাইন যে শ্রেণিগুলো চিহ্নিত করেছিল, সেগুলোর ক্ষেত্রে পর্যালোচকদের রায় ৭৪% ক্ষেত্রে মিলে গেছে.

এজেন্ট পাইপলাইনের তুলনায় মানব পর্যালোচকরা কোনো কাজের জন্য একাধিক লেবেল বেছে নেওয়ার সম্ভাবনাও বেশি ছিল, যা ইঙ্গিত করে যে তারা কাজগুলোকে একাধিকভাবে ভাঙা বলে দেখেছেন বা সেগুলো একটি মাত্র শ্রেণিতে পরিষ্কারভাবে খাপ খায়নি. এ থেকে বোঝা যায়, এজেন্ট-প্লাস-পর্যালোচক পাইপলাইন রক্ষণশীল লেবেলিং দিয়েছে: মানুষ যে একই বিস্তৃত ব্যর্থতার ধরন শনাক্ত করেছেন তা এটি ধরেছে, তবে পর্যালোচকরা যেখানে অতিরিক্ত বা ওভারল্যাপিং সমস্যা দেখেছেন, সেই কেসগুলো কম গণনা করেছে. সবচেয়ে বড় পার্থক্য ছিল কম-কভারেজ টেস্টে; মানবরা এটিকে বেঞ্চমার্কের ৯.৪% ক্ষেত্রে সবচেয়ে সাধারণ সমস্যা হিসেবে বেছে নিয়েছেন, যেখানে এজেন্ট পাইপলাইনে তা ৪.১%.

ব্যর্থতার ধরন

কয়েকটি ক্ষেত্রে কাজের প্রম্পটে নির্দিষ্ট বাস্তবায়ন নির্দেশ করা ছিল, কিন্তু গোপন টেস্ট কেসগুলো ভিন্ন আচরণ প্রত্যাশা করেছে.

This task involves normalizing table-of-contents entries and rendering them back to Markdown via TocEntry.to_markdown(). The task prompt specifies serialization down to character-level spacing, describing how exact spacing and pipes are enforced, and gives examples such as " | Chapter 1 | 1" and "** | Chapter 1 | 1":

কোনোটিই নয়

1
"[space]| Chapter 1 | 1"
2
"**[space]| Chapter 1 | 1"
3
"[space]| Just title | "

The hidden test_to_markdown assertions instead require " | Chapter 1 | 1" and "** | Chapter 1 | 1":

কোনোটিই নয়

1
"[space][space]| Chapter 1 | 1"
2
"**[space][space]| Chapter 1 | 1"
3
"[space][space]| Just title | "

There are two leading spaces in the hidden tests, but the example given to the model only contains one leading space. If a model rightly follows the given prompt, that one-character difference would fail the hidden test cases and the task would be marked incorrect.

আলোচনা

আমরা যে সমস্যাগুলো শনাক্ত করেছি, SWE-bench Verified-এর অনুরূপ কেসের সঙ্গে মিলিয়ে, বেঞ্চমার্ক কঠোরভাবে যাচাই করার গুরুত্ব তুলে ধরে. ওপেন-সোর্স রিপোজিটরির ইস্যু ও pull request মূলত মানব সহযোগিতার জন্য তৈরি হয়েছিল, প্রায়ই মেইনটেইনার ও অবদানকারীদের দীর্ঘ আলোচনার মাধ্যমে. ফলে সমস্যা-বিবরণ, মার্জ করা কোড এবং ইউনিট টেস্ট সবসময় মডেল নির্ভরযোগ্যভাবে মূল্যায়নের জন্য পরিষ্কার, বিচ্ছিন্ন কাজ হিসেবে একসঙ্গে মেলে না. বিশেষ করে, পুল রিকোয়েস্টে অন্তর্ভুক্ত টেস্টগুলো অতিরিক্ত কঠোর হতে পারে, কারণ সেগুলো কাজটি সমাধানের জন্য বাস্তবায়ন-নিরপেক্ষ মানদণ্ড নির্ধারণের বদলে একটি নির্দিষ্ট পরিবর্তন যাচাই করতে লেখা হয়.

একই সঙ্গে, মূল্যায়ন-ত্রুটি এখন শনাক্ত করা অল্প কিছুদিন আগের তুলনাতেও সহজ. মডেল সক্ষমতা বাড়ার সঙ্গে সঙ্গে আমরা সেই মডেলগুলো ব্যবহার করে প্রম্পট, টেস্ট, প্যাচ, ট্রেস এবং প্রান্তিক কেস অনেক বেশি গভীরতা ও ধারাবাহিকতার সঙ্গে পরিদর্শন করতে পারি, যা আগে স্কেলে খুঁজে পাওয়া ব্যয়বহুল বা অবাস্তব ছিল এমন বেঞ্চমার্ক সমস্যা সামনে আনতে সহায়তা করে.

আমরা আশা করি বৃহত্তর মূল্যায়ন কমিউনিটি অভিজ্ঞ সফটওয়্যার ডেভেলপারদের তৈরি নতুন বেঞ্চমার্ক গড়ে তুলবে, যা বিশেষভাবে মডেল সক্ষমতা টেস্ট করার জন্য হবে. এই পদ্ধতি মডেল সক্ষমতা মাপার জন্য আমাদের কাঙ্ক্ষিত উচ্চ মান ও বাস্তবসম্মততা ধরে রাখতে পারে, এবং পুরো প্রক্রিয়ায় আরও ভালো মানব তত্ত্বাবধানের সুযোগ দেয়. এই বিশ্লেষণে উন্মোচিত সমস্যাগুলোর কারণে, আমরা SWE-Bench Pro গ্রহণের আগের সুপারিশ প্রত্যাহার করছি.

শেষ পর্যন্ত, একটি মূল্যায়নের উচিত এমন বেঞ্চমার্কের মাধ্যমে অর্থবহ সংকেত দেওয়া, যেগুলোকে ফাঁকি দেওয়া কঠিন, বিশ্বাস করা সহজ, এবং মডেল সক্ষমতা বা সামঞ্জস্যকে সত্যিকারভাবে প্রতিফলিত করে. যেহেতু এই ফলাফলগুলো OpenAI-এর ডিপ্লয়মেন্ট ও নিরাপত্তা সিদ্ধান্তে ভূমিকা রাখে, তাই আমরা যে মূল্যায়নগুলো অনুসরণ করি সেগুলো বৈধ ও তথ্যবহুল হওয়া দরকার.

লেখক

OpenAI

পাদটীকা

  1. 1

    আমরা আগে এই শ্রেণিকে সংকীর্ণ টেস্ট বলতাম.

  2. 2

    আমরা আগে এই শ্রেণিকে বিস্তৃত টেস্ট বলতাম.