چت با دیتابیس PostgreSQL با هوش مصنوعی در n8n (AI Agent)

خیلی وقت‌ها داده‌های اصلی کسب‌وکار داخل یک دیتابیس PostgreSQL نگه‌داری می‌شود؛ اما برای گرفتن یک جواب ساده باید کوئری SQL بنویسید، جدول‌ها را جوین کنید و گزارش دستی بسازید. ورک‌فلو «AI Agent برای چت با دیتابیس PostgreSQL» در n8n این دردسر را کم می‌کند؛ یک ایجنت هوش مصنوعی که روی دیتابیس شما می‌نشیند و با زبان طبیعی از آن سوال می‌پرسید، او پشت صحنه کوئری SQL می‌سازد، اجرا می‌کند و نتیجه را برایتان به زبان ساده توضیح می‌دهد.

به جای نوشتن SELECT و JOIN و GROUP BY، کافی است بگویید: «سود خالص سه ماه اخیر چقدر بوده؟» یا «کدام مشتری‌ها در ماه گذشته بیشتر از ۵ سفارش داشته‌اند؟» و ایجنت براساس داده‌های واقعی شما پاسخ می‌دهد.

ایجنت چت با PostgreSQL دقیقاً چه کاری انجام می‌دهد؟

این سناریو یک AI Agent است که سه کار اصلی انجام می‌دهد:

  • سوال شما را به صورت متن طبیعی (فارسی یا انگلیسی) دریافت می‌کند،
  • با کمک مدل زبانی (LLM) تشخیص می‌دهد روی کدام جدول‌ها و ستون‌ها باید کوئری اجرا شود،
  • روی دیتابیس PostgreSQL کوئری می‌زند، نتایج را می‌گیرد و آن‌ها را تحلیل و خلاصه می‌کند.

در عمل، شما با دیتابیس خود مثل یک تحلیل‌گر داده صحبت می‌کنید، نه مثل یک موتور SQL خشک و سخت‌گیر.

سناریوهای کاربردی این Agent

چند نمونه از استفاده‌های واقعی این ایجنت روی دیتابیس PostgreSQL:

  • تحلیل فروش: «مجموع فروش ماه قبل چقدر بوده؟» – «سه محصول پرفروش این فصل را لیست کن.»
  • رفتار مشتریان: «کدام مشتری‌ها بیش از ۱۰ خرید انجام داده‌اند؟» – «میانگین فاصله بین سفارش‌های مشتریان وفادار چقدر است؟»
  • مدیریت سفارش‌ها و تیکت‌ها: «چند سفارش در وضعیت در حال پردازش مانده؟» – «تعداد تیکت‌های باز در هر بخش را بگو.»
  • آنالیز عملکرد کمپین‌ها: «نرخ تبدیل این کمپین نسبت به کمپین قبلی چه‌قدر تفاوت کرده؟»

جریان کلی این ورک‌فلو در n8n چگونه است؟

از نگاه فنی، جریان کار این‌طور پیش می‌رود:

  • ۱. دریافت سوال از کاربر: سوال کاربر می‌تواند از طریق یک چت (تلگرام، Slack، چت داخلی سایت) یا Webhook به n8n برسد. مثلاً متنی مثل «سفارش‌های امروز را خلاصه کن».
  • ۲. تفسیر سوال با LLM: متن سوال به مدل زبانی (مثلاً OpenAI) ارسال می‌شود تا تشخیص دهد کدام جدول‌ها مهم‌اند، چه فیلترهایی لازم است و چه متریک‌هایی (sum, count, avg و…) باید محاسبه شوند.
  • ۳. ساخت کوئری SQL: Agent بر اساس ساختار دیتابیس شما یک کوئری SQL می‌سازد؛ مثلاً SELECT با WHERE و GROUP BY متناسب با سوال.
  • ۴. اجرای کوئری روی PostgreSQL: نود PostgreSQL در n8n به دیتابیس وصل است و کوئری ساخته‌شده را اجرا می‌کند. نتیجه می‌تواند چند ردیف، یا یک جدول خلاصه باشد.
  • ۵. تحلیل و توضیح نتیجه: داده خام به صورت JSON یا جدول به LLM داده می‌شود تا آن را به زبان انسانی تبدیل کند؛ مثلاً «مجموع فروش این ماه ۱۲۳ میلیون است و نسبت به ماه قبل ۱۵٪ رشد داشته.»
  • ۶. ارسال پاسخ: در نهایت، پاسخ در همان کانالی که سوال از آن آمده بود (تلگرام، وب‌چت، Slack و…) برای کاربر ارسال می‌شود.

پیش‌نیازهای راه‌اندازی ایجنت PostgreSQL

  • یک دیتابیس PostgreSQL فعال: که جداول و داده‌های کسب‌وکار شما داخل آن ذخیره می‌شود.
  • دسترسی اتصال (Connection Info): شامل host، port، database name، username و password برای تنظیم نود PostgreSQL در n8n.
  • n8n در حال اجرا: روی سرور شخصی، VPS، Docker یا n8n Cloud.
  • OpenAI API Key یا مدل LLM مشابه: برای تفسیر سوال‌ها و تولید کوئری و توضیحات انسانی.
  • یک کانال ورودی: مثل ربات تلگرام، Slack Bot، فرم سایت یا حتی فقط یک Webhook تستی.

مراحل کلی پیاده‌سازی در n8n

  1. ایمپورت کردن ورک‌فلو «AI Agent برای چت با دیتابیس PostgreSQL» (یا ساخت یک ورک‌فلو جدید بر همین ایده).
  2. تنظیم Credentials نود PostgreSQL در n8n با اطلاعات اتصال دیتابیس.
  3. تنظیم Credentials نود OpenAI برای استفاده از مدل زبانی مناسب.
  4. تعریف یک System Prompt برای Agent که در آن ساختار کلی جدول‌ها (نام جدول‌ها، ستون‌های مهم، نوع داده‌ها) را توضیح می‌دهید.
  5. اتصال ورودی (Webhook / تلگرام / Slack) به Agent تا سوال کاربر مستقیماً وارد این جریان شود.
  6. تست با چند سوال ساده، بررسی کوئری تولید شده و در صورت نیاز محدود کردن یا اصلاح منطق ساخت SQL.

چطور این Agent را حرفه‌ای‌تر کنیم؟

  • محدودیت روی کوئری‌ها: برای امنیت، می‌توانید در Prompt و منطق ورک‌فلو اجازه اجرای دستورات خطرناک (DELETE/UPDATE/DROP) را ندهید و فقط SELECT را مجاز کنید.
  • حافظه مکالمه: با ذخیره تاریخچه سوال‌ها و جواب‌ها، ایجنت می‌تواند چند سوال پشت سر هم را مرتبط بفهمد؛ مثلاً بعد از «فروش این ماه چقدر بوده؟» بپرسید «نسبت به ماه قبل چطور؟» و Agent متوجه منظور بشود.
  • گزارش‌های آماده: Agent می‌تواند علاوه بر پاسخ متنی، یک خروجی جدولی برای Google Sheets یا یک فایل CSV برای دانلود هم بسازد.
  • چند سطح دسترسی: برای کاربران مختلف، فقط بخشی از جدول‌ها یا ستون‌ها را قابل استفاده کنید تا اطلاعات حساس لو نرود.

نکات مهم و خطاهای رایج

  • اگر جواب‌ها اشتباه است، معمولاً ساختار دیتابیس به‌خوبی در Prompt توضیح داده نشده یا نام ستون‌ها برای Agent مبهم است.
  • در صورت خطا در اجرای کوئری، لاگ نود PostgreSQL را بررسی کنید تا ببینید SQL ساخته‌شده چه مشکلی دارد.
  • برای جلوگیری از فشار زیاد روی دیتابیس، بهتر است روی تعداد رکوردها، بازه‌های زمانی و پیچیدگی کوئری محدودیت بگذارید.
  • حتماً روی داده‌های غیرحساس و محیط تستی شروع کنید و بعد از مطمئن شدن، به دیتابیس اصلی وصل شوید.

جمع‌بندی

ساخت یک AI Agent برای چت با دیتابیس PostgreSQL در n8n، دیتابیس شما را از یک سیستم فقط-فنی به یک دستیار تحلیل‌گر هوشمند تبدیل می‌کند. دیگر لازم نیست برای هر سوال، کوئری پیچیده بنویسید؛ کافی است سوال را به زبان خودتان بپرسید.

اگر می‌خواهید تیم شما بدون نیاز به دانش SQL بتواند از داده‌های PostgreSQL استفاده کند، این سناریو یکی از بهترین راه‌ها برای ساخت یک Data Analyst AI Agent روی زیرساخت فعلی کسب‌وکارتان با کمک n8n و هوش مصنوعی است.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.