اگر برای عاملهای هوش مصنوعی خود دادههای وب استخراج میکنید، احتمالاً نیمی از هزینههای محاسباتی شما صرف پردازش اطلاعات تکراری میشود. تصور کنید یک عامل هوش مصنوعی بهجای یافتن بهترین فرصت شغلی، ساعتها وقت خود را صرف مقایسه ۱۰ نسخهٔ مختلف از یک آگهی واحد کند.
به گزارش وبسایت dev.to در تاریخ ۲ اکتبر ۲۰۲۶، یک توسعهدهنده متوجه شد که در جستوجوی عبارت «مهندس داده» در برلین، از ۱۰۰۰ نتیجهٔ بهدستآمده، ۳۵۹ مورد کاملاً تکراری بودهاند. این مشکل باعث میشد عامل (Agent) — شبیه دستیاری که وظایف پیچیده را بهصورت خودکار انجام میدهد — توکنهای زیادی را هدر دهد و رتبهبندی اشتباهی از فرصتهای شغلی ارائه کند.
دلیل این شکست، یک رویه رایج در صنعت است: تختههای شغلی برای ردیابی کلیکها، URLها را بازنویسی میکنند. همانطور که در تحلیلهای قبلی ما دربارهی بهینهسازی دادههای ورودی مدلها اشاره کردیم، تفاوتهای کوچک در رشتههای متنی (Query Strings) باعث میشود سیستمهای سادهٔ حذف تکرار، یک شغل واحد را در پلتفرمهای مختلف، بهعنوان موارد مجزا شناسایی کنند.
برای حل این چالش، این توسعهدهنده یک خط لوله (Pipeline) سه لایهای را پیاده کرد:
- کانونیکالسازی URL: حذف رشتههای پرسوجو و یکسانسازی حروف کوچک. این مرحله حدود ۵۰٪ تکرارها را حذف کرد.
- اثرانگشتگذاری (Fingerprinting): نرمالسازی عنوان شغل و نام شرکت با حذف علائم نگارشی و برچسبهایی مثل «دورکاری» برای ایجاد یک هش (Hash) یکسان.
- انتخاب مرجع: در صورت باقی ماندن نسخههای مشابه، سیستمی طراحی شد که رکورد دارای غنیترین دادههای ساختاریافته (مثل بازه حقوقی) را نگه دارد.
بر اساس مستندات این پروژه، مشخص شد برخی سایتها حتی عناوین را تغییر میدهند (مثلاً افزودن عبارت «استخدام فوری!») که باعث میشود تطبیق متنی ساده شکست بخورد. در این حالت، استفاده از هش کردن فیلدهای نرمالشده بسیار دقیقتر از مقایسههای زیررشتهای بود. این رویکرد دقیقاً مکمل روشهای پیشرفتهتری است که در پیادهسازی جستوجوی معنایی آفلاین در مخازن کد برای مدیریت دادههای حجیم به کار میرود.
این تجربه برای کسانی که در حال ساخت عاملهای هوش مصنوعی هستند یک درس حیاتی است: هرگز به شناسههای خام وب بهعنوان کلیدهای یکتا اعتماد نکنید. شما باید یک لایه نرمالسازی قبل از ورود دادهها به مدل زبانی بزرگ (LLM) — مثل کتابخانهداری که میلیاردها صفحه را خوانده و حالا با همان لحن جواب میدهد — ایجاد کنید تا از اتلاف منابع محاسباتی جلوگیری شود.
گام بعدی شما
- منطق حذف تکرار فعلی خود را با یک نمونه ۱۰۰۰ تایی از نتایج واقعی تست کنید.
- لایه اثرانگشتگذاری را بر اساس فیلدهای کلیدی (نام شرکت + عنوان شغل) پیاده کنید.
- اولویتبندی دادهها را بر اساس میزان تکمیل بودن فیلدها (Structured Data) تنظیم کنید.
اما بهینهسازی دادهها تنها نیمی از مسیر است؛ مدیریت حافظه در مقیاس بالا چالش بعدی است که در تحلیل ما درباره پروتکل MCP بررسی خواهیم کرد.




گفتگو