
پاسخدهی خودکار تیکت Zendesk با هوش مصنوعی و RAG
11 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۲۷
دانلود workflow
فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.
- فایل JSON را دانلود کنید.
- در n8n: Workflows → Import from File.
- Credentialهای هر node را متصل کنید.
- workflow را فعال کنید.
شناسه workflow: 7937 · منبع: کاتالوگ Axeto
پاسخدهی خودکار به تیکتهای پشتیبانی Zendesk با استفاده از RAG، OpenAI و پایگاه دانش Supabase
این گردش کار، پاسخدهی به تیکتهای پشتیبانی Zendesk را با استفاده از Retrieval-Augmented Generation (RAG) خودکار میکند. این سیستم پاسخهای تولید شده توسط هوش مصنوعی را با اطلاعات پایگاه دانش Supabase غنیسازی کرده و با استفاده از حافظه جلسه ذخیره شده در PostgreSQL، زمینه مکالمه را حفظ میکند. هدف اصلی، ارائه پاسخهای دقیق، آگاه از زمینه و حرفهای به تیکتهای جدید Zendesk است که منجر به بهبود کارایی و یکپارچگی پشتیبانی میشود.
ویژگیهای کلیدی:
- مدیریت خودکار تیکت: پاسخدهی خودکار به تیکتهای جدید Zendesk.
- یکپارچهسازی پایگاه دانش: استفاده از RAG برای استخراج اطلاعات مرتبط از فروشگاه برداری (vector store) Supabase.
- حافظه متنی: حفظ تاریخچه مکالمات با استفاده از پایگاه داده PostgreSQL برای تعاملات منسجمتر.
- پاسخهای مبتنی بر هوش مصنوعی: استفاده از مدلهای OpenAI برای تولید پاسخهای طبیعی و آموزنده.
- خودکارسازی گردش کار: سادهسازی عملیات پشتیبانی با کاهش نیاز به مداخله دستی.
لینک کاتالوگ Axeto.ai: https://axeto.ai/n8n
---
تشریح گردش کار (Workflow Breakdown)
گردش کار به چندین بخش منطقی تقسیم شده است:
1. دریافت ورودی: دریافت دادههای تیکت جدید از Zendesk از طریق Webhook.
2. استخراج دادههای تیکت: تجزیه و فرمتبندی اطلاعات ضروری تیکت.
3. بازیابی پایگاه دانش: جستجو در Supabase برای مقالات مرتبط بر اساس محتوای تیکت.
4. بازیابی حافظه جلسه: بارگذاری تعاملات گذشته از PostgreSQL برای ارائه زمینه مکالمه.
5. تولید پاسخ هوش مصنوعی: ایجاد پاسخ با استفاده از OpenAI، با اطلاعرسانی از پایگاه دانش و حافظه جلسه.
6. پردازش شرطی: ارزیابی پاسخ هوش مصنوعی برای کامل بودن یا نیاز به راه حل جایگزین.
7. بهروزرسانی Zendesk: برچسبگذاری تیکت برای نشان دادن پاسخ تولید شده توسط هوش مصنوعی.
8. راهنمایی و تست: ارائه دستورالعملهایی برای راهاندازی و تأیید.
---
تحلیل گرههای جزئی
۱. دریافت ورودی
هدف: دریافت دادههای تیکت پشتیبانی ورودی از Zendesk.
- نکته - تنظیم Webhook
* نوع: n8n-nodes-base.stickyNote
* نقش: ارائه دستورالعمل برای پیکربندی webhook Zendesk.
* محتوا: کاربران را راهنمایی میکند تا URL webhook ارائه شده را در تنظیمات ادمین Zendesk تحت 'Triggers' تنظیم کنند.
* وابستگیها: ندارد.
- دریافت تیکتهای جدید
* نوع: n8n-nodes-base.webhook
* نقش: به عنوان نقطه ورود عمل میکند و منتظر درخواستهای POST از Zendesk است.
* پیکربندی:
* مسیر (Path): zendesk_new_ticket
* متد HTTP: POST
* ورودی: درخواست HTTP POST از Zendesk.
* خروجی: بار داده JSON حاوی جزئیات تیکت جدید.
* مشکلات احتمالی: URL webhook نادرست پیکربندی شده در Zendesk یا مشکلات اتصال شبکه.
۲. استخراج دادههای تیکت
هدف: استخراج و ساختاردهی اطلاعات کلیدی از دادههای تیکت ورودی Zendesk.
- استخراج تیکت جدید
* نوع: n8n-nodes-base.set
* نقش: فیلدها را از بار داده webhook Zendesk به متغیرهای نامگذاری شده برای استفاده آسانتر در گرههای بعدی نگاشت میکند.
* پیکربندی: از عبارات جاوا اسکریپت برای استخراج فیلدهایی مانند ticket_id, requester_email, subject و description استفاده میکند. همچنین آخرین پاراگراف توضیحات را کوتاه کرده و یک مُهر زمانی اضافه میکند.
* ورودی: دادههای JSON از گره دریافت تیکتهای جدید.
* خروجی: یک شیء JSON ساختاریافته حاوی اطلاعات استخراج شده تیکت.
* موارد مرزی (Edge Cases): مواردی را که فیلد توضیحات ممکن است خالی باشد، مدیریت میکند.
۳. بازیابی پایگاه دانش
هدف: یافتن اطلاعات مرتبط از پایگاه دانش میزبانی شده در Supabase.
- نکته - تنظیم Supabase
* نوع: n8n-nodes-base.stickyNote
* نقش: به کاربر یادآوری میکند که اعتبارنامههای Supabase را پیکربندی کرده و از وجود جدول لازم اطمینان حاصل کند.
* محتوا: به کاربران دستور میدهد تا اعتبارنامههای API Supabase را تنظیم کرده و یک جدول documents حاوی محتوای پایگاه دانش جاسازی شده را تأیید کنند.
* وابستگیها: Supabase Vector Store.
- Embeddings OpenAI
* نوع: @n8n/n8n-nodes-langchain.embeddingsOpenAi
* نقش: متن توضیحات تیکت را به بردارهای عددی (embeddings) تبدیل میکند.
* پیکربندی:
* مدل: text-embedding-3-small
* ابعاد: 1536
* اعتبارنامهها: نیاز به کلید API OpenAI دارد.
* ورودی: متن توضیحات تیکت از گره استخراج تیکت جدید.
* خروجی: بردارهای جاسازی شده (embeddings) توضیحات تیکت.
* مشکلات احتمالی: محدودیتهای نرخ (rate limits) API OpenAI یا کلید API نامعتبر.
- Supabase Vector Store
* نوع: @n8n/n8n-nodes-langchain.vectorStoreSupabase
* نقش: برای انجام جستجوی شباهت با استفاده از بردارهای جاسازی شده تولید شده، به Supabase متصل میشود.
* پیکربندی:
* پرس و جو (Query): match_documents
* نام جدول: documents
* اعتبارنامهها: نیاز به اعتبارنامههای API Supabase (URL و کلید) دارد.
* ورودی: بردارهای جاسازی شده از Embeddings OpenAI.
* خروجی: لیستی از اسناد از فروشگاه برداری Supabase که بیشترین شباهت را به توضیحات تیکت دارند.
* مشکلات احتمالی: خطاهای اتصال Supabase، عدم یافتن اسناد مرتبط.
- بازیابی پایگاه دانش
* نوع: @n8n/n8n-nodes-langchain.toolVectorStore
* نقش: محتوای K مقاله برتر مرتبط پایگاه دانش شناسایی شده توسط فروشگاه برداری را بازیابی میکند.
* پیکربندی:
* نام فروشگاه برداری (Vector Store Name): content_en
* K برتر (Top K): 5
* ورودی: نتایج از گره Supabase Vector Store.
* خروجی: قطعات محتوا از مرتبطترین مقالات پایگاه دانش.
* موارد مرزی: اگر هیچ سند مرتبطی یافت نشد، این خروجی ممکن است خالی باشد که در مراحل بعدی مدیریت میشود.
۴. بازیابی حافظه جلسه
هدف: بارگذاری دادههای مکالمه تاریخی برای تیکت فعلی برای حفظ زمینه (context).
- نکته - حافظه Postgres
* نوع: n8n-nodes-base.stickyNote
* نقش: دستورالعملهایی را در مورد راهاندازی جدول PostgreSQL برای ذخیره تاریخچه چت به کاربر ارائه میدهد.
* محتوا: کاربران را راهنمایی میکند تا جدولی در PostgreSQL به نام zendesk_ticket_histories برای ذخیره زمینه جلسه ایجاد کنند.
* وابستگیها: Postgres Ticket Memory.
- Postgres Ticket Memory
* نوع: @n8n/n8n-nodes-langchain.memoryPostgresChat
* نقش: تاریخچه چت را از پایگاه داده PostgreSQL بر اساس ticket_id بازیابی میکند.
* پیکربندی:
* کلید جلسه (Session Key): به صورت پویا با استفاده از ticket_id که قبلاً استخراج شده، تنظیم میشود.
* اعتبارنامهها: نیاز به جزئیات اتصال پایگاه داده PostgreSQL (host, port, user, password, database name) دارد.
* ورودی: ticket_id از گره استخراج تیکت جدید.
* خروجی: تاریخچه چت مربوط به جلسه تیکت فعلی.
* مشکلات احتمالی: خطاهای اتصال PostgreSQL، یا عدم یافتن تاریخچه قبلی (به طور پیشفرض زمینه خالی خواهد بود).
۵. تولید پاسخ هوش مصنوعی
هدف: تولید پاسخ پشتیبانی با استفاده از OpenAI، با گنجاندن اطلاعات پایگاه دانش و تاریخچه مکالمه.
- نکته - تنظیم OpenAI
* نوع: n8n-nodes-base.stickyNote
* نقش: به کاربر یادآوری میکند که کلید API OpenAI خود را پیکربندی کند.
* محتوا: به کاربران دستور میدهد تا کلید API OpenAI خود را در تنظیمات اعتبارنامهها اضافه کنند و مدلی را پیشنهاد میدهد (مانند gpt-4o).
* وابستگیها: Embeddings OpenAI, RAG AI Agent.
- RAG AI Agent
* نوع: @n8n/n8n-nodes-langchain.agent
* نقش: به عنوان موتور اصلی هوش مصنوعی عمل میکند، توضیحات تیکت، محتوای پایگاه دانش بازیابی شده و حافظه جلسه را پردازش کرده و پاسخی را تولید میکند.
* پیکربندی:
* متن ورودی (Input Text): توضیحات تیکت.
* گزینهها (Options): maxIterations روی 2 تنظیم شده است تا تعداد مراحل استدلال محدود شود.
* پیام سیستمی (System Message): یک پرامپت که هوش مصنوعی را برای ایفای نقش یک دستیار پشتیبانی حرفهای و پایبندی دقیق به اسناد پایگاه دانش ارائه شده، آموزش میدهد.
* ورودی:
* توضیحات تیکت (از استخراج تیکت جدید).
* محتوای پایگاه دانش (از بازیابی پایگاه دانش).
* حافظه جلسه (از Postgres Ticket Memory).
* خروجی: متن پاسخ تولید شده توسط هوش مصنوعی.
* مشکلات احتمالی: اتمام زمان مدل (model timeouts)، تولید پاسخهای نامربوط یا ناقص، خطاهای API OpenAI.
۶. پردازش شرطی
هدف: بررسی اینکه آیا پاسخ هوش مصنوعی نشاندهنده عدم وجود اطلاعات مرتبط است و نیاز به یک راه حل جایگزین دارد.
- اگر پایگاه دانش مرتبطی یافت نشد
* نوع: n8n-nodes-base.if
* نقش: پاسخ تولید شده توسط هوش مصنوعی را ارزیابی میکند تا ببیند آیا حاوی یک عبارت جایگزین خاص (مانند "به زودی پاسخ خواهم داد") است یا خیر.
* پیکربندی: از بررسی محتوای رشتهای (string containment check) روی خروجی هوش مصنوعی استفاده میکند.
* ورودی: متن پاسخ هوش مصنوعی از گره RAG AI Agent.
* خروجی: گردش کار را بر اساس شرط منشعب میکند (اگر عبارت جایگزین یافت شد True، در غیر این صورت False).
* موارد مرزی: احتمال مثبت کاذب (false positives) اگر عبارت جایگزین به طور ناخواسته در یک پاسخ معتبر ظاهر شود.
۷. بهروزرسانی Zendesk
هدف: بهروزرسانی تیکت Zendesk با یک تگ که نشان میدهد پاسخی توسط هوش مصنوعی تولید شده است.
- نکته - دامنه Zendesk
* نوع: n8n-nodes-base.stickyNote
* نقش: از کاربر میخواهد زیردامنه (subdomain) خاص Zendesk خود را وارد کند.
* محتوا: به کاربران دستور میدهد تا جایگزین را با دامنه واقعی Zendesk خود جایگزین کنند (مانند yourcompany.zendesk.com).
* وابستگیها: Add Tags (ai_reply).
- افزودن تگها (ai_reply)
* نوع: n8n-nodes-base.httpRequest
* نقش: یک درخواست PUT به API Zendesk ارسال میکند تا تگ ai_reply را به تیکت اضافه کند.
* پیکربندی:
* URL: به صورت پویا با استفاده از شناسه تیکت و دامنه Zendesk ارائه شده توسط کاربر ساخته میشود.
* متد: PUT
* احراز هویت: اعتبارنامههای API Zendesk (OAuth2 یا API Token).
* بدنه (Body): بار داده JSON حاوی آرایهای با تگ "ai_reply".
* ورودی: ticket_id از گره استخراج تیکت جدید.
* خروجی: پاسخ API Zendesk که بهروزرسانی تگ را تأیید میکند.
* مشکلات احتمالی: شکست احراز هویت، محدودیتهای نرخ API، شناسه تیکت نامعتبر، دامنه Zendesk نادرست.
۸. راهنمایی و تست
هدف: ارائه دستورالعملهای نهایی برای تأیید عملکرد گردش کار.
- نکته - تست
* نوع: n8n-nodes-base.stickyNote
* نقش: فهرستی از موارد را برای کاربران جهت تأیید عملکرد صحیح گردش کار ارائه میدهد.
* محتوا: کاربران را راهنمایی میکند تا محتوای پاسخ هوش مصنوعی را تأیید کنند، تگ ai_reply را در Zendesk بررسی کنند و تأیید کنند که تاریخچه جلسه در PostgreSQL ذخیره میشود.
---
جدول خلاصه
| نام نود (Node Name) | نوع نود (Node Type) | نقش عملکردی (Functional Role) | نود(های) ورودی (Input Node(s)) | نود(های) خروجی (Output Node(s)) | یادداشت چسبان مرتبط (Associated Sticky Note) |
|---|---|---|---|---|---|
| Note - Webhook Setup | stickyNote | پیکربندی وبهوک Zendesk | — | Get New Tickets | 🔗 این URL وبهوک را به عنوان یک تریگر در حساب Zendesk خود در بخش 'Admin → Triggers' تنظیم کنید. |
| Get New Tickets | webhook | دریافت دادههای تیکت جدید | Note - Webhook Setup | Extract New Ticket | |
| Extract New Ticket | set | استخراج و فرمتبندی فیلدهای تیکت | Get New Tickets | Supabase Vector Store, Postgres Ticket Memory, RAG AI Agent | |
| Note - Supabase Setup | stickyNote | یادآوری اعتبارنامههای Supabase | — | Supabase Vector Store | 📚 اعتبارنامههای پروژه Supabase خود را جایگزین کنید. اطمینان حاصل کنید که یک جدول documents دارید. |
| Embeddings OpenAI | embeddingsOpenAi (LangChain) | تولید امبدینگهای متن | Extract New Ticket | Supabase Vector Store | 🤖 کلید API OpenAI خود را در تنظیمات اعتبارنامه اضافه کنید. در صورت تمایل مدل را تنظیم کنید. |
| Supabase Vector Store | vectorStoreSupabase (LangChain) | جستجوی شباهت برداری پایگاه دانش | Embeddings OpenAI | Retrieve Knowledge Base | |
| Retrieve Knowledge Base | toolVectorStore (LangChain) | بازیابی محتوای مقالات مرتبط پایگاه دانش | Supabase Vector Store | RAG AI Agent | |
| Note - Postgres Memory | stickyNote | یادآوری جدول حافظه Postgres | — | Postgres Ticket Memory | 🗄️ یک جدول Postgres به نام zendesk_ticket_histories برای زمینه جلسه ایجاد کنید. |
| Postgres Ticket Memory | memoryPostgresChat (LangChain) | بازیابی حافظه جلسه تیکت | Extract New Ticket | RAG AI Agent | |
| RAG AI Agent | agent (LangChain) | تولید پاسخ هوش مصنوعی | Extract New Ticket, Retrieve Knowledge Base, Postgres Ticket Memory | If No Relevant KB Found | |
| If No Relevant KB Found | if | بررسی شرطی پاسخ هوش مصنوعی | RAG AI Agent | Add Tags (ai_reply) | |
| Note - Zendesk Domain | stickyNote | پیکربندی دامنه Zendesk | — | Add Tags (ai_reply) | 🌐 your_zendesk_domain را با زیردامنه واقعی Zendesk خود جایگزین کنید (به عنوان مثال، mycompany.zendesk.com). |
| Add Tags (ai_reply) | httpRequest | بهروزرسانی تیکت Zendesk با تگ | Extract New Ticket | — | |
| Note - Testing | stickyNote | چک لیست تست گردش کار | — | — | ✅ محتوای پاسخ هوش مصنوعی را تأیید کنید، برچسب ai_reply را در Zendesk بررسی کنید و تاریخچه جلسه را در Postgres تأیید کنید. |
Nodeهای استفادهشده
سوالات متداول
این گردش کار چگونه به تیکتهای Zendesk پاسخ میدهد؟▾
این گردش کار با استفاده از تکنیک Retrieval-Augmented Generation (RAG) به تیکتهای جدید Zendesk پاسخ میدهد. ابتدا اطلاعات مرتبط را از پایگاه دانش Supabase بازیابی کرده و سپس با استفاده از OpenAI، پاسخی دقیق و آگاه از زمینه تولید میکند.
نقش OpenAI و Supabase در این گردش کار چیست؟▾
OpenAI برای تولید پاسخهای طبیعی و هوشمند به تیکتها استفاده میشود. Supabase به عنوان پایگاه دانش عمل کرده و اطلاعات لازم برای پاسخدهی دقیق را از طریق جستجوی برداری (vector store) فراهم میکند.
چگونه این سیستم زمینه مکالمات قبلی را حفظ میکند؟▾
این گردش کار از پایگاه داده PostgreSQL برای ذخیره و بازیابی تاریخچه مکالمات استفاده میکند. این حافظه به هوش مصنوعی اجازه میدهد تا تعاملات قبلی را در نظر گرفته و پاسخهای منسجمتری ارائه دهد.
مزایای اصلی استفاده از این گردش کار چیست؟▾
مزایای اصلی شامل افزایش کارایی تیم پشتیبانی با خودکارسازی پاسخدهی، ارائه پاسخهای دقیقتر و آگاه از دانش، و بهبود تجربه مشتری با دریافت سریعتر و بهتر خدمات است.
workflowهای مرتبط
- تحلیل خودکار مناقصهها با n8n، LlamaParse و GeminiDocument Extraction
- دستهبندی خودکار ایمیل جیمیل با GPT-4o و هشدار SlackAI Summarization
- اتوماسیون زیرنویسگذاری ویدیو با n8n، Google Drive و SubmagicContent Creation
- تحلیل خودکار Google Analytics با هوش مصنوعی Gemini و اعلانه…Market Research
- اتوماسیون ثبت رزروهای Calendly در Google Sheets با n8nCRM
- اتوماسیون پیامهای تشکر و کوپن واتساپ برای مشتریان ShopifyContent Creation
