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

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

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

دانلود workflow

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

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

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

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

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

این گردش کار و سایر اتوماسیون‌های قدرتمند را در Axeto.ai کاوش کنید: https://axeto.ai/n8n

---

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

این گردش کار برای مدیریت فرآیند سرتاسری به چندین بلوک منطقی تقسیم شده است:

1. دریافت فاکتور و استخراج متن: پیام‌های تلگرام ورودی را دریافت می‌کند، فاکتورهای PDF را شناسایی کرده و محتوای متنی آن‌ها را استخراج می‌کند.

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

3. استخراج داده با توانمندسازی هوش مصنوعی: از یک عامل هوش مصنوعی با مدل GPT-4o از OpenAI و حافظه مکالمه برای استخراج داده‌های ساختاریافته سربرگ فاکتور و اقلام خطی استفاده می‌کند.

4. ذخیره‌سازی داده‌ها در ایرتیبل: رکوردهای متناظر را هم برای سربرگ فاکتور و هم برای اقلام خطی در ایرتیبل ایجاد می‌کند و پیوندهای رابطه‌ای لازم را برقرار می‌سازد.

5. بازخورد کاربر: پیام‌های تأیید یا وضعیت را از طریق تلگرام به کاربر بازمی‌گرداند.

6. راه‌اندازی و مستندات: دستورالعمل‌های راه‌اندازی ضروری، جزئیات ساختار داده و راهنمایی عیب‌یابی را از طریق یادداشت‌های چسبان ارائه می‌دهد.

---

تجزیه و تحلیل گره به گره (Node Analysis)

۱. دریافت فاکتور و استخراج متن

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

  • گره‌ها (Nodes):

* Telegram Trigger1 (Telegram Trigger)

* Switch1 (Switch)

* Telegram2 (Telegram)

* Extract from File1 (Extract from File)

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

* Telegram Trigger1

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

* پیکربندی: برای نظارت بر به‌روزرسانی‌های "پیام" تنظیم شده است.

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

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

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

* Switch1

* نقش: با بررسی نوع MIME (application/pdf) تعیین می‌کند که آیا پیام دریافتی حاوی سند PDF است یا خیر.

* پیکربندی: با قاعده‌ای برای مطابقت با انواع MIME PDF پیکربندی شده است. پیام‌های غیر PDF به یک خروجی جایگزین هدایت می‌شوند.

* ورودی: داده‌های پیام از Telegram Trigger1.

* خروجی: پیام‌های PDF را به Telegram2 هدایت می‌کند؛ پیام‌های دیگر به جای دیگری هدایت می‌شوند (مثلاً برای مدیریت خطا یا پردازش جایگزین).

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

* Telegram2

* نقش: دانلود فایل PDF از تلگرام با استفاده از file_id ارائه شده.

* پیکربندی: از شناسه فایل (file_id) سند برای دریافت منبع فایل استفاده می‌کند.

* ورودی: فراداده فایل PDF دریافتی از Switch1.

* خروجی: محتوای فایل دانلود شده را به Extract from File1 ارسال می‌کند.

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

* Extract from File1

* نقش: استخراج محتوای متن ساده از فایل PDF دانلود شده.

* پیکربندی: عملیات برای استخراج متن از اسناد PDF روی "pdf" تنظیم شده است.

* ورودی: بافر فایل دریافتی از Telegram2.

* خروجی: داده‌های متن استخراج شده را به Edit Fields1 ارسال می‌کند.

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

۲. آماده‌سازی داده‌ها

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

  • گره‌ها:

* Edit Fields1 (Set)

* Simple Memory (LangChain Memory Buffer Window)

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

* Edit Fields1

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

* پیکربندی:

* Message: $json.text (از Extract from File1) و $json.message.text (از پیام اصلی تلگرام) را الحاق می‌کند.

* memory_id: برای مدیریت جلسه روی شناسه چت تلگرام تنظیم شده است.

* ورودی: متن استخراج شده از Extract from File1 یا داده‌های جایگزین از Switch1.

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

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

* Simple Memory

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

* پیکربندی: کلید جلسه به طور پویا با استفاده از شناسه چت از Telegram Trigger1 ($('Telegram Trigger1').item.json.message.chat.id) تنظیم می‌شود.

* ورودی: تاریخچه مکالمه را برای AI Agent1 ذخیره و بازیابی می‌کند.

* خروجی: به ورودی حافظه AI Agent1 متصل است.

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

۳. استخراج داده با توانمندسازی هوش مصنوعی

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

  • گره‌ها:

* AI Agent1 (LangChain Agent)

* OpenAI Chat Model (LangChain OpenAI Chat Model)

* Create Invoice1 (Airtable Tool)

* Create Line Item1 (Airtable Tool)

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

* AI Agent1

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

* پیکربندی:

* از مدل GPT-4o از طریق گره OpenAI Chat Model استفاده می‌کند.

* پیام سیستمی (System Message): یک فرآیند مکالمه‌ای چند مرحله‌ای را تعریف می‌کند:

1. درخواست نام مشتری/شرکت.

2. در صورت عدم ارائه، درخواست آپلود فاکتور.

3. استخراج فیلدهای سربرگ فاکتور و ایجاد یک رکورد فاکتور در ایرتیبل.

4. استخراج اقلام خطی، ایجاد رکوردهای مرتبط در ایرتیبل و حذف اقلام با مقدار صفر.

* قوانین قالب‌بندی داده‌ها: قالب‌های خاصی را برای فیلدهای عددی (بدون نماد ارز)، تاریخ‌ها (YYYY-MM-DD) اجباری می‌کند و برای هر فیلد مشخص نشده از "MISSING" استفاده می‌کند.

* ابزارهای هوش مصنوعی: از گره‌های Create Invoice1 و Create Line Item1 به عنوان ابزارهایی برای ذخیره داده‌های استخراج شده استفاده می‌کند.

* ورودی: رشته پیام از Edit Fields1 و حافظه مکالمه‌ای از Simple Memory.

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

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

* OpenAI Chat Model

* نقش: تکمیل‌های مدل هوش مصنوعی را با استفاده از GPT-4o ارائه می‌دهد که سپس توسط AI Agent1 استفاده می‌شود.

* پیکربندی: مدل روی "gpt-4o" تنظیم شده است.

* ورودی: درخواست‌های Prompt از AI Agent1.

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

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

* Create Invoice1

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

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

* ورودی: فراخوانی ابزار هوش مصنوعی از AI Agent1.

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

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

* Create Line Item1

* نقش: ایجاد رکوردهای جداگانه اقلام خطی در جدول "Line Items" ایرتیبل، و پیوند دادن آنها به رکورد فاکتور والد.

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

* ورودی: فراخوانی ابزار هوش مصنوعی از AI Agent1، شامل شناسه رکورد فاکتور پیوند داده شده.

* خروجی: ایجاد موفقیت آمیز رکوردهای آیتم خطی را تأیید می‌کند.

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

۴. ذخیره‌سازی داده در ایرتیبل

تمام عملیات ذخیره‌سازی داده، از جمله ایجاد سربرگ‌های فاکتور و اقلام خطی و پیوند رابطه‌ای آنها، مستقیماً توسط گره‌های ابزار ایرتیبل در بلوک "استخراج داده با توانمندسازی هوش مصنوعی" مدیریت می‌شوند. لطفاً برای اطلاعات خاص در مورد Create Invoice1 و Create Line Item1 به جزئیات گره در بخش ۳ مراجعه کنید.

۵. بازخورد کاربر

این بخش تضمین می‌کند که کاربر تأیید یا به‌روزرسانی‌های وضعیت مربوط به پردازش فاکتور را مستقیماً در چت تلگرام خود دریافت کند.

  • گره‌ها:

* Telegram3 (Telegram)

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

* Telegram3

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

* پیکربندی:

* متن پیام: از فیلد output پاسخ JSON از AI Agent1 گرفته شده است.

* شناسه چت: به طور پویا با استفاده از شناسه چت گرفته شده توسط تریگر اولیه تنظیم شده است.

* ورودی: خروجی متن از AI Agent1.

* خروجی: ندارد (این یک گره پایانی در گردش کار است).

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

۶. راه‌اندازی و مستندات

این بخش شامل یادداشت‌های چسبان غیرقابل اجرا است که در بوم گردش کار قرار گرفته‌اند و اطلاعات ضروری را برای کاربران و توسعه‌دهندگان ارائه می‌دهند.

  • گره‌ها:

* Setup Requirements (Sticky Note)

* Workflow Overview (Sticky Note)

* Usage Instructions (Sticky Note)

* Data Structure (Sticky Note)

* Troubleshooting (Sticky Note)

* Configuration Notes (Sticky Note)

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

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

---

جدول خلاصه

نام نود (Node Name)نوع نود (Node Type)نقش عملکردی (Functional Role)نود(های) ورودی (Input Node(s))نود(های) خروجی (Output Node(s))محتوای یادداشت چسبان مرتبط (Associated Sticky Note Content)
Telegram Trigger1Telegram Triggerدریافت پیام‌های تلگرام-Switch1-
Switch1Switchفیلتر کردن پیوست‌های PDFTelegram Trigger1Telegram2, Fallback-
Telegram2Telegramدانلود فایل PDF از تلگرامSwitch1Extract from File1-
Extract from File1Extract from Fileاستخراج محتوای متنی از PDFTelegram2Edit Fields1-
Edit Fields1Setآماده‌سازی پیام ترکیبی و تنظیم حافظهExtract from File1AI Agent1-
Simple MemoryLangChain Memory Buffer Windowارائه زمینه حافظه مکالمه‌ای-AI Agent1 (ai\_memory)-
AI Agent1LangChain Agentاستخراج فاکتور/اقلام خطی با هوش مصنوعیEdit Fields1, Simple MemoryTelegram3-
OpenAI Chat ModelLangChain OpenAI Chat Modelتکمیل با مدل GPT-4o هوش مصنوعیAI Agent1 (ai\_languageModel)AI Agent1-
Create Invoice1Airtable Toolایجاد رکورد فاکتور در ایرتیبلAI Agent1 (ai\_tool)AI Agent1 (ai\_tool)ساختار داده: جزئیات فیلدهای مورد انتظار برای رکوردهای فاکتور در ایرتیبل.
Create Line Item1Airtable Toolایجاد رکوردهای اقلام خطی مرتبط با فاکتورAI Agent1 (ai\_tool)AI Agent1 (ai\_tool)ساختار داده: جزئیات فیلدهای مورد انتظار برای رکوردهای اقلام خطی در ایرتیبل و ارتباط آن‌ها با فاکتورها.
(یادداشت‌های چسبان)Sticky Noteراه‌اندازی، استفاده، عیب‌یابی، پیکربندی--پیش‌نیازهای راه‌اندازی: لیست پیش‌نیازها (کلید API ایرتیبل، کلید API OpenAI، توکن ربات تلگرام). <br> دستورالعمل استفاده: نحوه ارسال فاکتور از طریق تلگرام. <br> عیب‌یابی: مشکلات رایج و راه‌حل‌ها. <br> نکات پیکربندی: تنظیمات و پارامترهای خاص.

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

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

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

این گردش کار ابتدا پیام‌های تلگرام را دریافت کرده، فاکتورهای PDF را شناسایی و متن آن‌ها را استخراج می‌کند. سپس با استفاده از هوش مصنوعی GPT-4o، داده‌های ساختاریافته فاکتور را پردازش و استخراج می‌نماید.

داده‌های استخراج شده به کجا ذخیره می‌شوند؟

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

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

این گردش کار از مدل پیشرفته GPT-4o از OpenAI برای استخراج دقیق و هوشمندانه داده‌های ساختاریافته از فاکتورها استفاده می‌کند.

آیا این گردش کار برای PDFهای اسکن شده نیز کار می‌کند؟

این گردش کار برای استخراج متن از PDFهای استاندارد طراحی شده است. برای PDFهای اسکن شده که متن قابل انتخاب ندارند، ممکن است نیاز به ابزارهای OCR اضافی باشد.

workflowهای مرتبط

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