تحلیل چندوجهی با Gemini و عامل Qwen LLM در n8n

تحلیل چندوجهی با Gemini و عامل Qwen LLM در n8n

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

دانلود workflow

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

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

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

تحلیل تصاویر، ویدئوها، اسناد و صدا با ابزارهای Gemini و عامل Qwen LLM

این گردش کار با ادغام ابزارهای پیشرفته Google Gemini با یک عامل Qwen LLM، تجزیه و تحلیل پیشرفته چندوجهی را امکان‌پذیر می‌سازد. این گردش کار برای پردازش پرس‌وجوهای کاربر که ممکن است شامل متن در کنار انواع مختلف رسانه (تصاویر، ویدئوها، اسناد، صدا) باشد، طراحی شده است و پاسخ‌های جامع و آگاهانه از نظر زمینه ارائه می‌دهد.

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

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

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

1. دریافت و اعتبارسنجی ورودی: ورودی چت و آپلودهای اختیاری فایل را از طریق یک وب‌هوک (Webhook) می‌پذیرد. سپس حضور فایل‌ها را برای تعیین مسیر پردازش بعدی بررسی می‌کند.

2. پردازش و آپلود فایل: در صورت شناسایی فایل‌ها، آن‌ها به صورت جداگانه به Google Gemini آپلود می‌شوند. سپس فراداده (Metadata) از این آپلودها جمع‌آوری و تجمیع می‌شود.

3. آماده‌سازی ورودی: ورودی متنی کاربر با فراداده تجمیع شده فایل ترکیب می‌شود تا یک پرامپت (Prompt) ساختاریافته برای هوش مصنوعی ایجاد شود.

4. تجزیه و تحلیل چندوجهی: گره‌های ابزار اختصاصی Google Gemini برای تجزیه و تحلیل موازی هر نوع رسانه (تصاویر، ویدئوها، اسناد، صدا) استفاده می‌شوند.

5. اجرای عامل هوش مصنوعی: یک عامل Qwen LLM، مجهز به حافظه و دسترسی به نتایج تجزیه و تحلیل از ابزارهای Gemini، ورودی آماده شده را برای تولید پاسخ پردازش می‌کند.

6. تولید پاسخ: عامل هوش مصنوعی پاسخی واضح و مختصر را بر اساس پرس‌وجوی متنی و بینش‌های حاصل از تجزیه و تحلیل رسانه تدوین می‌کند.

تفکیک گره‌ها (Node Breakdown)

۱. دریافت و اعتبارسنجی ورودی

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

  • گره‌ها (Nodes):

* Input (LangChain chatTrigger)

* If Not Files (If node)

  • جزئیات:

* Input (LangChain chatTrigger):

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

* پیکربندی: برای پذیرش آپلود فایل تنظیم شده است.

* ورودی: یک درخواست وب‌هوک ورودی شامل chatInput، sessionId، action و یک آرایه اختیاری files.

* خروجی: شیء JSON با داده‌های دریافتی.

* موارد مرزی (Edge Cases): درخواست‌های ناقص، تریگرهای وب‌هوک گمشده، یا عدم ارائه فایل.

* If Not Files (If node):

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

* پیکربندی: از عملیات آرایه "notExists" بر روی {{$json.files}} استفاده می‌کند.

* ورودی: خروجی گره Input.

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

* موارد مرزی (Edge Cases): مشکلات در ارزیابی مسیر JSON یا منفی کاذب اگر فیلد files وجود داشته باشد اما خالی باشد.

۲. پردازش و آپلود فایل

این بلوک آپلود فایل‌ها به Google Gemini و تجمیع بعدی فراداده آن‌ها را مدیریت می‌کند.

  • گره‌ها (Nodes):

* Split Out Files (SplitOut node)

* Loop Over Items (SplitInBatches node)

* Upload a file (گره آپلود فایل Google Gemini)

* File data (Set node)

* Aggregate (Aggregate node)

* Update Input (Set node)

  • جزئیات:

* Split Out Files (SplitOut node):

* نقش: تجزیه آرایه files از ورودی به آیتم‌های فایل مجزا، حفظ فیلدهای ورودی دیگر و داده‌های باینری.

* ورودی: خروجی گره If Not Files (شاخه دارای فایل).

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

* موارد مرزی (Edge Cases): آرایه files خالی یا ناقص، داده‌های باینری گمشده.

* Loop Over Items (SplitInBatches node):

* نقش: پردازش هر فایل به صورت جداگانه. گزینه "reset" برای حفظ وضعیت غیرفعال است.

* ورودی: خروجی Split Out Files.

* خروجی: تغذیه هر فایل به گره Upload a file.

* موارد مرزی (Edge Cases): تعداد زیاد فایل‌ها ممکن است منجر به تاخیر یا رسیدن به محدودیت‌های نرخ API شود.

* Upload a file (گره آپلود فایل Google Gemini):

* نقش: آپلود محتوای فایل باینری به نقطه پایانی منبع فایل Google Gemini.

* پیکربندی: داده‌های باینری را از یک ویژگی پویا (مانند data{{$runIndex}}) می‌خواند. نیاز به اعتبارنامه API Google Gemini (PaLM) دارد.

* ورودی: داده‌های باینری یک فایل واحد.

* خروجی: نتیجه آپلود، شامل URI فایل.

* موارد مرزی (Edge Cases): خرابی آپلود، مشکلات احراز هویت، محدودیت‌های حجم فایل.

* File data (Set node):

* نقش: استخراج و قالب‌بندی فراداده‌های ضروری برای هر فایل آپلود شده، مانند URL، نام فایل اصلی و نوع MIME.

* ورودی: خروجی Upload a file و Split Out Files (برای نام فایل).

* خروجی: فراداده ساختاریافته برای تجمیع.

* موارد مرزی (Edge Cases): فیلدهای فراداده گمشده یا ناسازگار.

* Aggregate (Aggregate node):

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

* ورودی: خروجی Loop Over Items (به طور خاص، خروجی گره File data).

* خروجی: آرایه‌ای از فراداده‌های تجمیع شده فایل.

* Update Input (Set node):

* نقش: جایگزینی فیلد files اصلی در JSON ورودی با آرایه فراداده فایل تجمیع شده جدید. همچنین اطمینان حاصل می‌کند که sessionId، action و chatInput حفظ می‌شوند.

* ورودی: خروجی Aggregate و گره Input اصلی (برای اطلاعات جلسه).

* خروجی: JSON ورودی به‌روز شده آماده برای مرحله بعدی.

* موارد مرزی (Edge Cases): از دست دادن احتمالی فیلدهای دیگر اگر به صراحت کپی نشوند.

۳. آماده‌سازی ورودی

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

  • گره‌ها (Nodes):

* Merge (Merge node)

* Generate chat Input (Set node)

  • جزئیات:

* Merge (Merge node):

* نقش: ترکیب ورودی پردازش شده (با فراداده فایل) از شاخه "دارای فایل" و ورودی اصلی (بدون فایل) از شاخه "بدون فایل".

* ورودی: خروجی‌های Update Input و If Not Files (شاخه بدون فایل).

* خروجی: یک شیء JSON ورودی یکپارچه.

* موارد مرزی (Edge Cases): از دست دادن داده یا تداخل اگر ساختارهای ورودی به طور قابل توجهی متفاوت باشند.

* Generate chat Input (Set node):

* نقش: ایجاد رشته نهایی chatInput. پیام اصلی کاربر را با نمایش سریال شده فراداده فایل (مانند "Media: [...]") الحاق می‌کند. فیلدهای جلسه و اکشن نیز تنظیم می‌شوند.

* ورودی: خروجی گره Merge.

* خروجی: اعلان کامل و ساختاریافته برای عامل هوش مصنوعی.

* موارد مرزی (Edge Cases): رشته‌های بسیار طولانی به دلیل فراداده گسترده فایل، یا مدیریت ورودی‌های null/خالی.

۴. تحلیل چندوجهی (Multi-Modal Analysis)

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

  • گره‌ها (Nodes):

* IMG (گره تحلیل تصویر Google Gemini)

* VIDEO (گره تحلیل ویدئو Google Gemini)

* AUDIO (گره تحلیل صدا Google Gemini)

* DOCUMENT (گره تحلیل سند Google Gemini)

  • جزئیات (مشترک در انواع رسانه):

* نوع: گره ابزار Google Gemini (ادغام LangChain).

* نقش: تحلیل یک نوع رسانه خاص با ارسال URL آن و ورودی متنی کاربر به مدل مناسب Google Gemini.

* اعتبارنامه (Credential): نیاز به حساب API Google Gemini (PaLM) دارد.

* پیکربندی:

* Text: به صورت پویا از chatInput تنظیم می‌شود (AI override Text_Input).

* Model ID: بسته به نوع رسانه متفاوت است (مانند "gemma-3-27b-it" برای تصاویر، "gemini-2.0-flash-lite" برای موارد دیگر).

* Resource: روی image، video، audio یا document تنظیم شده است.

* Operation: analyze.

* Input URLs: به صورت پویا از URLهای فایل رسانه تنظیم می‌شود (AI override URL_s_).

* ورودی: chatInput و URLهای رسانه را دریافت می‌کند، که توسط ورودی ai_tool عامل هوش مصنوعی فعال می‌شود.

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

* موارد مرزی (Edge Cases): URLهای نامعتبر، محدودیت‌های نرخ API، فرمت‌های رسانه پشتیبانی نشده، خطاهای احراز هویت.

۵. اجرای عامل هوش مصنوعی

این هسته هوش مصنوعی گردش کار است، جایی که عامل Qwen LLM تمام ورودی‌ها را پردازش کرده و پاسخ را هماهنگ می‌کند.

  • گره‌ها (Nodes):

* AI Agent (LangChain agent node)

* Model (LangChain lmChatGroq node)

* Memory (LangChain memoryBufferWindow)

  • جزئیات:

* AI Agent (LangChain agent node):

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

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

* ورودی‌ها:

* ai_languageModel: از گره Model (Qwen LLM).

* ai_tool: از گره‌های تحلیل چندوجهی (IMG، VIDEO، AUDIO، DOCUMENT).

* ai_memory: از گره Memory.

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

* موارد مرزی (Edge Cases): تایم‌اوت‌ها، خطاهای API از مدل یا ابزارها، مشکلات مدیریت حافظه.

* Model (LangChain lmChatGroq node):

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

* اعتبارنامه (Credential): نیاز به حساب Groq دارد.

* ورودی: اعلان‌های چت از AI Agent.

* خروجی: تکمیل‌های مدل زبان که به AI Agent بازگردانده می‌شوند.

* موارد مرزی (Edge Cases): محدودیت‌های نرخ API، خرابی احراز هویت، سازگاری نسخه مدل.

* Memory (LangChain memoryBufferWindow):

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

* ورودی/خروجی: پیام‌های زمینه مکالمه را به و از AI Agent مدیریت می‌کند.

* موارد مرزی (Edge Cases): سرریز شدن زمینه در صورت تجاوز مکالمه از اندازه پنجره، از دست دادن زمینه پس از راه‌اندازی مجدد گردش کار.

۶. تولید پاسخ

خروجی نهایی به طور ضمنی توسط گره AI Agent پس از پردازش تمام ورودی‌ها، خروجی‌های ابزار و حافظه مکالمه تولید می‌شود.

  • گره‌ها (Nodes):

* AI Agent (خروجی نهایی)

  • جزئیات:

* خروجی گره AI Agent پاسخ قابل مشاهده برای کاربر است که از پرس‌وجوی اصلی و نتایج تحلیل چندوجهی سنتز شده است.

* موارد مرزی (Edge Cases): تایم‌اوت‌های تولید پاسخ، داده‌های ناقص منجر به پرس‌وجوهای غیرقابل پاسخ، یا ناتوانی در ارائه پاسخ مرتبط.

جدول خلاصه

نام نود (Node Name)نوع نود (Node Type)نقش عملکردی (Functional Role)نود(های) ورودی (Input Node(s))نود(های) خروجی (Output Node(s))یادداشت چسبان (Sticky Note)
InputLangChain chatTriggerدریافت چت کاربر و فایل‌ها از طریق وب‌هوک-If Not Files
If Not FilesIfبررسی وجود فایل‌ها در ورودیInputMerge, Split Out Files## اگر فایل‌ها همه فایل‌ها را در گوگل آپلود کنید
Split Out FilesSplitOutتقسیم آرایه فایل‌ها به فایل‌های مجزاIf Not FilesLoop Over Items
Loop Over ItemsSplitInBatchesپیمایش روی فایل‌های مجزاSplit Out FilesAggregate, Upload a file
Upload a fileGoogle Gemini file uploadآپلود فایل تکی به Google GeminiLoop Over ItemsFile data
File dataSetاستخراج و تنظیم فراداده فایلUpload a fileLoop Over Items
AggregateAggregateتجمیع آرایه فراداده فایلLoop Over ItemsUpdate Input
Update InputSetبه‌روزرسانی JSON ورودی با فراداده فایل تجمیع‌شدهAggregateMerge
MergeMergeترکیب ورودی پردازش‌شده با ورودی اصلیUpdate Input, If Not FilesGenerate chat Input
Generate chat InputSetساخت رشته نهایی پرامپتMergeAI Agent
IMGGoogle Gemini Tool (Image)تحلیل تصویر با استفاده از GeminiAI AgentAI AgentText: {{$json.chatInput}}, Model: gemma-3-27b-it, Resource: image, Operation: analyze
VIDEOGoogle Gemini Tool (Video)تحلیل ویدئو با استفاده از GeminiAI AgentAI AgentText: {{$json.chatInput}}, Model: gemini-2.0-flash-lite, Resource: video, Operation: analyze
AUDIOGoogle Gemini Tool (Audio)تحلیل صدا با استفاده از GeminiAI AgentAI AgentText: {{$json.chatInput}}, Model: gemini-2.0-flash-lite, Resource: audio, Operation: analyze
DOCUMENTGoogle Gemini Tool (Document)تحلیل سند با استفاده از GeminiAI AgentAI AgentText: {{$json.chatInput}}, Model: gemini-2.0-flash-lite, Resource: document, Operation: analyze
AI AgentLangChain agentهماهنگ‌سازی LLM، ابزارها و حافظهModel, IMG, VIDEO, AUDIO, DOCUMENT, MemoryWebhook ResponseSystem Message: "You are a helpful assistant..."
ModelLangChain lmChatGroqارائه بک‌اند Qwen LLMAI AgentAI AgentModel: qwen32b-chat
MemoryLangChain memoryBufferWindowحفظ تاریخچه مکالمهAI AgentAI AgentWindow size: 15

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

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

این گردش کار n8n چه قابلیت‌هایی دارد؟

این گردش کار امکان تحلیل چندوجهی را با ادغام ابزارهای Google Gemini و یک عامل Qwen LLM فراهم می‌کند. این به شما امکان می‌دهد تا پرس‌وجوهای کاربر را که شامل متن در کنار تصاویر، ویدئوها، اسناد و صدا است، پردازش کرده و پاسخ‌های جامع و آگاهانه از نظر زمینه دریافت کنید.

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

گردش کار ابتدا ورودی کاربر و فایل‌های پیوست شده را دریافت می‌کند. سپس فایل‌ها را به Google Gemini آپلود کرده و فراداده آن‌ها را جمع‌آوری می‌کند. در نهایت، از ابزارهای اختصاصی Gemini برای تجزیه و تحلیل موازی هر نوع رسانه استفاده شده و نتایج به عامل Qwen LLM برای تولید پاسخ نهایی ارسال می‌شود.

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

این گردش کار از گره‌هایی مانند LangChain `chatTrigger` برای دریافت ورودی، گره‌های `If` برای اعتبارسنجی، گره‌های `SplitOut` و `SplitInBatches` برای پردازش فایل‌ها، گره‌های ابزار Google Gemini برای تجزیه و تحلیل رسانه، و یک عامل Qwen LLM برای تولید پاسخ نهایی استفاده می‌کند.

workflowهای مرتبط

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