Tools
جستوجوی Perplexity
OpenClaw از API جستوجوی Perplexity بهعنوان ارائهدهندهٔ web_search پشتیبانی میکند. این API نتایج ساختاریافتهای با فیلدهای title، url و snippet برمیگرداند.
برای سازگاری، OpenClaw از پیکربندیهای قدیمی Perplexity Sonar/OpenRouter نیز پشتیبانی میکند. اگر از OPENROUTER_API_KEY یا کلیدی با قالب sk-or-... در plugins.entries.perplexity.config.webSearch.apiKey استفاده کنید، یا plugins.entries.perplexity.config.webSearch.baseUrl / model را تنظیم کنید، ارائهدهنده به مسیر تکمیلهای گفتوگو تغییر میکند و بهجای نتایج ساختاریافتهٔ API جستوجو، پاسخهای ترکیبشده توسط هوش مصنوعی را همراه با ارجاعات برمیگرداند.
نصب Plugin
Plugin رسمی را نصب کنید، سپس Gateway را راهاندازی مجدد کنید:
openclaw plugins install @openclaw/perplexity-pluginopenclaw gateway restartدریافت کلید API از Perplexity
- در perplexity.ai/settings/api یک حساب Perplexity ایجاد کنید.
- در پیشخوان، یک کلید API ایجاد کنید.
- کلید را در پیکربندی ذخیره کنید یا
PERPLEXITY_API_KEYرا در محیط Gateway تنظیم کنید.
سازگاری با OpenRouter
اگر از قبل برای Perplexity Sonar از OpenRouter استفاده میکردید، provider: "perplexity" را حفظ کنید و OPENROUTER_API_KEY را در محیط Gateway تنظیم کنید، یا کلیدی با قالب sk-or-... را در plugins.entries.perplexity.config.webSearch.apiKey ذخیره کنید.
کنترلهای اختیاری سازگاری:
plugins.entries.perplexity.config.webSearch.baseUrlplugins.entries.perplexity.config.webSearch.model
نمونههای پیکربندی
API بومی جستوجوی Perplexity
{ plugins: { entries: { perplexity: { config: { webSearch: { apiKey: "pplx-...", }, }, }, }, }, tools: { web: { search: { provider: "perplexity", }, }, },}سازگاری با OpenRouter / Sonar
{ plugins: { entries: { perplexity: { config: { webSearch: { apiKey: "<openrouter-api-key>", baseUrl: "https://openrouter.ai/api/v1", model: "perplexity/sonar-pro", }, }, }, }, }, tools: { web: { search: { provider: "perplexity", }, }, },}محل تنظیم کلید
از طریق پیکربندی: دستور openclaw configure --section web را اجرا کنید. این دستور کلید را در ~/.openclaw/openclaw.json و زیر plugins.entries.perplexity.config.webSearch.apiKey ذخیره میکند. این فیلد اشیای SecretRef را نیز میپذیرد.
از طریق محیط: PERPLEXITY_API_KEY یا OPENROUTER_API_KEY را در محیط فرایند Gateway تنظیم کنید. برای نصب Gateway، آن را در ~/.openclaw/.env (یا محیط سرویس خود) قرار دهید. به متغیرهای محیطی مراجعه کنید.
اگر provider: "perplexity" پیکربندی شده باشد و SecretRef کلید Perplexity قابل حل نباشد و مقدار جایگزینی نیز در محیط وجود نداشته باشد، راهاندازی یا بارگذاری مجدد بلافاصله با خطا متوقف میشود.
پارامترهای ابزار
این پارامترها برای مسیر API بومی جستوجوی Perplexity کاربرد دارند.
querystringrequiredپرسوجوی جستوجو.
countnumberdefault: 5تعداد نتایجی که باید برگردانده شوند (۱ تا ۱۰).
countrystringکد دوحرفی ISO کشور (برای مثال US، DE).
languagestringکد زبان ISO 639-1 (برای مثال en، de، fr).
freshness'day' | 'week' | 'month' | 'year'فیلتر زمانی؛ day برابر با ۲۴ ساعت است.
date_afterstringفقط نتایجی که پس از این تاریخ منتشر شدهاند (YYYY-MM-DD).
date_beforestringفقط نتایجی که پیش از این تاریخ منتشر شدهاند (YYYY-MM-DD).
domain_filterstring[]آرایهٔ فهرست مجاز/مسدود دامنهها (حداکثر ۲۰ مورد).
max_tokensnumberdefault: 25000بودجهٔ کل محتوا (حداکثر ۱۰۰۰۰۰۰).
max_tokens_per_pagenumberdefault: 2048محدودیت توکن برای هر صفحه.
برای مسیر سازگاری قدیمی Sonar/OpenRouter:
query،countوfreshnessپذیرفته میشوند.- در این مسیر،
countفقط برای سازگاری است؛ پاسخ همچنان یک پاسخ ترکیبشده همراه با ارجاعات است، نه فهرستی از N نتیجه. - فیلترهای مختص API جستوجو (
country،language،date_after،date_before،domain_filter،max_tokens،max_tokens_per_page) خطاهای صریح برمیگردانند.
نمونهها:
// جستوجوی مختص کشور و زبانawait web_search({ query: "renewable energy", country: "DE", language: "de",}); // نتایج اخیر (هفتهٔ گذشته)await web_search({ query: "AI news", freshness: "week",}); // جستوجو در بازهٔ تاریخیawait web_search({ query: "AI developments", date_after: "2024-01-01", date_before: "2024-06-30",}); // فیلتر دامنه (فهرست مجاز)await web_search({ query: "climate research", domain_filter: ["nature.com", "science.org", ".edu"],}); // فیلتر دامنه (فهرست مسدود؛ با - آغاز کنید)await web_search({ query: "product reviews", domain_filter: ["-reddit.com", "-pinterest.com"],}); // استخراج محتوای بیشترawait web_search({ query: "detailed AI research", max_tokens: 50000, max_tokens_per_page: 4096,});قواعد فیلتر دامنه
- حداکثر ۲۰ دامنه در هر فیلتر.
- نمیتوان ورودیهای فهرست مجاز و فهرست مسدود را در یک درخواست ترکیب کرد.
- برای ورودیهای فهرست مسدود از پیشوند
-استفاده کنید (برای مثال["-reddit.com"]).
نکات
- API جستوجوی Perplexity نتایج ساختاریافتهٔ جستوجوی وب (
title،url،snippet) را برمیگرداند. - OpenRouter یا تنظیم صریح
plugins.entries.perplexity.config.webSearch.baseUrl/model، برای حفظ سازگاری Perplexity را به تکمیلهای گفتوگوی Sonar بازمیگرداند. - مسیر سازگاری Sonar/OpenRouter یک پاسخ ترکیبشده همراه با ارجاعات برمیگرداند، نه ردیفهای نتایج ساختاریافته.
- نتایج بهطور پیشفرض بهمدت ۱۵ دقیقه در حافظهٔ نهان نگهداری میشوند (از طریق
cacheTtlMinutesقابل پیکربندی است).