بازگشت به ۳۰ سال قبل - چرا موتور جستوجوهای داخلی پاسخگوی درخواست کاربران نیست؟

بازگشت به ۳۰ سال قبل – چرا موتور جستوجوهای داخلی پاسخگوی درخواست کاربران نیست؟

فهرست مطالب

موتور جستوجوهای داخلی پس از قطعی‌های مکرر و طولانی مدت اینترنت به یکی از موضوعات بحث‌برانگیز در فضای فناوری ایران تبدیل شده تا جایی که حتی مقامات وزارت ارتباطات نیز بارها نظرات خاص و تقریبا مبالغه‌آمیز در مورد آن‌ها داده‌اند.

تا به امروز در مجموع بیش از دو ماه از ابتدای سال ۱۴۰۴، اینترنت جهانی برای کاربران ایرانی با اختلال یا قطع کامل مواجه بوده و در این میان یکی از چالش‌های اصلی دسترسی به موتور جستوجو کاربردی بوده است؛ کاربران و کسب‌وکارها مدام نیاز خود برای داشتن موتورهای جستوجوی کاربردی که بتواند پاسخگوی نیاز آن‌ها باشد را اعلام کرده‌اند و هم‌زمان مسئولان نیز به شکلی مبالغه‌آمیز از گزینه‌های داخلی مانند «ذره‌بین» و «گردو» سخن به میان آورده‌اند؛ اجبار کاربران برای استفاده از این موتورهای جستوجو در قطعی‌های طولانی مدت ۱۴۰۴ و ۱۴۰۵ تقریبا به همه‌ی کاربران نشان داده که این ابزارها توان نشان دادن نتایج مناسب را ندارند.

موتور جستوجوی داخلی گردو

از طرف دیگر صاحبان بسیاری از کسب و کارها برای نمایش وب‌سایت خود در نتایج این ابزارها با چالش مواجه شده‌اند و عملاً چیزی به نام SEO یا بهینه‌سازی وب‌سایت‌ها برای این موتورهای جستوجوی داخلی تعریف نشده است. حال سوال کلیدی این است که آیا یک موتور جستوجو داخلی واقعاً می‌تواند نیاز کاربران امروزی را برآورده کند یا اساساً از نظر فنی می‌توان کاربران را صرفا به استفاده از آن‌ها محدود کرد؟ در این مقاله به این سوالات پاسخ خواهیم داد.

موتور جستوجوی داخلی ذره بین

تاریخچه‌ی فنی موتورهای جست‌وجو و بررسی عملکرد آن‌ها

برای درک وضعیت فعلی هر موتور جستوجو داخلی باید به عقب برگردیم که در اوایل دهه ۱۹۹۰، سیستم‌های جستجو اساساً دایرکتوری‌های دستی بودند و وب‌سایت‌ها باید توسط انسان ثبت و دسته‌بندی می‌شدند. این مدل محدود، کند و به‌شدت وابسته به نیروی انسانی بود. به عنوان مثال موتور جستوجوی یاهو در اوایل دهه ۱۹۹۰ به عوان شرکت تبلیغاتی از کسب‌وکارها هزینه‌ای را دریافت می‌کرد تا وب‌سایت و نام آن‌ها را به صورت دستی در نتایج جست‌وجوی خود نمایش دهد. البته این موضوع در برخی از موارد پر درخواست و دارای رقابت بالا ممکن بود به صورت مزایده‌ای هم صورت بگیرد.

 

در سال ۱۹۹۴ نقطه عطفی در این حوزه رخ داد چون موتورهایی مانند WebCrawler و Lycos شروع به استفاده از «خزنده‌ها» کردند. خزنده Crawler یا Spider در حقیقت رباتی است که به‌صورت خودکار صفحات وب را پیمایش می‌کند، لینک‌ها را دنبال می‌کند و داده‌ها را برای ایندکس ذخیره می‌کند. این تحول باعث شد وابستگی به ثبت دستی کاهش پیدا کند.

در سال ۱۹۹۵ با ظهور AltaVista، ایندکس‌سازی در مقیاس بزرگ ممکن شد و از اینجا به بعد، موتورهای جستجو سه جزء کلیدی پیدا کردند که شامل این موارد می‌شدند

  • خزنده برای جمع‌آوری داده
  • ایندکس برای ذخیره و سازماندهی
  • الگوریتم رتبه‌بندی برای نمایش بهترین نتیجه

الگوریتم‌ها نقش تعیین‌کننده‌ای دارند و آن‌ها مشخص می‌کنند کدام صفحه برای یک کوئری خاص مرتبط‌تر است. در ابتدا این الگوریتم‌ها ساده بودند (مثلاً شمارش تکرار کلمات)، اما در سال ۱۹۹۸ با معرفی PageRank، تحلیل لینک‌ها به‌عنوان معیار اعتبار وارد بازی شد.

اما با پیشرفت فناوری، امروزه موتورهای جستجویی مثل گوگل و Bing از ترکیب پیچیده‌ای از موارد زیر استفاده می‌کنند:

  • پردازش زبان طبیعی (NLP)
  • یادگیری ماشین
  • تحلیل رفتار کاربر
  • درک نیت جستجو (Search Intent)

در نتیجه میان موتور جستوجوهای مدرن و موتور جستوجوهای سنتی سی سال پیش که فاقد این زیرساخت‌ها بودند تفاوت بسیار زیادی هست و اصلا نمی‌توان آن‌ها را با هم مقایسه کرد.

تلاش‌های نافرجام برای ساخت موتور جستوجوی بومی در ایران

اولین تلاش جدی برای ایجاد یک موتور جستوجو داخلی در ایران، پروژه «یوز» بود که در سال ۱۳۹۰ معرفی شد و به‌عنوان «اولین موتور جستجوی ملی» مطرح شد و در زمان خودش از آن تعریف و تمجید بسیار زیادی شد و بودجه‌ای چند ده میلیارد تومانی در زمان خودش به آن اختصاص یافت.

مسئولان وقت ادعا می‌کردند که یوز می‌تواند نیاز کاربران ایرانی را برطرف کند  و وابستگی به موتورهای خارجی را کاهش دهد  و زیرساخت جستجوی بومی ایجاد کند، اما در عمل مشکلات اساسی زیادی برای آن وجود داشت. ضعف در ایندکس‌سازی واقعی وب، عدم توسعه الگوریتم رتبه‌بندی مستقل و وابستگی به داده‌ها و APIهای خارجی باعث شد تا یوز عملا به یک پروژه شکست خورده تبدیل شود. وابستگی یوز به APIهای خارجی وقتی مشخص شد که در سال ۱۳۹۸ به مدت دو هفته‌ اینترنت قطع شد. کاربران متوجه شدند که موتور جستوجو داخلی یوز عملاً بدون دسترسی به منابع خارجی کارایی ندارد و نتایج آن بسیار محدود و غیرکاربردی است.

در نهایت پروژه یوز به‌تدریج کنار گذاشته شد و در سال ۱۴۰۰ اعلام شد که این موتور جستوجو داخلی از دسترس خارج می‌شود.

موتور جستوجوهای نوین داخلی و اصرار بر کپی‌برداری فناوری ۳۰ سال پیش!

بحث موتورجستوجوهای داخلی برای بار دیگر و پس از قطعی‌های طولانی مدتی که از سال ۱۴۰۴ شاهد آن بوده‌ایم بیشتر داغ شده است، اما بررسی‌ها نشان می‌دهد که بسیاری از نمونه‌های فعلی موتور جستوجو داخلی از نظر معماری به دهه ۱۹۹۰ شباهت دارند تا یک موتور جستوجوی واقعی و مدرن که پاسخگوی درخواست کاربران امروزی باشد. این موضوع به معنای آن‌ است که این نمونه‌های داخلی دارای رابط کاربری ساده هستند و در عین حال به یک دیتابیس محدود وابسته هستند و داده‌های آن‌ها یا دستی وارد شده‌اند یا با روش‌های ابتدایی مثل کش کردن موتور جستوجوهای خارجی مثل گوگل یا Bing یا موارد دیگر جمع‌آوری شده‌اند.

این مدل دقیقاً همان چیزی است که قبل از ظهور خزنده‌های پیشرفته وجود داشت که در چنین ساختاری پوشش وب بسیار محدود است  و به‌روزرسانی‌ها کند هستند  و نتایج جستجو فاقد عمق و تنوع‌ هستند.

این در حالی است که کاربر امروزی انتظار دارد تا در موتورهای جستوجو نتایج مرتبط در کسری از ثانیه با درک معنایی از کوئری بتوانند پیشنهادهای هوشمندی را به شکلی درست ارائه دهند.

اما یک موتور جستوجو داخلی که فاقد زیرساخت crawling و ranking پیشرفته است، عملاً نمی‌تواند این انتظارات را برآورده کند. نتیجه این می‌شود که تجربه کاربری به‌شدت افت می‌کند و کاربران دوباره به ابزارهای خارجی برمی‌گردند.

برای ساخت یک موتور جستوجوی کامل به چه چیز‌هایی نیاز هست

ساخت یک موتور جستوجو داخلی واقعی نیازمند مجموعه‌ای از زیرساخت‌های پیچیده است:

خزنده‌های پیشرفته (Crawler) که باید بتواند کارهای زیر را انجام دهد:

  • به صورت خودکار تمامی صفحات وب را پیمایش کند
  • تغییرات محتوایی و ساختاری وب‌سایت را تشخیص دهد
  • به‌صورت مداوم به‌روزرسانی انجام دهد

در حقیقت بدون خزنده قوی، اساساً دیتایی برای جستجو وجود ندارد و هر چیزی باید به صورت دستی یا با کپی‌برداری از کش موتور جستوجوهای خارجی برداشت شود.

ایندکس‌سازی باید در مقیاس بزرگ انجام شود:

داده‌های جمع‌آوری‌شده از خزنده‌های موتورهای جستوجو باید با توجه به محتوا و ساختار و ارزش و قدمت وب‌سایت ساختاردهی شوند  و سپس بهینه‌سازی و رتبه‌بندی شوند و در نهایت در دیتابیس ذخیره شوند. این پروسه باید به صورت پویا و مداوم رخ دهد و نتایج مدام بر اساس شرایط و تغییرات وب سازگار شود.

در نهایت نیز قابلیت جستجوی سریع داشته باشند تا بتوانند به بهترین شکل محتوایی مناسب با آنچه کاربر درخواست می‌کند را به آن‌ها نشان دهد.

این بخش نیازمند زیرساخت‌های توزیع‌شده Distributed Systems است که عملاً موتورهای جستوجوی ایرانی را میتوان فاقد آن دانست که اگر هم دارند، بسیار در این بخش ضعیف هستند.

الگوریتم رتبه‌بندی به شکل درست در نمونه‌های داخلی وجود ندارد

یک موتور جستوجو داخلی بدون الگوریتم دقیق، عملاً بی‌ارزش است. الگوریتم باید:

  • ارتباط معنایی را تشخیص دهد
  • کیفیت محتوا را ارزیابی کند
  • رفتار کاربران را تحلیل کند

نتیجه‌گیری

مشکل اصلی این نیست که ایده موتور جستوجو داخلی ذاتاً غلط است؛ مشکل در سطح اجرا و درک پیچیدگی آن است. تجربه تاریخی نشان می‌دهد که موتورهای جستجو طی یک مسیر ۳۰ ساله به وضعیت فعلی، با سرمایه‌گذاری عظیم، توسعه الگوریتمی و زیرساختی رسیده‌اند.

نمونه‌های داخلی، چه در گذشته مانند یوز و چه در نسخه‌های جدیدتر، عمدتاً این مسیر را طی نکرده‌اند و در نتیجه عملکرد آن‌ها شبیه به موتورهای اولیه دهه ۹۰ باقی مانده است. تا زمانی که یک موتور جستوجو داخلی نتواند از نظر crawling، indexing و ranking به سطح استاندارد جهانی نزدیک شود، انتظار پاسخگویی به نیاز کاربران امروزی، انتظار واقع‌بینانه‌ای نیست.