Tools

جست‌وجوی Exa

Exa AI یک ارائه‌دهندهٔ web_search با حالت‌های جست‌وجوی عصبی، کلیدواژه‌ای و ترکیبی، به‌همراه استخراج داخلی محتوا (نکات برجسته، متن و خلاصه‌ها) است.

نصب Plugin

bash
openclaw plugins install @openclaw/exa-pluginopenclaw gateway restart

دریافت کلید API

  • ایجاد حساب

    در exa.ai ثبت‌نام کنید و از پیشخوان خود یک کلید API ایجاد کنید.

  • ذخیره‌سازی کلید

    EXA_API_KEY را در محیط Gateway تنظیم کنید، یا از طریق دستور زیر پیکربندی کنید:

    bash
    openclaw configure --section web
  • پیکربندی

    json5
    {  plugins: {    entries: {      exa: {        config: {          webSearch: {            apiKey: "exa-...", // اگر EXA_API_KEY تنظیم شده باشد، اختیاری است            baseUrl: "https://api.exa.ai", // اختیاری؛ OpenClaw مسیر /search را اضافه می‌کند          },        },      },    },  },  tools: {    web: {      search: {        provider: "exa",      },    },  },}

    روش جایگزین با متغیر محیطی: EXA_API_KEY را در محیط Gateway تنظیم کنید. برای نصب Gateway، آن را در ~/.openclaw/.env قرار دهید. به متغیرهای محیطی مراجعه کنید.

    بازنویسی URL پایه

    برای هدایت درخواست‌های جست‌وجوی Exa از طریق یک پراکسی سازگار یا نقطهٔ پایانی جایگزین، plugins.entries.exa.config.webSearch.baseUrl را تنظیم کنید. OpenClaw میزبان‌های بدون طرح را با افزودن https:// در ابتدا عادی‌سازی می‌کند و مسیر /search را اضافه می‌کند، مگر اینکه مسیر از قبل به آن ختم شود. نقطهٔ پایانی حل‌شده بخشی از کلید حافظهٔ نهان جست‌وجو است؛ بنابراین نتایج نقاط پایانی مختلف هرگز به اشتراک گذاشته نمی‌شوند.

    پارامترهای ابزار

    querystringrequired

    عبارت جست‌وجو.

    countnumberdefault: 5

    تعداد نتایجی که بازگردانده می‌شوند (۱ تا ۱۰۰، با رعایت محدودیت‌های نوع جست‌وجوی Exa).

    type'auto' | 'neural' | 'fast' | 'deep' | 'deep-reasoning' | 'instant'

    حالت جست‌وجو.

    freshness'day' | 'week' | 'month' | 'year'

    فیلتر زمانی. نمی‌توان آن را با date_after/date_before ترکیب کرد.

    date_afterstring

    نتایج پس از این تاریخ (YYYY-MM-DD).

    date_beforestring

    نتایج پیش از این تاریخ (YYYY-MM-DD).

    contentsobject

    گزینه‌های استخراج محتوا (پایین را ببینید).

    استخراج محتوا

    برای کنترل محتوای استخراج‌شده در نتایج، یک شیء contents ارسال کنید:

    javascript
    await web_search({  query: "transformer architecture explained",  type: "neural",  contents: {    text: true, // متن کامل صفحه    highlights: { numSentences: 3 }, // جمله‌های کلیدی    summary: true, // خلاصهٔ هوش مصنوعی  },});
    گزینهٔ محتوا نوع توضیحات
    text boolean | { maxCharacters } استخراج متن کامل صفحه
    highlights boolean | { maxCharacters, query, numSentences, highlightsPerUrl } استخراج جمله‌های کلیدی
    summary boolean | { query } خلاصهٔ تولیدشده با هوش مصنوعی

    اگر contents حذف شود، Exa به‌طور پیش‌فرض از { highlights: true } استفاده می‌کند تا نتایج شامل گزیده‌هایی از جمله‌های کلیدی باشند. توضیحات نتایج ابتدا از نکات برجسته، سپس از خلاصه و بعد از متن کامل گرفته می‌شوند؛ هرکدام که زودتر در دسترس باشد. نتایج همچنین در صورت وجود، فیلدهای خام highlightScores و summary را از پاسخ API ‏Exa حفظ می‌کنند.

    حالت‌های جست‌وجو

    حالت توضیحات
    auto Exa بهترین حالت را انتخاب می‌کند (پیش‌فرض)
    neural جست‌وجوی معنایی/مبتنی بر مفهوم
    fast جست‌وجوی سریع کلیدواژه‌ای
    deep جست‌وجوی عمیق و جامع
    deep-reasoning جست‌وجوی عمیق همراه با استدلال
    instant سریع‌ترین نتایج

    نکات

    • count با رعایت محدودیت‌های نوع جست‌وجوی Exa، تا ۱۰۰ را می‌پذیرد.
    • نتایج به‌طور پیش‌فرض به‌مدت ۱۵ دقیقه در حافظهٔ نهان ذخیره می‌شوند. برای تغییر مدت ذخیره‌سازی در حافظهٔ نهان و مهلت زمانی درخواست برای همهٔ ارائه‌دهندگان web_search، از جمله Exa، مقادیر مشترک tools.web.search.cacheTtlMinutes (بر حسب دقیقه) و tools.web.search.timeoutSeconds (پیش‌فرض ۳۰ ثانیه) را پیکربندی کنید.

    مطالب مرتبط

    Was this useful?
    On this page

    On this page