ربات تلگرام هوشمند با جستجوی وب و GPT-5

ربات تلگرام هوشمند با جستجوی وب و GPT-5

10 دقیقه مطالعه · منتشر شده ۱۴۰۵/۵/۶

دانلود workflow

فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.

  1. فایل JSON را دانلود کنید.
  2. در n8n: Workflows → Import from File.
  3. Credentialهای هر node را متصل کنید.
  4. workflow را فعال کنید.

شناسه workflow: 8673 · منبع: کاتالوگ Axeto

دستیار پاسخگویی به سوالات با جستجوی واقعی وب با استفاده از تلگرام، Tavily و GPT-5

این گردش کار یک ربات دستیار جستجوی تلگرام ایجاد می‌کند. این ربات برای ارائه پاسخ‌های سریع، واقعی و مختصر به سوالات کاربران که از طریق تلگرام ارسال می‌شوند، طراحی شده است. ربات از API جستجوی وب Tavily برای یافتن اطلاعات مرتبط و یک مدل پیشرفته هوش مصنوعی (GPT-5 از طریق AIMLAPI) برای خلاصه کردن یافته‌ها استفاده می‌کند، سپس مستقیماً در چت تلگرام پاسخ می‌دهد.

این گردش کار و موارد دیگر را در کاتالوگ Axeto کاوش کنید: https://axeto.ai/n8n

نمای کلی گردش کار

این گردش کار به چهار بخش منطقی اصلی تقسیم شده است:

1. دریافت ورودی: پیام‌های ورودی تلگرام را دریافت کرده و با نشانگر "در حال تایپ" به ورودی کاربر پاسخ می‌دهد.

2. پردازش جستجوی وب: سوال کاربر را به API جستجوی وب Tavily ارسال می‌کند تا نتایج خام جستجو را بازیابی کند.

3. خلاصه‌سازی هوش مصنوعی: نتایج جستجو و پرسش اصلی را با دستورالعمل‌های خاص به GPT-5 (از طریق AIMLAPI) ارسال می‌کند تا فقط اطلاعات واقعی را استخراج کرده، آن را به طور خلاصه (۳-۴ جمله) خلاصه کند و اکیداً از جعل اطلاعات خودداری نماید.

4. پاسخ تلگرام: خلاصه تولید شده و مبتنی بر واقعیت را مستقیماً به پیام اصلی کاربر در چت تلگرام ارسال می‌کند.

ملاحظات اضافی، مانند مدیریت خطا، مسیریابی دستورات (مانند /help، /sources) و سفارشی‌سازی‌های احتمالی مانند محدودیت نرخ و کشینگ، در یادداشت‌های چسبان ذکر شده‌اند اما در این نسخه خاص پیاده‌سازی نشده‌اند.

تشریح گره به گره

۱. دریافت ورودی

این بخش با دریافت پیام در تلگرام، گردش کار را آغاز می‌کند. جزئیات لازم برای پاسخ‌دهی را ثبت کرده و با ارسال اکشن چت "در حال تایپ" به کاربر بازخورد می‌دهد.

  • گره‌ها:

* Telegram Trigger

* Send a chat action (Telegram)

  • جزئیات گره:

* Telegram Trigger

* نوع: n8n-nodes-base.telegramTrigger

* نقش: نقطه ورود گردش کار، گوش دادن به پیام‌های دریافتی تلگرام.

* پیکربندی: از اعتبارنامه API ربات تلگرام شما استفاده می‌کند. برای فعال شدن با هر به‌روزرسانی پیام دریافتی پیکربندی شده است.

* ورودی: رویداد پیام دریافتی تلگرام.

* خروجی: یک شیء JSON حاوی جزئیات پیام مانند message.text، chat.id و message_id (برای پاسخ‌دهی ضروری است).

* نسخه: v1.2

* Send a chat action

* نوع: n8n-nodes-base.telegram (عملیات: sendChatAction)

* نقش: نشانگر "در حال تایپ" را به چت تلگرام ارسال می‌کند و به کاربر اطلاع می‌دهد که ربات در حال پردازش درخواست اوست.

* پیکربندی: از chat.id خروجی گره Telegram Trigger استفاده می‌کند.

* ورودی: خروجی از گره Telegram Trigger.

* خروجی: داده‌ها را بدون تغییر به پایین‌دست منتقل می‌کند.

* نسخه: v1.2

۲. پردازش جستجوی وب

این بخش از API Tavily برای انجام جستجوی وب بر اساس پرسش کاربر استفاده می‌کند.

  • گره‌ها:

* Search (Tavily)

  • جزئیات گره:

* Search

* نوع: @tavily/n8n-nodes-tavily.tavily

* نقش: اجرای جستجوی وب با استفاده از پرسش کاربر به عنوان کوئری.

* پیکربندی: پارامتر query به صورت پویا با استفاده از message.text از Telegram Trigger تنظیم می‌شود.

* ورودی: خروجی JSON از گره Send a chat action را دریافت می‌کند.

* خروجی: پاسخ خام JSON از API Tavily، که معمولاً نتایج جستجو را تحت کلید results در بر دارد.

* اعتبارنامه‌ها: کلید API Tavily شما را نیاز دارد.

* نسخه: v1

۳. خلاصه‌سازی هوش مصنوعی

این بخش از GPT-5 از طریق گره AIMLAPI برای خلاصه‌سازی نتایج جستجو استفاده می‌کند. این گره با پرامپت‌های دقیق پیکربندی شده است تا از دقت واقعی و اختصار اطمینان حاصل شود.

  • گره‌ها:

* AI/ML Chat Completion (AIMLAPI)

  • جزئیات گره:

* AI/ML Chat Completion

* نوع: n8n-nodes-aimlapi.aimlApi (عملیات: chatCompletion)

* نقش: فراخوانی مدل چت GPT-5 برای تولید پاسخی مختصر و واقعی بر اساس نتایج جستجوی وب.

* پیکربندی:

* مدل: openai/gpt-5-chat-latest

* پرامپت: پرامپتی که به صورت پویا ساخته شده و شامل پرسش اصلی کاربر و نتایج کامل JSON جستجوی Tavily است. دستورالعمل‌های کلیدی بر استخراج فقط حقایق، محدود کردن پاسخ به ۳-۴ جمله، و بیان صریح در صورت ناکافی بودن داده‌ها، با موانع سختگیرانه در برابر جعل، تأکید دارند.

* قالب پاسخ: متن ساده.

* ورودی: خروجی گره Search را دریافت می‌کند که شامل هر دو کوئری اصلی و نتایج جستجو است.

* خروجی: پاسخ تولید شده به صورت متن ساده در فیلد content.

* اعتبارنامه‌ها: اعتبارنامه‌های AIMLAPI شما را نیاز دارد.

* نسخه: v1

۴. پاسخ تلگرام

این بلوک نهایی، خلاصه تولید شده توسط هوش مصنوعی را به چت تلگرام کاربر ارسال می‌کند و اطمینان می‌دهد که پاسخ برای حفظ زمینه به پیام اصلی متصل شده است.

  • گره‌ها:

* Send a text message (Telegram)

  • جزئیات گره:

* Send a text message

* نوع: n8n-nodes-base.telegram (عملیات: sendMessage)

* نقش: ارسال پاسخ خلاصه‌شده به چت اصلی تلگرام.

* پیکربندی:

* محتوای متن: به صورت پویا به خروجی content از گره AI/ML Chat Completion نگاشت می‌شود.

* شناسه چت: از chat.id استخراج شده از پیام اولیه Telegram Trigger استفاده می‌کند.

* پاسخ به شناسه پیام: به message_id پیام اصلی برای ایجاد یک پاسخ متصل شده ارجاع می‌دهد.

* ورودی: خروجی از گره AI/ML Chat Completion را دریافت می‌کند.

* خروجی: تأیید ارسال پیام.

* اعتبارنامه‌ها: از اعتبارنامه API ربات تلگرام شما استفاده می‌کند.

* نسخه: v1.2

جدول خلاصه

نام نود (Node Name)نوع نود (Node Type)نقش عملکردی (Functional Role)نود(های) ورودی (Input Node(s))نود(های) خروجی (Output Node(s))یادداشت چسبان (Sticky Note)
Telegram Triggern8n-nodes-base.telegramTriggerدریافت پیام تلگرامSend a chat action📩 دریافت پیام تلگرام: مدیریت پیام‌های متنی ورودی. از chat.id + message_id برای پاسخ استفاده کنید.
Send a chat actionn8n-nodes-base.telegramنمایش نشانگر "در حال تایپ"Telegram TriggerSearch⌨️ نشانگر تایپ: ارسال "در حال تایپ" برای نمایش پیشرفت.
Search@tavily/n8n-nodes-tavily.tavilyانجام جستجوی وب با کوئریSend a chat actionAI/ML Chat Completion🔎 جستجوی وب: کوئری = پیام کاربر. JSON خام را به نود بعدی ارسال کنید.
AI/ML Chat Completionn8n-nodes-aimlapi.aimlApiخلاصه کردن نتایج جستجوSearchSend a text message🧠 خلاصه LLM: ورودی: JSON کامل جستجو. خروجی: پاسخ مختصر و واقعی.
Send a text messagen8n-nodes-base.telegramپاسخ با جواب در تلگرامAI/ML Chat Completion📤 پاسخ به تلگرام: پاسخ به همان چت، با ارجاع به پیام اصلی.
یادداشت چسبان - نمای کلیSticky Noteهدف و خلاصه گردش کار# 🔍 دستیار جستجوی تلگرام: ربات مینیمال که: ۱) سوالی را در تلگرام دریافت می‌کند ۲) وب را جستجو می‌کند (Tavily) ۳) حقایق را با AIMLAPI خلاصه می‌کند (openai/gpt-5-chat-latest) ۴) به طور مختصر پاسخ می‌دهد (۳-۴ جمله)، مستند به منابع. هدف: پاسخ‌های سریع و واقعی بدون توهم.
یادداشت چسبان - پرامپت LLMSticky Noteدستورالعمل برای پرامپت LLM🧠 پرامپت LLM (گاردریل‌ها): فقط حقایقی را که به سوال پاسخ می‌دهند استخراج کنید حداکثر ۳-۴ جمله اگر داده‌ها کم است → به وضوح بگویید هیچ اختلاقی وجود ندارد — فقط از نتایج ارائه شده استفاده کنید. ورودی‌ها: - query = پیام کاربر - results = JSON کامل Tavily
یادداشت چسبان - تستSticky Noteراهنمایی تست و جایگزین‌ها🧪 تست و جایگزین‌ها: از تلگرام تست کنید (نه فقط "اجرای نود"). Switch را برای دستورات و متن خالی اضافه کنید. اگر نتیجه‌ای وجود نداشت → پاسخ دهید: "من نتوانستم اطلاعات قابل اعتماد کافی پیدا کنم." خطاها را مدیریت کنید: پیام دوستانه ارسال کنید، جزئیات را ثبت کنید.
یادداشت چسبان - سفارشی‌سازیSticky Noteپیشنهادات برای بهبود🛠 سفارشی‌سازی: /help → نحوه استفاده و مثال‌ها. /sources → لیست URLهای برتر از نتایج. مسیریابی /news یا /wiki از طریق کلمات کلیدی. اضافه کردن فیلتر محتوای نامناسب/توهین‌آمیز قبل از جستجو. محدودیت نرخ در هر کاربر (تنظیم → انتظار → Redis/DB). اختیاری: ذخیره پاسخ‌های اخیر در حافظه پنهان (کلید = کوئری نرمال‌شده).
یادداشت چسبان - پاسخSticky Noteتوضیح نود پاسخ📤 پاسخ به تلگرام: پاسخ به همان چت، با ارجاع به پیام اصلی.
یادداشت چسبان - LLMSticky Noteتوضیح خلاصه سازی LLM🧠 خلاصه LLM: ورودی: JSON کامل جستجو. خروجی: پاسخ مختصر و واقعی.
یادداشت چسبان - جستجوSticky Noteتوضیح نود جستجو🔎 جستجوی وب: کوئری = پیام کاربر. JSON خام را به نود بعدی ارسال کنید.
یادداشت چسبان - تایپSticky Noteتوضیح نشانگر تایپ⌨️ نشانگر تایپ: ارسال "در حال تایپ" برای نمایش پیشرفت.
یادداشت چسبان - دریافتSticky Noteتوضیح تریگر تلگرام📩 دریافت پیام تلگرام: مدیریت پیام‌های متنی ورودی. از chat.id + message_id برای پاسخ استفاده کنید.
یادداشت چسبان - پرامپت LLM1Sticky Noteدستورالعمل راه‌اندازی⚙️ راه‌اندازی: ۱. تلگرام: ربات را از طریق @BotFather ایجاد کنید → توکن را در Credentials → Telegram API اضافه کنید. ۲. Tavily: کلید API ایجاد کنید → اعتبارنامه حساب Tavily را اضافه کنید. ۳. AIMLAPI: اعتبارنامه API هوش مصنوعی/یادگیری ماشین را اضافه کنید (URL پایه https://api.aimlapi.com/v1). ۴. محیط: TELEGRAM_BOT_TOKEN, TAVILY_API_KEY, AIML_API_KEY را در n8n تنظیم کنید (در صورت استفاده از متغیرهای محیطی).

بازسازی گردش کار از ابتدا

1. ایجاد گره Telegram Trigger:

* نوع: n8n-nodes-base.telegramTrigger

* پیکربندی: با توکن API ربات تلگرام خود (که از @BotFather دریافت کرده‌اید) راه‌اندازی کنید. اطمینان حاصل کنید که برای گوش دادن به به‌روزرسانی‌های message پیکربندی شده است.

* موقعیت: این باید اولین گره در گردش کار شما باشد.

2. افزودن گره Send a chat action:

* نوع: n8n-nodes-base.telegram (عملیات: sendChatAction)

* اعتبارنامه‌ها: از همان اعتبارنامه‌های API تلگرام به عنوان گره Trigger استفاده کنید.

* پیکربندی:

* Chat ID را روی ={{ $json.message.chat.id }} تنظیم کنید تا شناسه چت ورودی به صورت پویا ارجاع داده شود.

* اطمینان حاصل کنید که عملیات روی sendChatAction تنظیم شده است (این معمولاً پیش‌فرض است).

3. افزودن گره Tavily Search:

* نوع: @tavily/n8n-nodes-tavily.tavily

* اعتبارنامه‌ها: با کلید API Tavily خود پیکربندی کنید.

* پیکربندی:

* پارامتر Query را روی ={{ $json.message.text }} تنظیم کنید تا از پیام کاربر به عنوان پرس‌وجوی جستجو استفاده شود.

4. افزودن گره AIMLAPI Chat Completion:

* نوع: n8n-nodes-aimlapi.aimlApi (عملیات: chatCompletion)

* اعتبارنامه‌ها: با اعتبارنامه‌های AIMLAPI خود، از جمله URL پایه (https://api.aimlapi.com/v1) پیکربندی کنید.

* پیکربندی:

* مدل: openai/gpt-5-chat-latest را انتخاب کنید.

* Prompt: یک Prompt بسازید که شامل پرس‌وجوی کاربر و نتایج جستجوی Tavily باشد. نقطه شروع خوبی این است:

```

User Question: {{ $json.message.text }}

Web Search Results:

{{ $json.results }}

بر اساس نتایج جستجوی وب ارائه شده، به سؤال زیر به طور خلاصه در 3-4 جمله پاسخ دهید. فقط اطلاعات واقعی را که مستقیماً به سؤال پاسخ می‌دهند استخراج کنید. اگر نتایج ارائه شده اطلاعات کافی برای پاسخ به سؤال را ندارند، به وضوح بیان کنید. هیچ اطلاعاتی را اختراع نکنید.

```

* Response Format: روی Plain Text تنظیم کنید.

5. افزودن گره Telegram Send Message:

* نوع: n8n-nodes-base.telegram (عملیات: sendMessage)

* اعتبارنامه‌ها: از اعتبارنامه‌های API تلگرام خود استفاده کنید.

* پیکربندی:

* Chat ID: روی ={{ $json.message.chat.id }} تنظیم کنید.

* Text: روی ={{ $json.data.content }} تنظیم کنید (با فرض اینکه گره AIMLAPI شما پاسخ را در فیلدی به نام content در داخل data خروجی می‌دهد). در صورت متفاوت بودن ساختار خروجی شما، آن را تنظیم کنید.

* Reply to Message ID: روی ={{ $json.message.message_id }} تنظیم کنید تا مستقیماً به پیام اصلی کاربر پاسخ داده شود.

Nodeهای استفاده‌شده

سوالات متداول

این ربات تلگرام چگونه کار می‌کند؟

این ربات ابتدا پیام تلگرام شما را دریافت کرده، سپس با استفاده از Tavily در وب جستجو می‌کند و در نهایت با GPT-5 (از طریق AIMLAPI) نتایج را خلاصه کرده و پاسخ واقعی را مستقیماً در تلگرام به شما می‌دهد.

چه ابزارهایی در این گردش کار استفاده شده است؟

این گردش کار از گره‌های Telegram Trigger، Send a chat action (Telegram)، Tavily Search و AI/ML Chat Completion (AIMLAPI) استفاده می‌کند.

آیا این ربات می‌تواند اطلاعات نادرست تولید کند؟

خیر، این گردش کار به گونه‌ای طراحی شده است که با دستورالعمل‌های دقیق به GPT-5، فقط اطلاعات واقعی را استخراج و خلاصه کند و از تولید اطلاعات نادرست جلوگیری نماید.

workflowهای مرتبط

این workflow در کاتالوگ Axeto.ai بایگانی شده است. لایسنس اصلی متعلق به سازنده workflow است.