جایی که هوش مصنوعی با OpenSearch از طریق MCP عمل میکند
نکات کلیدی
- با رسیدن جستجوی مبتنی بر کلمات کلیدی به محدودیتهای خود، صنعت به سمت جستجوی معنایی، چندوجهی، مکالمهای و عاملمحور مبتنی بر هوش مصنوعی در حال حرکت است؛ جستجویی که نیت و زمینه کاربر را درک میکند و به کاربران امکان میدهد بدون نیاز به مهارتهای فنی یا توسعه برنامههای سفارشی، از طریق پرسوجوهای زبان طبیعی به بینش دست پیدا کنند.
- راهکارهای جستجوی مکالمهای نسل بعدی و آگاه از زمینه را میتوان با استفاده از OpenSearch و عاملهای هوش مصنوعی که توسط مدلهای زبانی بزرگ (LLM) و پروتکل زمینه مدل (MCP) پشتیبانی میشوند، ساخت. MCP پلی میان عاملهای هوش مصنوعی و OpenSearch ایجاد میکند تا برنامههای جستجوی هوشمند ساخته شوند.
- عاملهای هوش مصنوعی (برنامههای تخصصی هوش مصنوعی) در واقع LLMهایی هستند که به قابلیتهای مدیریت نقش، وظیفه و زمینه مجهز شدهاند. یک عامل هوش مصنوعی معمولاً شامل یک LLM برای استدلال، حافظه برای حفظ زمینه مرتبط در طول تعاملات، ابزارها برای قابلیتهای توسعهیافته و بازیابی تقویتشده با تولید (RAG) برای بازیابی انتخابی دانش است.
- معماری پیشنهادی این مؤلفهها را از طریق سه لایه کنار هم قرار میدهد: لایه عاملمحور برای هوشمندی، لایه پروتکل MCP (شامل کلاینت و سرور MCP) برای ارتباط، و لایه داده برای ایندکسگذاری، جستجو و تحلیل.
- الگوهای استقرار سرور MCP شامل استقرار محلی، راهدور، هیبریدی مدیریتشده (درونسازمانی/ابر) و بومی ابر هستند که هرکدام بسته به نیازهای سازمانی، ملاحظات و مصالحههای متفاوتی دارند.
مقدمه
تصور کنید یک مدیر فروش به زبان ساده انگلیسی بپرسد: «ده محصول برتر از نظر درآمد در این فصل را نشان بده و روندهای ماه آینده را پیشبینی کن» و بدون انتظار چندروزه برای گزارش تیم هوش تجاری، در عرض چند ثانیه به بینشهای جامع دست پیدا کند. یا بتوانید از سیستم خود بپرسید: «چه چیزی باعث تأخیرهای بالا در برنامه من شده است؟» و نهتنها نتایج مرتبط با تأخیر، بلکه تحلیل جامع و همبستگی لاگهای خطا، متریکها و استقرارهای اخیر را دریافت کنید.
جستجوی عاملمحور نسل بعدی این قابلیت جستجوی مکالمهای را ممکن میکند؛ جایی که عاملهای هوش مصنوعی مبتنی بر LLM از طریق پروتکلهای استانداردی مانند MCP با سیستمهای داده تعامل میکنند تا تجربهای مکالمهای و آگاه از زمینه ارائه دهند.
در این مقاله بررسی میکنیم که MCP چگونه میان عاملهای هوش مصنوعی و OpenSearch پل میزند تا برنامههای جستجوی هوشمند ساخته شوند. همچنین سیر تحول از جستجوی مبتنی بر کلمات کلیدی به جستجوی عاملمحور، اجزای معماری و پیادهسازیهای عملی همراه با نمونههای واقعی را مرور خواهیم کرد.
OpenSearch و موارد استفاده در صنعت
OpenSearch یک مجموعه متنباز برای جستجو و تحلیل است که در تحلیل لاگها، پایش بلادرنگ برنامهها و جستجوی وبسایتها استفاده میشود. با نزدیک به نهصد میلیون دانلود نرمافزاری از زمان آغاز به کار، مشارکت هزاران توسعهدهنده و بیش از چهارده عضو ممتاز مانند AWS، SAP و Oracle، OpenSearch طبق رتبهبندی DB-Engines در میان پنج موتور جستجوی برتر قرار دارد.
از جستجوی محصولات تجارت الکترونیک تا پلتفرمهای مشاهدهپذیری، بسیاری از صنایع از OpenSearch برای جستجوی واژگانی، معنایی و تحلیل لاگ استفاده میکنند. نگاهی کوتاه به سیر تحول جستجو میاندازیم.
تحول جستجو: از کلمات کلیدی تا عاملها

جستجوی کلمات کلیدی
این نوع جستجو که با نام جستجوی واژگانی نیز شناخته میشود، روش سنتی جستجو با استفاده از واژهها یا عبارات مشخص است. OpenSearch بهصورت پیشفرض از الگوریتمهای TF-IDF یا Okapi BM25F استفاده میکند که معمولاً با عنوان ایندکسهای «Lucene» شناخته میشوند. با وجود سرعت بالا، قطعیت و استقلال از زبان، جستجوی کلمات کلیدی زمینه و نیت کاربر را نادیده میگیرد.
برای مثال، جستجوی «Black jacket for men» هر سندی را که این واژهها را داشته باشد برمیگرداند؛ از جمله «men wearing black shirts» یا «jackets in other colors». میتوانید این نوع جستجو را در دموهای هوش مصنوعی OpenSearch در Hugging Face با انتخاب نوع جستجو بهعنوان «keyword search» امتحان کنید.
جستجوی معنایی
جستجوی معنایی نسبت به جستجوی کلمات کلیدی پیشرفتهتر است و زمینه و نیت کاربر را در زمان اجرای پرسوجو در نظر میگیرد. در این روش، دادهها به بردارهای تعبیهشده تبدیل میشوند؛ یعنی متن به نمایش عددی تبدیل میشود. این بردارها معمولاً بهعنوان «ذخیرهساز برداری» یا «پایگاه داده برداری» شناخته میشوند. OpenSearch امکان استفاده از چندین مدل از پیشآموزشدیده برای تبدیل متن به بردار یا حتی دادههایی مانند تصویر، صوت یا ویدئو را فراهم میکند.
در همان مثال قبلی، نتایج فقط به «مردانی که کت مشکی پوشیدهاند» محدود میشود. میتوانید این نوع جستجو را در دموهای OpenSearch در Hugging Face با انتخاب «vector search» امتحان کنید.
جستجوی چندوجهی یا ترکیبی
این رویکرد ترکیبی از جستجوی کلمات کلیدی و معنایی است. در این حالت، نتایج هم مبتنی بر واژه و هم مبتنی بر معنا هستند. علاوه بر این، در جستجوی چندوجهی، از چندین مدل برای انواع مختلف داده مانند متن همراه با تصویر استفاده میشود. برای مثال، در صفحه دموهای OpenSearch در Hugging Face ممکن است نتایجی شامل متن و تصویر را همزمان مشاهده کرده باشید.
جستجوی مکالمهای
جستجوی مکالمهای با استفاده از زبان طبیعی و به شکل پرسشوپاسخ، از OpenSearch پرسوجو میکند و از LLMها بهره میبرد. این LLMها بدون حالت هستند، اما زمینه و تاریخچه مکالمه را به دو روش حفظ میکنند:
- حافظه داخلی ارائهشده توسط ارائهدهندگان مدرن LLM مانند OpenAI ChatGPT و Anthropic Claude برای نگهداری مبتنی بر نشست
- سیستمهای ذخیرهسازی حافظه خارجی برای مدیریت پایدار حافظه در سطح سازمانی، از جمله پایگاههای داده سنتی مانند PostgreSQL، Redis و Cassandra، پایگاههای داده برداری مانند OpenSearch و Pinecone یا چارچوبهای عاملمحور مانند LangChain، Strands و LlamaIndex
جستجوی مکالمهای همراه با RAG، پاسخ LLM را با اتصال به منابع داده خارجی مانند OpenSearch تقویت میکند. این روش معمولاً برای پرسوجوهای ساده تا متوسط و بازیابی اطلاعات مستقیم مناسب است.
تفاوت کلیدی این است که حافظه، تاریخچه مکالمه را برای حفظ زمینه نگه میدارد، در حالی که RAG با بازیابی اطلاعات مرتبط از منابع خارجی، پاسخها را دقیقتر و بهروزتر میکند.
جستجوی عاملمحور (نسل بعدی جستجو)
جستجوی عاملمحور در OpenSearch به شما امکان میدهد پرسشهای خود را به زبان طبیعی مطرح کنید.
این نوع جستجو نسخه پیشرفتهتری از جستجوی مکالمهای است. برخلاف جستجوی مکالمهای، عاملها دارای حافظه داخلی هستند، جریان کاری وظایف را با قابلیت استدلال LLM هماهنگ میکنند و درباره نحوه اجرای پرسوجو در OpenSearch تصمیم میگیرند. این وظایف شامل جستجو، تحلیل، همبستگی و اجرا هستند و عاملها میتوانند بهصورت خودکار جریان کاری را تکرار و اصلاح کنند.
جستجوی عاملمحور میتواند به چندین منبع داده متصل شود و با هماهنگی ابزارهای مختلف، پاسخها را غنی کند. در این روش، کاربر میتواند مکالمه را حفظ کرده و از طریق پروتکل زمینه مدل، ابزارها را روی OpenSearch اجرا کند.
عاملهای هوش مصنوعی چیستند؟
عاملهای هوش مصنوعی، برنامههای تخصصی مبتنی بر LLM هستند که به قابلیتهای مدیریت نقش، وظیفه و زمینه مجهز شدهاند. یک عامل معمولاً شامل LLM برای استدلال، حافظه برای حفظ زمینه، ابزارها برای قابلیتهای بیشتر و RAG برای بازیابی انتخابی دانش است. این ساختار به عامل اجازه میدهد با مدیریت بهینه پنجره زمینه محدود LLM، فقط اطلاعات مرتبط را وارد کند و پاسخهای دقیقتری تولید نماید.

در ادامه، دو مورد استفاده تجاری OpenSearch را بررسی میکنیم.
مورد استفاده جستجو: تحلیلگر فروش و گزارش مدیریتی
تحلیلگر فروش (عامل هوش مصنوعی) مأمور تهیه گزارش هفتگی عملکرد فروش برای مدیران ارشد است.
عامل هوش مصنوعی از مدیر تحلیل (هماهنگکننده LLM) استفاده میکند که مشخص میکند چه چیزی تحلیل شود، از کجا دادهها استخراج شوند و چگونه بررسی انجام گیرد.
پس از آماده شدن برنامه اجرا، عامل از طریق MCP به ابزارهایی مانند پایگاه داده فروش، پلتفرم تجارت الکترونیک و پلتفرم بازاریابی متصل میشود و از پایگاههای دانش برای تکمیل تحلیل بهره میبرد.
در روز دوم، اگر مدیر بخواهد به خلاصه روز اول مراجعه کند، عامل با استفاده از حافظه، زمینه مکالمه را حفظ میکند.
مورد استفاده مشاهدهپذیری: مهندس DevOps و اختلال تولید
در این سناریو، مهندس DevOps (عامل هوش مصنوعی) مأمور بررسی و رفع مشکل عملکرد یک برنامه در محیط تولید است.
عامل از مدیر رخداد برای هدایت تحلیل استفاده میکند، دادهها را از OpenSearch، GitHub و PagerDuty جمعآوری میکند و با اسناد مرجع تکمیل مینماید.
در روز دوم نیز عامل یافتههای روز اول را به خاطر میسپارد و مکالمه را ادامه میدهد.
چرا به عاملها نیاز داریم؟
LLMها: مشکل مغز دیروز
LLMها بر دادههای گذشته آموزش دیدهاند و به دادههای بلادرنگ دسترسی ندارند. RAG این مشکل را با اتصال LLM به منابع داده خارجی مانند OpenSearch حل میکند.
حافظه مکالمه
LLMها بهتنهایی تاریخچه مکالمه را نگه نمیدارند. عاملها با استفاده از حافظه کوتاهمدت و بلندمدت این مشکل را برطرف میکنند. از OpenSearch نسخه ۳.۳ به بعد، حافظه عاملمحور بهصورت داخلی ارائه شده است.
پایگاههای دانش
LLMها دادههای اختصاصی سازمان شما را ندارند. این دادهها میتوانند بهعنوان پایگاه دانش برای تقویت پاسخها استفاده شوند.
ابزارها
هر عامل مجموعهای از ابزارها برای اجرای وظایف دارد. OpenSearch ابزارهایی برای جستجو، تحلیل، همبستگی و اجرا ارائه میدهد و امکان توسعه ابزارهای سفارشی نیز وجود دارد.
چالشهای توسعه عاملهای هوش مصنوعی
ساخت عامل ساده است، اما یکپارچهسازی آن با سیستمهای موجود پیچیده است. MCP این پیچیدگی را با ارائه یک روش اتصال یکپارچه برطرف میکند.

پروتکل زمینه مدل (MCP): اتصالدهنده جهانی
MCP یک API یکپارچه برای اتصال به خدمات مختلف ارائه میدهد و شامل دو مؤلفه است:
پروتکل زمینه مدل، یک پروتکل متنباز و امن مبتنی بر JSON-RPC 2.0 برای ارتباط بین کلاینت و سرور MCP
سرور MCP، برنامهای که بهعنوان پل امن بین مدلهای هوش مصنوعی و منابع داده خارجی عمل میکند
جستجوی عاملمحور OpenSearch چگونه کار میکند؟
در این مقاله از مدل استقرار محلی برای سادگی استفاده شده است، اما در محیط تولید، گزینههای ابری یا هیبریدی توصیه میشود.
نمای کلی معماری
لایه عاملمحور
Claude Desktop بهعنوان رابط مکالمهای و کلاینت MCP عمل میکند و با LLM و OpenSearch ارتباط برقرار میکند.
لایه پروتکل (کلاینت و سرور MCP)
کلاینت MCP پیکربندی اتصال به OpenSearch را نگه میدارد و سرور MCP عملیات OpenSearch را بهصورت ابزار در اختیار LLM قرار میدهد.
لایه داده
OpenSearch دادهها را ذخیره و ایندکس میکند.
راهاندازی سرور MCP در OpenSearch
OpenSearch از نسخه ۳.۰ به بعد سرور MCP را بهصورت پیشفرض ارائه میدهد و ابزارهایی مانند جستجو، تحلیل و بررسی سلامت کلاستر را در اختیار قرار میدهد.
الگوهای استقرار سرور MCP
استقرار محلی، راهدور، هیبریدی مدیریتشده و بومی ابر از گزینههای رایج هستند و امکان پیادهسازی سرور سفارشی نیز وجود دارد.
راهنمای پیادهسازی
در این بخش نحوه پیکربندی Claude Desktop با سرور MCP در OpenSearch برای جستجوی عاملمحور توضیح داده میشود. راهنمای کامل و کد منبع در مخزن NextGenSearch-OpenSearch-MCP در دسترس است.
جریان تعامل کاربر و MCP در جستجوی عاملمحور
این جریان سطح بالا نشان میدهد پرسوجوی کاربر چگونه ترجمه میشود و MCP چگونه دادهها را از OpenSearch بازیابی و به کاربر ارائه میکند.
