مدیریت هوشمند سفارش و منوی رستوران با واتس‌اپ و هوش مصنوعی

مدیریت هوشمند سفارش و منوی رستوران با واتس‌اپ و هوش مصنوعی

12 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۲۷

دانلود workflow

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

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

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

مدیریت سفارش و منوی رستوران با هوش مصنوعی، واتس‌اپ و Google Gemini

این گردش کار با ادغام قابلیت‌های مکالمه‌ای مبتنی بر هوش مصنوعی با واتس‌اپ و Google Gemini، مدیریت سفارش و منوی رستوران را خودکار می‌کند. این سیستم برای رستوران‌هایی طراحی شده است که به دنبال ارائه یک رابط تعاملی و هوشمند برای مشتریان جهت ثبت سفارش، به‌روزرسانی منو و هماهنگی تحویل هستند، که همگی از طریق یک عامل مکالمه‌ای در دسترس از طریق واتس‌اپ امکان‌پذیر است.

این گردش کار و موارد بیشتر را در کاتالوگ n8n شرکت Axeto.ai کاوش کنید.

---

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

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

1. دریافت ورودی واتس‌اپ و مدیریت کاربر: پیام‌های ورودی واتس‌اپ را مدیریت می‌کند، کاربران موجود در پایگاه داده را تأیید می‌کند و کاربران جدید را ثبت می‌کند.

2. پردازش عامل مکالمه هوش مصنوعی: حافظه عامل هوش مصنوعی را مدیریت می‌کند، با مدل زبان Google Gemini تعامل دارد، خروجی‌ها را تجزیه و تحلیل می‌کند و منطق را بر اساس قصد کاربر شاخه‌بندی می‌کند.

3. مدیریت سفارش و اطلاع‌رسانی تحویل: سفارشات تأیید شده مشتری را در پایگاه داده ذخیره می‌کند و پرسنل تحویل را از طریق واتس‌اپ مطلع می‌سازد.

4. مدیریت آیتم منو: یک رابط مبتنی بر فرم برای افزودن آیتم‌های جدید منو ارائه می‌دهد که سپس برای جستجوی معنایی در پایگاه داده وکتور جاسازی و ذخیره می‌شوند.

5. یکپارچه‌سازی فروشگاه وکتور و امبدینگ‌ها: تولید امبدینگ‌ها برای آیتم‌های منو را مدیریت می‌کند و فروشگاه وکتور را برای بازیابی منو جستجو می‌کند.

6. بارگذاری داده‌های پیش‌فرض: داده‌های اولیه منو را برای پر کردن پایگاه دانش هوش مصنوعی در فروشگاه وکتور بارگذاری می‌کند.

---

۲. تجزیه و تحلیل بلوک به بلوک

۲.۱ دریافت ورودی واتس‌اپ و مدیریت کاربر

این بلوک بر دریافت پیام‌ها از واتس‌اپ، شناسایی کاربر و اطمینان از در دسترس بودن اطلاعات آن‌ها در پایگاه داده برای زمینه تمرکز دارد.

  • گره‌ها (Nodes):

* WhatsApp Trigger

* Get user (Supabase)

* Check if user exists (If)

* Add user to db (Supabase)

  • جزئیات گره‌ها:

* WhatsApp Trigger:

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

* نقش: نقطه ورود برای تمام پیام‌های دریافتی واتس‌اپ.

* پیکربندی: به یک URL وب‌هوک پیکربندی شده گوش می‌دهد.

* خروجی‌ها: داده‌های پیام دریافتی.

* موارد لبه‌ای (Edge Cases): پیکربندی نادرست وب‌هوک، قطعی سرویس API واتس‌اپ، پیام‌های نامعتبر.

* Get user:

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

* نقش: جزئیات کاربر را بر اساس شناسه واتس‌اپ فرستنده (مانند شماره تلفن) از پایگاه داده Supabase بازیابی می‌کند.

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

* ورودی‌ها: داده‌های دریافتی از WhatsApp Trigger.

* خروجی‌ها: داده‌های کاربر در صورت یافت شدن، یا نتیجه خالی.

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

* Check if user exists:

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

* نقش: تعیین می‌کند که آیا کاربر در پایگاه داده پیدا شده است یا خیر.

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

* ورودی‌ها: خروجی از Get user.

* خروجی‌ها:

* True (کاربر وجود دارد): به پردازش عامل هوش مصنوعی ادامه می‌دهد.

* False (کاربر گمشده): به افزودن کاربر به پایگاه داده ادامه می‌دهد.

* موارد لبه‌ای: عبارت شرطی نامناسب، مدیریت نتایج خالی.

* Add user to db:

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

* نقش: اطلاعات کاربر جدید را در پایگاه داده Supabase درج می‌کند.

* پیکربندی: از داده‌های WhatsApp Trigger برای ایجاد یک رکورد کاربر جدید استفاده می‌کند.

* ورودی‌ها: از شاخه False گره Check if user exists.

* خروجی‌ها: داده‌های کاربر تازه ایجاد شده.

* موارد لبه‌ای: خرابی‌های نوشتن در پایگاه داده، ورودی‌های تکراری، خطاهای اعتبارسنجی.

۲.۲ پردازش عامل مکالمه‌ای هوش مصنوعی

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

  • گره‌ها:

* Simple Memory (Langchain memoryBufferWindow)

* Google Gemini Chat Model (اولین نمونه)

* AI Agent (Langchain Agent)

* Structured Output Parser

* Google Gemini Chat Model1 (دومین نمونه)

* Send last message (WhatsApp)

* If (شرطی بر اساس پاسخ هوش مصنوعی)

  • جزئیات گره‌ها:

* Simple Memory:

* نوع: @n8n/n8n-nodes-langchain.memoryBufferWindow

* نقش: پنجره‌ای لغزان از تاریخچه مکالمات اخیر را برای ارائه زمینه به عامل هوش مصنوعی حفظ می‌کند.

* پیکربندی: حداکثر تعداد پیام‌های گذشته برای نگهداری را تنظیم می‌کند.

* ورودی‌ها: نوبت‌های مکالمه قبلی یا زمینه اولیه.

* خروجی‌ها: وضعیت حافظه مکالمه فعلی.

* موارد لبه‌ای: سرریز حافظه، مشکلات پایداری وضعیت.

* Google Gemini Chat Model:

* نوع: @n8n/n8n-nodes-langchain.lmChatGoogleGemini

* نقش: قابلیت‌های درک و تولید زبان را برای عامل هوش مصنوعی فراهم می‌کند.

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

* ورودی‌ها: پیام‌های کاربر و تاریخچه مکالمات.

* خروجی‌ها: متن تولید شده توسط هوش مصنوعی.

* موارد لبه‌ای: محدودیت‌های سهمیه API، خطاهای شبکه، اعتبارنامه‌های نامعتبر.

* AI Agent:

* نوع: @n8n/n8n-nodes-langchain.agent

* نقش: جزء مرکزی که با ترکیب مدل زبان، حافظه، ابزارهای موجود (مانند دسترسی به پایگاه داده) و تجزیه خروجی، پاسخ هوش مصنوعی را هماهنگ می‌کند.

* پیکربندی: مدل زبان، حافظه، ابزارها و تجزیه‌کننده خروجی را ادغام می‌کند.

* ورودی‌ها: ورودی کاربر، وضعیت حافظه و خروجی‌های ابزار.

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

* موارد لبه‌ای: خطاهای فراخوانی ابزار، پاسخ‌های نامعتبر هوش مصنوعی، مهلت‌های زمانی (timeouts).

* Structured Output Parser:

* نوع: تجزیه‌کننده خروجی Langchain (گره خاص ممکن است متفاوت باشد، اغلب در عامل یا یک گره تجزیه اختصاصی ادغام می‌شود).

* نقش: خروجی خام مدل هوش مصنوعی را به یک فرمت ساختاریافته تجزیه می‌کند که گردش کار می‌تواند به راحتی پردازش کند (مانند JSON).

* پیکربندی: طرحواره خروجی مورد انتظار را تعریف می‌کند.

* ورودی‌ها: خروجی خام مدل هوش مصنوعی.

* خروجی‌ها: داده‌های ساختاریافته.

* موارد لبه‌ای: خرابی‌های تجزیه به دلیل فرمت‌های خروجی غیرمنتظره هوش مصنوعی.

* Google Gemini Chat Model1:

* نوع: @n8n/n8n-nodes-langchain.lmChatGoogleGemini

* نقش: اغلب در کنار تجزیه‌کننده برای اصلاح یا قالب‌بندی خروجی هوش مصنوعی استفاده می‌شود.

* پیکربندی: مشابه نمونه اول Gemini.

* ورودی‌ها: خروجی از تجزیه‌کننده یا مرحله قبلی هوش مصنوعی.

* خروجی‌ها: متن پردازش شده برای تجزیه‌کننده.

* موارد لبه‌ای: مشابه نمونه اول Gemini.

* Send last message:

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

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

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

* ورودی‌ها: پاسخ تولید شده توسط هوش مصنوعی از AI Agent.

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

* موارد لبه‌ای: قطعی سرویس API واتس‌اپ، خطاهای قالب‌بندی پیام.

* If (پس از ارسال پیام):

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

* نقش: گردش کار را بر اساس محتوا یا وضعیت پاسخ هوش مصنوعی منشعب می‌کند و اقدامات بعدی مانند پردازش سفارش را تعیین می‌کند.

* پیکربندی: شرط بر اساس محتوای پاسخ هوش مصنوعی یا پرچم‌ها.

* ورودی‌ها: خروجی از Send last message.

* خروجی‌ها:

* True: به مراحل تکمیل سفارش ادامه می‌دهد.

* False: ممکن است مکالمه را پایان دهد یا به عقب برگردد.

* موارد لبه‌ای: عبارات شرطی نادرست، داده‌های گمشده.

۲.۳ رسیدگی به سفارش و اعلان تحویل

این بلوک فرآیند ثبت سفارش‌های تأیید شده و اطلاع‌رسانی به پرسنل تحویل را مدیریت می‌کند.

  • گره‌ها:

* Create order in database (ابزار Supabase)

* Send Order to delivery guy (WhatsApp)

  • جزئیات گره‌ها:

* Create order in database:

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

* نقش: جزئیات سفارش تأیید شده مشتری را در جدول orders در Supabase درج می‌کند.

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

* ورودی‌ها: داده‌های سفارش ساختاریافته، معمولاً از خروجی ابزار AI Agent.

* خروجی‌ها: تأیید ایجاد سفارش.

* موارد لبه‌ای: خرابی‌های نوشتن، خطاهای اعتبارسنجی داده، تداخل‌های همزمانی.

* Send Order to delivery guy:

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

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

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

* ورودی‌ها: از شاخه True گره If (پس از ارسال پیام).

* خروجی‌ها: ندارد (این یک نقطه پایانی برای اطلاع‌رسانی است).

* موارد لبه‌ای: مخاطب تحویل نامعتبر، خطاهای API واتس‌اپ.

۲.۴ مدیریت آیتم منو

این بخش امکان افزودن آیتم‌های منوی جدید را از طریق یک فرم وب فراهم می‌کند و اطمینان می‌دهد که آن‌ها پردازش و قابل جستجو می‌شوند.

  • گره‌ها:

* Add menu item (Form Trigger)

* Insert Menu Item to Vector Store (Langchain vector store Supabase)

  • جزئیات گره‌ها:

* Add menu item:

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

* نقش: به عنوان یک وب‌هوک عمل می‌کند که داده‌های ارسال شده از طریق یک فرم وب برای افزودن آیتم‌های منوی جدید را دریافت می‌کند.

* پیکربندی: یک URL وب‌هوک پیکربندی شده و فیلدهای فرم مورد انتظار (مانند نام آیتم، توضیحات، قیمت).

* ورودی‌ها: داده‌های ارسال شده از طریق فرم وب.

* خروجی‌ها: جزئیات آیتم منو از فرم.

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

* Insert Menu Item to Vector Store:

* نوع: @n8n/n8n-nodes-langchain.vectorStoreSupabase

* نقش: متن یک آیتم منوی جدید را با استفاده از یک مدل جاسازی (embeddings model) جاسازی کرده و بردار حاصل را در فروشگاه برداری Supabase ذخیره می‌کند.

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

* ورودی‌ها: داده‌های آیتم منو از Add menu item یا Default Data Loader.

* خروجی‌ها: ندارد (این گره عملیات نوشتن را در فروشگاه برداری انجام می‌دهد).

* موارد لبه‌ای: خرابی‌های تولید جاسازی، خطاهای نوشتن در پایگاه داده.

۲.۵ ادغام فروشگاه برداری و جاسازی‌ها

این بلوک ایجاد جاسازی‌های برداری برای آیتم‌های منو و جستجوی فروشگاه برداری را برای فعال کردن جستجوی معنایی مدیریت می‌کند.

  • گره‌ها:

* Embeddings Google Gemini

* Get Menu Items from Vector Store (Langchain vector store Supabase)

  • جزئیات گره‌ها:

* Embeddings Google Gemini:

* نوع: @n8n/n8n-nodes-langchain.embeddingsGoogleGemini

* نقش: ورودی‌های متنی (مانند توضیحات آیتم منو) را با استفاده از مدل‌های جاسازی Google Gemini به جاسازی‌های برداری عددی تبدیل می‌کند.

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

* ورودی‌ها: داده‌های متنی از آیتم‌های منو.

* خروجی‌ها: جاسازی‌های برداری.

* موارد لبه‌ای: محدودیت‌های نرخ API، متن ورودی نامعتبر.

* Get Menu Items from Vector Store:

* نوع: @n8n/n8n-nodes-langchain.vectorStoreSupabase

* نقش: جستجوی شباهت را در فروشگاه برداری Supabase برای بازیابی آیتم‌های منوی مرتبط با پرس و جوی کاربر انجام می‌دهد.

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

* ورودی‌ها: جاسازی‌های پرس و جوی کاربر.

* خروجی‌ها: آیتم‌های منوی مرتبط بازیابی شده از فروشگاه برداری.

* موارد لبه‌ای: عدم یافتن نتایج مطابق، مهلت‌های زمانی جستجو.

۲.۶ بارگذاری داده‌های پیش‌فرض

این بلوک مسئول بارگذاری اولیه داده‌های منو در فروشگاه برداری هنگام شروع یا فعال شدن گردش کار است.

  • گره‌ها:

* Default Data Loader

* Insert Menu Item to Vector Store

  • جزئیات گره‌ها:

* Default Data Loader:

* نوع: بارگذار سند Langchain (گره خاص ممکن است متفاوت باشد، اغلب یک گره سفارشی یا یک بارگذار فایل عمومی).

* نقش: داده‌های منوی از پیش تعریف شده را از یک منبع (مانند فایل CSV یا JSON) بارگیری می‌کند تا به فروشگاه برداری اضافه شود.

* پیکربندی: به مکان منبع داده پیش‌فرض اشاره می‌کند.

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

* خروجی‌ها: داده‌های منو برای جاسازی و ذخیره.

* موارد لبه‌ای: منابع داده گمشده یا خراب.

---

۳. جدول خلاصه

نام نود (Node Name)نوع نود (Node Type)نقش عملکردی (Functional Role)نود(های) ورودی (Input Node(s))نود(های) خروجی (Output Node(s))یادداشت چسبان (Sticky Note)
WhatsApp Triggern8n-nodes-base.whatsAppTriggerنقطه ورود برای پیام‌های واتس‌اپ-Get user
Get usern8n-nodes-base.supabaseبازیابی اطلاعات کاربر از SupabaseWhatsApp TriggerCheck if user exists
Check if user existsn8n-nodes-base.ifانشعاب بر اساس وجود کاربرGet userAI Agent (True), Add user to db (False)
Add user to dbn8n-nodes-base.supabaseدرج کاربر جدید در SupabaseCheck if user exists (False)AI Agent
Simple Memory@n8n/n8n-nodes-langchain.memoryBufferWindowمدیریت تاریخچه مکالمه هوش مصنوعیگره‌های قبلی / زمینه اولیهAI Agent
Google Gemini Chat Model@n8n/n8n-nodes-langchain.lmChatGoogleGeminiمدل زبان اصلی برای پاسخ‌های هوش مصنوعیSimple Memory, ورودی کاربرAI Agent
AI Agent@n8n/n8n-nodes-langchain.agentهماهنگی تعامل هوش مصنوعی، استفاده از ابزار، پاسخاطلاعات کاربر، حافظه، خروجی ابزارSend last message, Create order in database
Structured Output ParserLangchain output parserتجزیه خروجی هوش مصنوعی به داده‌های ساختاریافتهGoogle Gemini Chat Model1AI Agent
Google Gemini Chat Model1@n8n/n8n-nodes-langchain.lmChatGoogleGeminiمدل زبان ثانویه برای پردازش/قالب‌بندی خروجیAI AgentStructured Output Parser
Send last messagen8n-nodes-base.whatsAppارسال آخرین پیام هوش مصنوعی به کاربر در واتس‌اپAI AgentIf (پس از ارسال پیام)
If (پس از ارسال پیام)n8n-nodes-base.ifانشعاب گردش کار بر اساس پاسخ هوش مصنوعیSend last messageCreate order in database (True), End (False)
Create order in databasen8n-nodes-base.supabaseToolثبت سفارش‌های تایید شده در Supabaseخروجی ابزار AI AgentSend Order to delivery guy
Send Order to delivery guyn8n-nodes-base.whatsAppاطلاع‌رسانی به پیک تحویل از طریق واتس‌اپIf (پس از ارسال پیام) (True)-
Add menu itemn8n-nodes-base.formTriggerWebhook برای افزودن آیتم‌های منوی جدید از طریق فرمارسال فرم خارجیInsert Menu Item to Vector Store
Insert Menu Item to Vector Store@n8n/n8n-nodes-langchain.vectorStoreSupabaseجاسازی و ذخیره آیتم‌های منوی جدید در فروشگاه برداریAdd menu item, Default Data Loader-
Embeddings Google Gemini@n8n/n8n-nodes-langchain.embeddingsGoogleGeminiتولید بردارهای جاسازی برای متنداده‌های آیتم منو، پرس‌وجوی کاربرInsert Menu Item to Vector Store, Get Menu Items from Vector Store
Get Menu Items from Vector Store@n8n/n8n-nodes-langchain.vectorStoreSupabaseجستجو در فروشگاه برداری برای آیتم‌های منوی مرتبطEmbeddings Google GeminiAI Agent (خروجی ابزار)
Default Data LoaderLangchain document loaderبارگذاری داده‌های اولیه منو برای فروشگاه برداریفعال‌سازی گردش کار / اجرای دستیInsert Menu Item to Vector Store

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

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

این گردش کار چگونه به مدیریت سفارشات رستوران کمک می‌کند؟

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

آیا می‌توان منوی رستوران را با این سیستم به‌روز کرد؟

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

چه فناوری‌هایی در این گردش کار استفاده شده است؟

این گردش کار از n8n، واتس‌اپ، Google Gemini و پایگاه داده Supabase برای مدیریت کاربران، سفارشات و آیتم‌های منو استفاده می‌کند.

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

مشتریان می‌توانند از طریق پیام‌رسان واتس‌اپ با رستوران ارتباط برقرار کرده، سفارشات خود را ثبت کنند و اطلاعات منو را دریافت نمایند.

workflowهای مرتبط

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