استخراج اطلاعات از PDF با n8n

انتشار خودکار محتوا با n8n

مقدمه

استخراج اطلاعات از PDF با n8n

N8Nابزاری است که به کمک آن می توانید در مدت‌زمان کوتاهی، فرایندهای خود را با هوش مصنوعی خودکار کنید و از مزایای اتوماسیون هوشمند بهره‌ مند شوید.

N8N برای چه کسب و کارهایی مناسب است:

اگر سازمان شما کوچک می باشد و هم اکنون بسیاری از کار های خود را با نرم افزار هایی همچون اکسل انجام می دهید، N8N برای کسب و کار شما ایده آل است و در صورتی که کسب و کاری متوسط یا بزرگ دارید می توانید بخش های بسیاری از فرایند های غیر کلیدی خود را با این ابزار هوشمند کنید.
اگر به پیاده‌سازی اختصاصی، اتصال n8n به نرم‌افزارهای سازمانی یا سفارشی‌سازی Workflowها متناسب با کسب‌وکارتان نیاز دارید، Danix با بررسی نیازهای کسب‌وکار شما، می‌تواند این فرایند را از طراحی تا استقرار برای شما انجام دهیم.

برای کسب و کارهای کوچک به این لینک مراجعه کنید و برای کسب و کارهای بزرگ و متوسط میتوانید از این لینک استفاده نمایید.
همچنین اگر ترجیح می‌دهید شخصاً نصب و راه‌اندازی را انجام دهید، می‌توانید از اطلاعات موجود در مقالات، دسته N8N استفاده کنید .همچنین می توانید template موجود در این workflow را به صورت رایگان از این قسمت دانلود کنید.

پسوورد فایل فشرده: danixai.com

 

استخراج اطلاعات از PDF با n8n

قبل از شروع در استخراج اطلاعات از PDF با n8n

اگر هنوز n8n را نصب نکرده‌اید، پیشنهاد می‌کنیم ابتدا مقاله «آموزش n8n» را مطالعه کنید. در آن مقاله، مراحل نصب با Node.js و Docker، راه‌اندازی اولیه و ساخت اولین Workflow به‌صورت کامل آموزش داده شده است. پس از نصب و راه‌اندازی، به این مقاله بازگردید و مراحل پیاده‌سازی این Workflow را دنبال کنید.


این Workflow چه کاری انجام می‌دهد؟

این Workflow یک فایل PDF را از Google Drive دریافت می‌کند و محتوای فایل را برای پردازش توسط مدل‌های هوش مصنوعی آماده می‌سازد. در مرحله بعد، فایل PDF به فرمت Base64 تبدیل می‌شود تا بتوان آن را در درخواست API سرویس‌های هوش مصنوعی قرار داد.

پس از آماده‌سازی فایل، Workflow دو مسیر موازی ایجاد می‌کند. یک مسیر فایل را به API مربوط به Claude 3.5 Sonnet و مسیر دیگر همان فایل را به API مربوط به Gemini 2.0 Flash ارسال می‌کند. هر دو درخواست از یک Prompt استفاده می‌کنند.

Prompt پیش‌فرض این Template بسیار ساده است و از مدل می‌خواهد شماره‌های مالیات بر ارزش افزوده یا VAT را برای هر کشور استخراج کند. با تغییر همین Prompt می‌توانید اطلاعات دیگری مانند نام شرکت، شماره فاکتور، تاریخ، مبلغ، آدرس یا اطلاعات مالی را از PDF استخراج کنید.

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


کاربردهای این Workflow در استخراج اطلاعات از PDF با n8n

ساختار این Template می‌تواند در سناریوهای مختلفی مورد استفاده قرار گیرد. چند نمونه مهم عبارت‌اند از:

  • استخراج اطلاعات از فاکتورهای PDF و تبدیل آن‌ها به داده قابل پردازش.
  • استخراج شماره مالیاتی، شناسه شرکت و اطلاعات فروشنده از اسناد مالی.
  • پردازش خودکار قراردادها و استخراج بندها یا اطلاعات مشخص.
  • استخراج اطلاعات رزومه‌ها و فرم‌های استخدامی ذخیره‌شده به‌صورت PDF.
  • پردازش گزارش‌های مالی و استخراج شاخص‌های موردنیاز.
  • بررسی و استخراج اطلاعات از اسناد خرید، سفارش و رسیدها.
  • استخراج اطلاعات از فرم‌های سازمانی و اداری.
  • مقایسه کیفیت مدل‌های مختلف هوش مصنوعی در پردازش یک سند مشخص.
  • ایجاد سیستم اتوماسیون برای دریافت PDF از فضای ابری و تحلیل خودکار آن.
  • آماده‌سازی اطلاعات PDF برای ارسال به Database، Google Sheets یا سایر Workflowها.

پیش‌نیازها در استخراج اطلاعات از PDF با n8n

برای اجرای این Template به چند مورد اصلی نیاز دارید:

  • نصب و راه‌اندازی n8n.
  • یک حساب Google برای دسترسی به Google Drive.
  • Credential مربوط به Google Drive در n8n.
  • یک فایل PDF قابل دسترسی در Google Drive.
  • API Key مربوط به Gemini در صورت فعال بودن مسیر Gemini.
  • API Key مربوط به Anthropic در صورت فعال بودن مسیر Claude.
  • دسترسی مناسب به APIهای مورد استفاده.
  • آشنایی مقدماتی با Nodeهای n8n و Expressionها.
  • یک Prompt مناسب برای مشخص کردن اطلاعات موردنیاز.

در Template اصلی، فایل مشخصی از Google Drive انتخاب شده است. بنابراین هنگام استفاده واقعی بهتر است فایل موجود در Credential یا Node مربوط به Google Drive را با سند موردنظر خود جایگزین کنید.


دانلود Templateدر استخراج اطلاعات از PDF با n8n

فایل JSON این Workflow را از این قسمت دانلود کنید.

پسوورد فایل فشرده: danixai.com

آموزش Import کردن Workflow در استخراج اطلاعات از PDF با n8n

  1. وارد داشبورد n8n شوید.
  2. روی Import from File کلیک کنید.
  3. فایل JSON را انتخاب کنید.
  4. Workflow ایجاد خواهد شد.
  5. Credentialهای موردنیاز را تنظیم کنید.

ساختار Workflow در استخراج اطلاعات از PDF با n8n

ساختار کلی Workflow به این صورت است:

Manual Trigger

Define Prompt

Google Drive

Extract from File

Claude 3.5 Sonnet
Gemini 2.0 Flash

در واقع بعد از Node مربوط به استخراج فایل، Workflow به دو مسیر موازی تقسیم می‌شود. هر دو مسیر همان PDF و همان Prompt را دریافت می‌کنند، اما درخواست را به یک سرویس هوش مصنوعی متفاوت ارسال می‌کنند.

این معماری برای مقایسه مدل‌ها بسیار مناسب است، زیرا ورودی هر دو مدل یکسان باقی می‌ماند. بنابراین می‌توانید نتیجه Claude و Gemini را روی یک سند مشخص مقایسه کنید.


آموزش کامل تمام Nodeها در استخراج اطلاعات از PDF با n8n

When clicking ‘Test workflow’

این Node از نوع Manual Trigger است و نقطه شروع Workflow محسوب می‌شود. زمانی که کاربر روی گزینه Test Workflow کلیک می‌کند، اجرای فرایند از این Node آغاز می‌شود.

این Trigger برای توسعه و تست بسیار مناسب است، زیرا بدون نیاز به Webhook یا زمان‌بندی می‌توانید Workflow را به‌صورت دستی اجرا کنید.

ورودی خاصی از کاربر دریافت نمی‌کند و خروجی اصلی آن برای ادامه زنجیره اجرای Workflow استفاده می‌شود. بعد از این Node، جریان به Define Prompt منتقل می‌شود.

در محیط Production می‌توانید این Trigger را با Triggerهای دیگری جایگزین کنید. برای مثال می‌توان Workflow را طوری تغییر داد که با دریافت یک فایل جدید در Google Drive یا اجرای یک Webhook آغاز شود.


Define Prompt

این Node از نوع Set است و وظیفه آن تعریف دستور یا Prompt مورد استفاده مدل‌های هوش مصنوعی است.

در Template فعلی، مقدار Prompt به شکل زیر مفهوم دارد:

Extract the VAT numbers for each country

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

مهم‌ترین ویژگی این Node این است که Prompt فقط یک بار تعریف می‌شود، اما هر دو مدل Claude و Gemini از همان مقدار استفاده می‌کنند. این موضوع برای مقایسه منصفانه دو مدل اهمیت زیادی دارد.

اگر بخواهید اطلاعات دیگری استخراج کنید، معمولاً اولین جایی که باید تغییر دهید همین Node است. برای مثال می‌توانید Prompt را برای استخراج شماره فاکتور، نام مشتری، تاریخ صدور و مبلغ نهایی تغییر دهید.

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


Google Drive

Node بعدی از نوع Google Drive است و وظیفه آن دانلود فایل PDF از فضای ذخیره‌سازی Google Drive است.

در Template یک File ID مشخص شده که به یک فایل PDF اشاره می‌کند. این Node با استفاده از Credential مربوط به Google Drive به حساب کاربری متصل می‌شود و فایل را دریافت می‌کند.

خروجی این Node شامل داده فایل است که در ادامه Workflow مورد استفاده قرار می‌گیرد. از آنجا که مدل‌های هوش مصنوعی باید خود فایل را دریافت کنند، دانلود فایل یکی از مراحل ضروری Workflow محسوب می‌شود.

برای استفاده از فایل دیگری باید File ID یا فایل انتخاب‌شده در تنظیمات Node را تغییر دهید. اگر Workflow را برای استفاده دائمی طراحی می‌کنید، بهتر است به‌جای انتخاب دستی یک File ID ثابت، Trigger یا منطق جست‌وجوی فایل اضافه کنید.

Credential با نام Google Drive account برای احراز هویت این Node استفاده شده است. اگر Credential در محیط n8n شما وجود ندارد، باید اتصال Google Drive را دوباره تنظیم کنید.


Extract from File

این Node وظیفه تبدیل داده فایل دریافت‌شده از Google Drive را بر عهده دارد.

در Template، عملیات binaryToProperty انتخاب شده است. نتیجه این عملیات باعث می‌شود داده فایل به یک Property قابل استفاده در ادامه Workflow تبدیل شود.

این مرحله اهمیت زیادی دارد، زیرا APIهای Claude و Gemini در این Workflow فایل را به‌صورت Base64 دریافت می‌کنند. در نتیجه باید محتوای PDF قبل از ارسال به API آماده شود.

بعد از اجرای این Node، Workflow به دو مسیر تقسیم می‌شود. هر دو مسیر دقیقاً از خروجی همین Node استفاده می‌کنند.

اگر این مرحله حذف شود، درخواست‌های API نمی‌توانند به شکل مورد انتظار محتوای PDF را دریافت کنند. بنابراین این Node واسطه‌ای میان فایل Binary و درخواست‌های HTTP مربوط به مدل‌های هوش مصنوعی است.


Call Claude 3.5 Sonnet with PDF Capabilities

این Node از نوع HTTP Request است و برای ارسال PDF به API شرکت Anthropic استفاده می‌شود.

در این درخواست، مدل Claude 3.5 Sonnet مشخص شده و فایل PDF در قالب Base64 داخل درخواست قرار می‌گیرد. علاوه بر فایل، Prompt تعریف‌شده در Node Define Prompt نیز برای مدل ارسال می‌شود.

درخواست از نوع POST است و Headerهایی مانند anthropic-version و content-type نیز در آن تنظیم شده‌اند. Credential مربوط به Anthropic برای احراز هویت API استفاده می‌شود.

مهم‌ترین قسمت این Node، ترکیب دو ورودی است: سند PDF و دستور متنی. مدل بر اساس Prompt تصمیم می‌گیرد چه اطلاعاتی را از سند استخراج کند.

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

این Node برای مقایسه Claude با Gemini در نظر گرفته شده است. اگر فقط قصد استفاده از Gemini را دارید، می‌توانید مسیر Claude را غیرفعال کنید.


Call Gemini 2.0 Flash with PDF Capabilities

این Node نیز از نوع HTTP Request است، اما درخواست را به API مربوط به Gemini ارسال می‌کند.

درخواست با متد POST به Endpoint مدل Gemini ارسال می‌شود و فایل PDF به شکل Base64 در بخش inline_data قرار می‌گیرد. مقدار MIME Type نیز application/pdf تعیین شده تا سرویس بداند داده ارسالی یک فایل PDF است.

Prompt همان Prompt مربوط به Node Define Prompt است. این موضوع باعث می‌شود Claude و Gemini یک دستور یکسان دریافت کنند.

احراز هویت این Node با Credential مربوط به Google Gemini یا PaLM API انجام می‌شود. بنابراین برای اجرای این مسیر باید API مربوط به Google را فعال کرده و Credential معتبر در n8n ایجاد کرده باشید.

یکی از مزیت‌های این طراحی آن است که می‌توانید یک سند یکسان را به دو مدل بدهید و خروجی‌ها را از نظر دقت، سرعت و هزینه مقایسه کنید.


Sticky Note1

این Node یک Sticky Note است و در اجرای Workflow نقشی ندارد. وظیفه آن ارائه توضیحات برای کاربر یا توسعه‌دهنده Workflow است.

این یادداشت توضیح می‌دهد که هدف Template مقایسه Claude 3.5 Sonnet و Gemini 2.0 Flash برای استخراج اطلاعات از PDF است.

همچنین توضیح داده شده که Workflow ابتدا فایل را دانلود و سپس آن را به Base64 تبدیل می‌کند. بعد از آن، فایل برای هر دو مدل ارسال می‌شود.

Sticky Note همچنین روش کلی استفاده از Template را توضیح می‌دهد؛ از جمله تنظیم Google Drive، انتخاب فایل، تغییر Prompt و تنظیم API Keyها.


Sticky Note

این یادداشت مربوط به مسیر Gemini است و یک قابلیت مهم را توضیح می‌دهد: امکان دریافت خروجی ساختاریافته یا JSON.

در صورت نیاز می‌توان تنظیمات مربوط به Response MIME Type را تغییر داد تا مدل خروجی را به‌صورت JSON تولید کند. این قابلیت زمانی بسیار مفید است که بخواهید خروجی AI را در Nodeهای بعدی پردازش کنید.

برای مثال، اگر از مدل بخواهید نام شرکت، شماره فاکتور و مبلغ را استخراج کند، خروجی JSON بسیار مناسب‌تر از متن آزاد خواهد بود.


Sticky Note2

این Sticky Note مربوط به Claude است و درباره امکان کنترل ساختار پاسخ مدل توضیح می‌دهد.

هدف اصلی آن این است که توسعه‌دهنده بداند می‌توان پاسخ Claude را با تکنیک‌هایی مانند Prefill به سمت یک ساختار مشخص هدایت کرد.

این قابلیت زمانی مفید است که خروجی مدل قرار است مستقیماً وارد مرحله بعدی Workflow شود و قالب خروجی اهمیت زیادی داشته باشد.


Sticky Note3

این یادداشت درباره دو مرحله ابتدایی Workflow یعنی Google Drive و Extract from File است.

طبق توضیح آن، ابتدا PDF دانلود می‌شود و سپس محتوای آن به Base64 تبدیل می‌شود. این تبدیل برای ارسال فایل در درخواست API هر دو مدل موردنیاز است.

این Node هیچ عملیات پردازشی مستقیمی روی داده انجام نمی‌دهد و صرفاً برای مستندسازی Workflow در محیط n8n قرار گرفته است.


Sticky Note4

این یادداشت نقش Node Define Prompt را توضیح می‌دهد.

طبق ساختار Workflow، Prompt یک بار تعریف شده و در هر دو درخواست Claude و Gemini مورد استفاده قرار می‌گیرد.

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


نحوه اتصال Nodeها به یکدیگر در استخراج اطلاعات از PDF با n8n

Connectionهای Workflow نقش مهمی در درک معماری آن دارند.

ابتدا Manual Trigger به Define Prompt متصل است. بنابراین با شروع اجرای Workflow، Prompt ایجاد می‌شود.

سپس Define Prompt به Google Drive متصل شده است. Google Drive فایل PDF را دانلود می‌کند و نتیجه را به Extract from File می‌فرستد.

بعد از تبدیل فایل، Extract from File دو خروجی منطقی ایجاد می‌کند. یکی به Claude و دیگری به Gemini متصل است.

این یعنی Claude و Gemini در این Workflow به‌صورت موازی اجرا می‌شوند. هیچ Merge Nodeای در انتهای Workflow وجود ندارد؛ بنابراین نتایج دو API در همان مسیرهای جداگانه باقی می‌مانند.

اگر قصد دارید نتیجه دو مدل را در یک خروجی واحد مقایسه کنید، می‌توانید در مرحله بعد یک Merge Node یا Code Node اضافه کنید.


نحوه شخصی‌سازی Workflow در استخراج اطلاعات از PDF با n8n

تغییر Prompt

مهم‌ترین قسمت قابل شخصی‌سازی، Node Define Prompt است. Prompt را می‌توانید متناسب با نوع سند تغییر دهید.

برای مثال، به‌جای استخراج VAT می‌توانید از مدل بخواهید شماره فاکتور، تاریخ، نام فروشنده، نام خریدار و مبلغ نهایی را استخراج کند.

بهتر است هنگام طراحی Prompt، فرمت خروجی موردنظر را نیز مشخص کنید. این کار در سناریوهای اتوماسیون باعث کاهش پردازش‌های اضافی در Nodeهای بعدی می‌شود.

تغییر مدل AI

در مسیر Claude می‌توانید مدل مورد استفاده را مطابق مدل‌های در دسترس API Anthropic تغییر دهید. در مسیر Gemini نیز می‌توانید Endpoint و مدل را تغییر دهید.

هنگام تغییر مدل باید به قابلیت پشتیبانی از فایل، محدودیت Token، هزینه و ساختار API توجه کنید.

تغییر فایل PDF

در Node Google Drive می‌توانید فایل انتخاب‌شده را تغییر دهید. اگر Workflow قرار است به‌صورت خودکار کار کند، می‌توان Nodeهای بیشتری برای پیدا کردن فایل‌های جدید اضافه کرد.

برای مثال، می‌توانید فایل‌های موجود در یک Folder خاص را بررسی کرده و هر فایل جدید را برای تحلیل ارسال کنید.

تغییر Trigger

Manual Trigger برای تست مناسب است، اما برای Production می‌توانید از Triggerهای زمان‌بندی‌شده، Webhook یا Triggerهای مرتبط با سرویس‌های ابری استفاده کنید.

در چنین حالتی Workflow می‌تواند بدون دخالت دستی اجرا شود.

تغییر خروجی

در Template فعلی خروجی دو مدل جداگانه است. اگر قصد دارید اطلاعات استخراج‌شده را وارد Google Sheets، Database یا سیستم دیگری کنید، می‌توانید Nodeهای مربوط به ذخیره اطلاعات را بعد از APIها اضافه کنید.

برای پردازش حرفه‌ای‌تر نیز می‌توانید خروجی مدل را به JSON تبدیل کرده و سپس با Code یا دیگر Nodeهای n8n پردازش کنید.


مزایای استفاده از این Workflow در استخراج اطلاعات از PDF با n8n

  • حذف نیاز به طراحی یک مرحله OCR جداگانه در بسیاری از سناریوهای PDF.
  • امکان مقایسه مستقیم دو مدل هوش مصنوعی.
  • استفاده از یک Prompt مشترک برای مقایسه منصفانه.
  • اتصال ساده به Google Drive.
  • قابلیت پردازش مستقیم فایل PDF.
  • امکان تغییر سریع Prompt بدون تغییر کل Workflow.
  • قابلیت توسعه برای ذخیره خروجی در Database یا Spreadsheet.
  • مناسب برای نمونه‌سازی سریع سیستم‌های Document Processing.
  • امکان استفاده از مدل‌های مختلف متناسب با نیاز پروژه.
  • ساختار ساده و قابل فهم برای کاربران مبتدی و متوسط n8n.

نکات مهم در استخراج اطلاعات از PDF با n8n

  1. قبل از اجرای Workflow، Credentialهای Google Drive، Anthropic و Gemini را بررسی کنید.
  2. اگر یکی از سرویس‌های AI را نیاز ندارید، مسیر مربوط به آن را غیرفعال کنید تا درخواست غیرضروری ارسال نشود.
  3. Prompt را تا حد امکان دقیق و مشخص بنویسید تا مدل بداند دقیقاً چه داده‌ای باید استخراج کند.
  4. برای اطلاعات حساس مانند اسناد مالی یا قراردادها، سیاست‌های امنیتی و حریم خصوصی سرویس AI موردنظر را بررسی کنید.
  5. محدودیت Token مدل را هنگام استخراج اسناد طولانی در نظر بگیرید.
  6. فایل‌های PDF بزرگ ممکن است باعث افزایش زمان پردازش یا مصرف API شوند.
  7. اگر خروجی قرار است در Nodeهای دیگر پردازش شود، استفاده از JSON ساختاریافته را در نظر بگیرید.
  8. خروجی Claude و Gemini را از نظر دقت و کامل بودن با نمونه‌های واقعی بررسی کنید.
  9. APIهای مورد استفاده ممکن است در طول زمان تغییر کنند؛ بنابراین Endpoint و مدل انتخابی باید با مستندات فعلی سرویس مربوطه سازگار باشند.
  10. وجود Credential در فایل Workflow به معنی انتقال امن Secretهای شما نیست؛ Credentialها را همیشه در محیط n8n خودتان بررسی و تنظیم کنید.
  11. در این Workflow Merge Node وجود ندارد، بنابراین نتایج دو مدل به‌صورت خودکار در یک خروجی واحد ترکیب نمی‌شوند.
  12. برای استفاده در محیط Production بهتر است مدیریت خطا، Retry و Logging نیز به Workflow اضافه شود.

خطاهای رایج (Troubleshooting) در استخراج اطلاعات از PDF با n8n

خطای Credential در Google Drive

علت: Credential مربوط به Google Drive در محیط n8n وجود ندارد یا مجوز دسترسی لازم را ندارد.

راه‌حل: وارد تنظیمات Credentials شوید و یک اتصال معتبر Google Drive ایجاد کنید. سپس آن Credential را در Node مربوط به Google Drive انتخاب کنید.


خطای احراز هویت Gemini

علت: API Key یا Credential مربوط به Google Gemini معتبر نیست، منقضی شده یا سرویس مربوطه فعال نشده است.

راه‌حل: Credential مربوط به Gemini را بررسی کنید و مطمئن شوید API موردنیاز در حساب Google فعال است. همچنین Endpoint و مدل انتخاب‌شده را بررسی کنید.


خطای احراز هویت Anthropic

علت: Credential مربوط به Anthropic تنظیم نشده یا API Key صحیح نیست.

راه‌حل: یک API Key معتبر ایجاد کرده و Credential مربوط به Anthropic را در n8n تنظیم کنید. سپس Node مربوط به Claude را دوباره اجرا کنید.


مدل نمی‌تواند اطلاعات PDF را به‌درستی استخراج کند

علت: Prompt بیش از حد کلی است، PDF کیفیت مناسبی ندارد یا ساختار سند برای مدل دشوار است.

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


خروجی Claude و Gemini با یکدیگر متفاوت است

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

راه‌حل: Prompt یکسان و دقیق استفاده کنید و نتایج را با داده واقعی مقایسه کنید. برای اطلاعات حساس بهتر است خروجی مدل بدون بررسی انسانی مستقیماً وارد فرایندهای حیاتی نشود.


فایل PDF در API ارسال نمی‌شود

علت: داده Binary به Property مناسب تبدیل نشده یا مقدار Base64 به‌درستی در درخواست HTTP قرار نگرفته است.

راه‌حل: خروجی Node Extract from File را بررسی کنید و مطمئن شوید Property موردنظر حاوی داده Base64 است. سپس Expression استفاده‌شده در HTTP Request را بررسی کنید.


توسعه Workflow برای پروژه‌های واقعی در استخراج اطلاعات از PDF با n8n

این Template را می‌توان از یک نمونه آزمایشی به یک سیستم کامل پردازش اسناد تبدیل کرد. برای مثال، می‌توانید یک Trigger برای دریافت فایل جدید ایجاد کنید تا هر PDF جدید به‌صورت خودکار پردازش شود.

پس از تحلیل سند، می‌توان نتیجه را با یک Structured Output به JSON تبدیل کرد. سپس JSON می‌تواند وارد Google Sheets، PostgreSQL، MySQL یا سایر سیستم‌های ذخیره‌سازی شود.

همچنین می‌توان یک مرحله Validation اضافه کرد. در این مرحله بررسی می‌شود که فیلدهای ضروری مانند شماره فاکتور یا مبلغ نهایی در خروجی وجود داشته باشند.

یکی دیگر از توسعه‌های کاربردی، اضافه کردن سیستم مقایسه نتایج است. در این حالت خروجی Claude و Gemini در یک ساختار مشترک قرار می‌گیرند و یک Code Node می‌تواند اختلاف بین نتایج را مشخص کند.


چرا استفاده از Claude و Gemini در یک Workflow مفید است؟

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

این Workflow امکان آزمایش هر دو مدل را روی یک ورودی یکسان فراهم می‌کند. چون Prompt و فایل PDF برای هر دو مسیر مشترک هستند، مقایسه نتایج ساده‌تر می‌شود.

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


جمع‌بندی

Workflow ارائه‌شده یک نمونه کاربردی برای استخراج اطلاعات از PDF با n8n است که فایل را از Google Drive دریافت کرده و بدون نیاز به طراحی یک زنجیره OCR جداگانه، آن را برای دو مدل هوش مصنوعی ارسال می‌کند.

ساختار Workflow ساده است: ابتدا اجرای دستی شروع می‌شود، سپس Prompt تعریف می‌شود، فایل از Google Drive دانلود می‌شود و در مرحله بعد به Base64 تبدیل می‌شود. پس از آماده‌سازی فایل، Workflow به دو مسیر تقسیم شده و PDF را برای Claude و Gemini ارسال می‌کند.

یکی از مهم‌ترین ویژگی‌های Template امکان مقایسه دو مدل با یک ورودی و Prompt یکسان است. این قابلیت می‌تواند برای بررسی دقت، سرعت و هزینه مدل‌ها بسیار مفید باشد.

از طرف دیگر، Workflow محدود به استخراج VAT نیست. با تغییر Prompt می‌توان اطلاعات مختلفی را از فاکتورها، قراردادها، گزارش‌ها، فرم‌ها و سایر اسناد PDF استخراج کرد.

برای استفاده حرفه‌ای‌تر، پیشنهاد می‌شود قابلیت‌هایی مانند Structured Output، Merge، مدیریت خطا، Retry، Validation و ذخیره نتایج در Database به آن اضافه شود. به این ترتیب یک Template ساده می‌تواند به بخشی از یک سیستم کامل Document Processing تبدیل شود.

GIT

Categories: , ,

توسعه توسط تیم میهن وردپرس