اگر آپ نے کبھی کسی ایپلی کیشن ٹریکنگ سسٹم (applicant tracking system) میں اپنا ریزیومے اپ لوڈ کیا ہے اور یہ سوچا ہے کہ کسی انسان نے اسے دیکھا کیوں نہیں، تو آپ پہلے ہی AI بھرتی کے 'بلیک باکس' مسئلے کو سمجھ چکے ہیں۔ زیادہ تر ریزیومے اسکورنگ ٹولز اپنا لاجک SaaS ڈیش بورڈز اور شائستہ ریجیکشن ای میلز کے پیچھے چھپاتے ہیں۔ HackerRank نے ایک مختلف راستہ اپنایا۔ اس کا Hiring Agent اوپن سورس ہے، جس کا مطلب ہے کہ کوئی بھی اسے کھول کر دیکھ سکتا ہے، کوڈ کا سراغ لگا سکتا ہے، اور بالکل دیکھ سکتا ہے کہ ایک LLM کس طرح ایک PDF اور GitHub لنک کو ایک نمبر میں تبدیل کرتا ہے۔ ایک ڈویلپر نے بالکل یہی کیا۔ انہوں نے جو کچھ پایا وہ کوئی نکھرا ہوا بھرتی کا فریم ورک نہیں ہے۔ بلکہ یہ ایک آئینہ ہے جو ہمیں دکھاتا ہے کہ آٹومیشن کس طرح آسانی سے ذاتی آراء کو کوڈ کی شکل دے دیتی ہے۔
اندرونی طریقہ کار
یہ پائپ لائن بظاہر سادہ ہے۔ امیدوار کے PDF ریزیومے کو Markdown میں تبدیل کیا جاتا ہے، پھر اسے کام کی تاریخ، مہارتوں، تعلیم اور سائیڈ پروجیکٹس کے فیلڈز کے ساتھ ایک سخت JSON اسٹرکچر میں تبدیل (parse) کیا جاتا ہے۔ Python اسکرپٹس ڈیٹا کو ایک مرحلے سے دوسرے مرحلے تک پہنچاتے ہیں، لیکن اصل سوچ بچار پرامپٹس (prompts) کے ایک سلسلے کے اندر ہوتی ہے۔ ہر سیکشن کے لیے اپنا الگ پرامپٹ ہوتا ہے۔ LLM اس اسٹرکچر شدہ ڈیٹا کو پڑھتا ہے، سادہ انگریزی میں لکھے گئے اسکورنگ کے اصولوں کو لاگو کرتا ہے، اور ایک گریڈ واپس کرتا ہے۔
یہ آرکیٹیکچر اہم ہے۔ اصل کام ہوشیار الگورتھم یا ٹریننگ لوپس میں نہیں ہو رہا، بلکہ یہ پرامپٹس کی الفاظ بندی میں ہو رہا ہے۔ ہدایات کے سیٹ میں چند صفتیں (adjectives) بدل دیں، تو وہی انجینئر ایک بہترین امیدوار سے ایک کمزور امیدوار بن جاتا ہے۔ یہ چیز اس ٹول کو نازک بناتی ہے، لیکن اسے ایماندار بھی بناتی ہے۔ زیادہ تر AI بھرتی فراہم کرنے والے آپ کو کبھی پرامپٹس دیکھنے نہیں دیں گے۔ HackerRank کا پروٹو ٹائپ اس حقیقت کو بے نقاب کرتا ہے کہ ریزیومے اسکورنگ ہمیشہ سے ربرک (rubric) کے بارے میں رہی ہے، کوڈ کے بارے میں نہیں۔
35 فیصد کی آمریت
سب سے نمایاں تعصب اسکورنگ ربرک میں چھپا ہوا ہے۔ اوپن سورس میں حصہ ڈالنا کل اسکور کا 35 فیصد ہے۔ یہ ایک بہت بڑا وزن ہے۔ اگر اس کا موازنہ کیا جائے تو، امیدوار کی پوری ورک ہسٹری، تعلیم اور مہارتوں کو باقی 65 فیصد کے لیے ان کی غیر نصابی کوڈنگ زندگی کے ایک حصے کے ساتھ مقابلہ کرنا پڑتا ہے۔
قواعد وزن کے اندازے سے بھی زیادہ سخت ہیں۔ ذاتی GitHub ریپوزٹریز (repositories) شمار نہیں کی جاتیں۔ اپنی لائبریری کو برقرار رکھنا، چاہے وہ کتنی ہی مفید کیوں نہ ہو، صفر اسکور دیتی ہے۔ یہ ٹول صرف دوسرے لوگوں کے پروجیکٹس میں حصہ ڈالنے پر انعام دیتا ہے۔ ان پوائنٹس کو حاصل کرنے کے لیے امیدوار کا کسی دوسرے کے کوڈ بیس (codebase) پر کمٹیٹر (committer) ہونا ضروری ہے۔
یہ ترجیح حقیقی آبادیاتی (demographic) وزن رکھتی ہے۔ وہ انجینئرز جو اپنے ٹولز خود برقرار رکھتے ہیں، وہ اکثر ایسا اس لیے کرتے ہیں کیونکہ انہوں نے کسی ایسے مسئلے کو حل کیا ہوتا ہے جسے کوئی اور حل نہیں کر رہا تھا۔ ہو سکتا ہے کہ وہ ایسی ملازمتیں کر رہے ہوں جو بیرونی شراکت کی اجازت نہ دیتی ہوں، یا ایسے علاقوں میں کام کرتے ہوں جہاں بڑے اوپن سورس کمیونٹیز کم ہوں، یا محض ان کی خاندانی ذمہ داریاں ایسی ہوں جو کام کے اوقات کے بعد مفت کوڈنگ کو ناممکن بنا دیتی ہوں۔ پرامپٹ کو اس طرح لکھ کر، یہ ٹول خام انجینئرنگ کی صلاحیت کی پیمائش نہیں کرتا، بلکہ یہ ایک مخصوص کوڈنگ کلچر میں شرکت کی پیمائش کرتا ہے اور پھر اسے غیر جانبداری (objectivity) کا نام دیتا ہے۔
جب ہدایات اثر نہ کریں
ربرک اسٹارٹ اپ کے تجربے کو بھی نوازنے کی کوشش کرتا ہے۔ پرامپٹ واضح طور پر بانیوں (founders) اور ابتدائی مرحلے کے انجینئرز کو اضافی پوائنٹس دینے کی تجویز دیتا ہے۔ نظریاتی طور پر یہ بات معقول لگتی ہے۔ اسٹارٹ اپ کے تجربہ کار لوگ اکثر کئی کردار ادا کرتے ہیں اور دباؤ میں کام مکمل کرتے ہیں۔ چنانچہ ٹیسٹر نے ایک تجربہ کیا۔ انہوں نے ایک ہی ریزیومے لیا اور حالیہ ملازمت کے عہدے کے علاوہ کچھ بھی تبدیل نہیں کیا، اور اسے تین مختلف لیبلز کے ساتھ ایجنٹ کے ذریعے تین بار چلایا: Senior Java Engineer، Founding Engineer، اور Co-founder / CTO۔
اسکورز میں بمشکل کوئی تبدیلی آئی۔ LLM نے بنیادی طور پر ہدایت کو نظر انداز کر دیا۔
یہ پورے آڈٹ کے اہم ترین نتائج میں سے ایک ہے۔ یہ ثابت کرتا ہے کہ پرامپٹ کا اصول محض ایک تجویز ہے۔ لارج لینگویج ماڈلز (LLMs) متن کے وسیع ذخائر پر تربیت یافتہ ہوتے ہیں جن میں اس بات کے بارے میں اپنے ہی ضدی تعصبات ہوتے ہیں کہ معیار کے اشارے کیا ہیں۔ اگر ماڈل کا ٹریننگ ڈیٹا "founding engineer" کے بجائے مخصوص عہدوں، کمپنی کے ناموں یا کلیدی الفاظ (keywords) کو وقار سے جوڑتا ہے، تو آپ کی احتیاط سے لکھی گئی ہدایت محض اثر کیے بغیر گزر سکتی ہے۔ پرامپٹ ماڈل کو اسٹارٹ اپ کے عہدوں پر توجہ دینے کا کہتا ہے، لیکن ماڈل کے اپنے خیالات ہوتے ہیں، اور وہی جیت جاتے ہیں۔ انسانی ارادے اور مشین کے رویے کے درمیان یہ فرق اس وقت خطرناک ہو جاتا ہے جب آؤٹ پٹ بھرتی کا اسکور ہو۔
مقصد کے بغیر پوائنٹس
بڑے وزنوں کے علاوہ، ربرک عجیب و غریب طور پر مخصوص مائیکرو رولز (micro-rules) سے بھرا ہوا ہے جو ڈیٹا پر مبنی فیصلوں کے بجائے کسی کے رات گئے کے دماغی مشق (brainstorming session) کی طرح محسوس ہوتے ہیں۔
ایک LinkedIn پروفائل کی قیمت بالکل ایک پوائنٹ ہے۔ نہ ہی پروفائل کا معیار، نہ ہی سفارشات (recommendations) کی تعداد اور نہ ہی کام کی تاریخ (work history) کی گہرائی۔ محض ریزیومے (resume) پر ایک URL ہونے سے کل اسکور میں ایک پوائنٹ کا اضافہ ہو جاتا ہے۔ دوسری طرف، Google Summer of Code کا شریک ہونا پانچ پوائنٹس کے برابر ہے۔ اور اگر کسی امیدوار کے پاس GitHub پر forked repositories ہوں، تو ایجنٹ ایسے کسی بھی fork کو نظر انداز کر دیتا ہے جس کے اپنے پانچ سے کم forks ہوں۔
ان میں سے ہر اصول ایک خاموش عددی系数 (coefficient) کے روپ میں ایک واضح اقدار کا فیصلہ (value judgment) کرتا ہے۔ LinkedIn کی موجودگی کا ایک پوائنٹ کیوں ہے؟ یہ اس بات کا اشارہ ہے کہ امیدوار کو معلوم ہے کہ سوشل نیٹ ورک کیسے پُر کیا جاتا ہے، نہ کہ اس بات کا کہ وہ ایک distributed system کا ڈیزائن (architect) تیار کر سکتا ہے۔ GSoC ایک LinkedIn لنک سے پانچ گنا زیادہ کیوں اہم ہے؟ شاید اس لیے کہ پرامپٹ (prompt) لکھنے والا اس پروگرام کا احترام کرتا ہے۔ اب وہ احترام ایک بھرتی کی پالیسی بن چکا ہے۔ اور پانچ forks پر حد کیوں لگائی گئی ہے؟ دس صارفین والا ایک ٹول کسی اہم اور مخصوص (niche) مسئلے کو حل کر سکتا ہے۔ اس نظام کے تحت، شاید اس کا وجود ہی نہ ہو۔
یہ اعداد و شمار ریگریشن تجزیہ (regression analysis) سے حاصل نہیں ہوئے، بلکہ انہیں افراد نے منتخب کیا ہے۔ ایک شخص نے فیصلہ کیا کہ اوپن سورس میں شرکت ایک انجینئر کی اہمیت کے ایک تہائی سے زیادہ ہے۔ دوسرے شخص نے فیصلہ کیا کہ ایک LinkedIn پروفائل کی قیمت 1 پوائنٹ ہے۔ جب آپ ان اندازوں کو خودکار (automate) کر دیتے ہیں، تو آپ انہیں سافٹ ویئر کا اختیار دے دیتے ہیں۔
ہر پرامپٹ ایک تعصب ہے
ریزیومے اسکورنگ ایجنٹ بنانے کا مشکل ترین حصہ PDF کو پارس کرنا یا API کو کال کرنا نہیں ہے۔ بلکہ یہ فیصلہ کرنا ہے کہ کیا اہم ہے۔ اسکورنگ پرامپٹ کا ہر لفظ اس بارے میں ایک اقدار کا فیصلہ ہے کہ ایک اچھا انجینئر کیا چیز بناتا ہے۔ کیا سائیڈ پروجیکٹس (side projects) کو روزمرہ کی ملازمتوں پر فوقیت ہونی چاہیے؟ کیا عوامی کوڈ (public code) کو نجی کاروباری کام (private enterprise work) سے زیادہ اہمیت ہونی چاہیے؟ کیا سوشل میڈیا پروفائل کی کوئی اہمیت ہونی چاہیے بھی یا نہیں؟ ان سوالات کے کوئی ریاضیاتی طور پر درست جوابات نہیں ہیں۔ یہاں صرف ثقافتی ترجیحات موجود ہیں۔
جب ایک بھرتی کرنے والی ٹیم یہ کام دستی طور پر کرتی ہے، تو کم از کم تعصبات بہت سے جائزہ لینے والوں میں تقسیم ہوتے ہیں جو اختلاف کر سکتے ہیں، توازن (calibrate) کر سکتے ہیں اور سیکھ سکتے ہیں۔ جب ایک LLM یہ کام کرتا ہے، تو ایک پرامپٹ انجینئر کے تعصبات ایک ایسی قابلِ تکرار فنکشن (repeatable function) میں تبدیل ہو جاتے ہیں جو بڑے پیمانے پر چلتی ہے۔ یہ ٹول موضوعیت (subjectivity) کو ختم نہیں کرتا، بلکہ اسے محفوظ (archive) کر دیتا ہے۔
اسے آئینے کے طور پر استعمال کریں، فلٹر کے طور پر نہیں
HackerRank کے Hiring Agent کو ایک پروٹو ٹائپ (prototype) کے طور پر سمجھنا بہتر ہے۔ یہ ایک ابتدائی مسودے (first draft) کی طرح محسوس ہوتا ہے، اور حقیقت میں یہ وہی ہے۔ یہ اس بات کا ایک دلچسپ ابتدائی نظارہ پیش کرتا ہے کہ AI بھرتی کے ٹولز کیسے بنائے جاتے ہیں، لیکن اس میں ایک حقیقی بھرتی کرنے والی تنظیم کی طرح کی کیلیبریشن، ٹیسٹنگ اور متنوع ان پٹ کی کمی ہے۔
اگر آپ بھرتی کی ٹیکنالوجی (hiring tech) بنا رہے ہیں، تو اس کا بغور مطالعہ کریں۔ یہ دکھاتا ہے کہ کس طرح من مانے اصول تیزی سے خودکار گیٹ کیپنگ (automated gatekeeping) میں بدل جاتے ہیں۔ اگر آپ ایک امیدوار ہیں، تو یاد رکھیں کہ یہ نظام کوئی غیب دان (oracles) نہیں ہیں۔ یہ قدرتی زبان (natural language) میں ملبوس اسپریڈ شیٹس (spreadsheets) ہیں، اور ان میں وہی مفروضے شامل ہوتے ہیں جو پرامپٹ لکھنے والے کے ہوتے ہیں۔
جب تک ان ٹولز کا تعصب کے لیے اتنی ہی سختی سے تجربہ نہیں کیا جاتا جتنا کہ ان انجینئرز کا جن کا وہ فیصلہ کرتے ہیں، انہیں انسانی گفتگو کی رہنمائی کرنی چاہیے، اسے تبدیل نہیں کرنا چاہیے۔
