تصور کنید یک صندوق ورودی از فاکتورهای اسکن‌شده دارید که هر صفحه یک بارکد دارد که شماره سفارش خرید را نام می‌برد. یک عامل هوش مصنوعی می‌تواند هر کد را در پوشه به‌صورت محلی بخواند، بدون بارگذاری، و جدولی به شما بدهد که هر فایل را به رکورد مربوطه‌اش مطابقت می‌دهد. عامل می‌تواند Claude، Cursor یا GitHub Copilot باشد؛ خواندن توسط سرور GroupDocs.Signature.Mcp انجام می‌شود. یک درخواست کافی است:

برای هر PDF در پوشه، بارکد را بخوان و یک جدول شامل نام فایل، مقدار بارکد، صفحه به من بده.

نسخه گام‌به‌گام با پیکربندی و عیب‌یابی در مستندات موجود است: چگونه داده‌های کد QR و بارکد را از اسناد با هوش مصنوعی استخراج کنیم.

سناریو: از انبوهی از فایل‌ها به صف مسیریابی شده

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

  1. اسناد در پوشه‌ای که سرور برای استفاده پیکربندی کرده است (GROUPDOCS_MCP_STORAGE_PATH) قرار می‌گیرند.
  2. عامل برای هر فایل search_barcodes را فراخوانی می‌کند و مقادیر رمزگشایی‌شده، صفحات و موقعیت‌ها را جمع‌آوری می‌کند.
  3. عامل جدول را برمی‌گرداند. آن جدول کلید پیوند بین فایل‌ها و رکوردهای ERP، انبار یا سیستم پرونده شما است.
  4. یک شخص، یا گام خودکار بعدی که شما کنترل می‌کنید، جستجو و مسیریابی را انجام می‌دهد.

گام ۴ عمداً خارج از عامل باقی می‌ماند. به بخش «چه چیزهایی را خودکار نکنید» در زیر نگاه کنید.

کدام ابزار کدام کد را می‌خواند؟

search_qr_codes کدهای QR را می‌خواند. search_barcodes بارکدهای یک‌بعدی مانند Code39، Code128 و EAN را می‌خواند. هر کدام متن رمزگشایی‌شده، صفحه و موقعیت هر مورد را برمی‌گردانند. اگر مطمئن نیستید سند چه نوعی دارد، هر دو را درخواست کنید:

کدهای QR و بارکدهای موجود در invoice.pdf را بخوان و به من بگو چه چیزی دارند.

چگونه یک کد را در میان بسیاری پیدا کنید؟

هر دو ابزار یک فیلتر text می‌پذیرند که فقط کدهایی را که شامل رشتهٔ داده‌شده هستند برمی‌گرداند:

بارکدی که با SHIP شروع می‌شود را پیدا کن و به من بگو در چه صفحه‌ای است.

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

پاسخ‌ها را کوچک نگه دارید

هر دو ابزار returnImage را می‌پذیرند. آن را خاموش بگذارید مگر اینکه واقعاً به گرافیک نیاز داشته باشید. متن رمزگشایی‌شده همان چیزی است که عامل بر آن استدلال می‌کند و تصاویر base64 پاسخ‌ها را بزرگ و کند می‌کنند.

جلسهٔ نمونه (مختصر)

You:    For every PDF in the folder, read the barcode, and give me a table
        of file name, barcode value, page.

Agent:  [search_barcodes] file=invoice-0007.pdf   found: 1
        [search_barcodes] file=invoice-0008.pdf   found: 1
        [search_barcodes] file=scan-0009.pdf      found: 0
        | file             | barcode value | page |
        | invoice-0007.pdf | PO-448210     | 1    |
        | invoice-0008.pdf | PO-448377     | 1    |
        scan-0009.pdf has no barcode in the pages that were processed.

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

Signature یا Parser: کدام سرور کد را می‌خواند؟

از GroupDocs.Signature.Mcp استفاده کنید وقتی کد یک عنصر امضای است که شما نیز اضافه می‌کنید، یا وقتی اسناد به هر دو جهت جریان دارند: مرجع ورودی را بخوانید، کار را انجام دهید، سپس با sign بر روی سند خروجی یک کد QR که مرجع جدید را حمل می‌کند، فراخوانی کنید. از GroupDocs.Parser.Mcp (فقط به‌صورت تصویر Docker ارائه می‌شود؛ ابزار extract_barcodes آن) استفاده کنید وقتی داده‌ها را از اسکن‌های دلخواه استخراج می‌کنید و همچنین به متن، جدول‌ها یا متادیتا از همان فایل‌ها نیاز دارید. این سرور امضاها و کدها را می‌خواند. اما چیدمان، فیلدها یا جدول‌ها را استخراج نمی‌کند.

چه چیزهایی را خودکار نکنید

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

محدودیت‌های ارزیابی

بدون لایسنس فقط دو صفحهٔ اول یک سند پردازش می‌شوند و یک نشان آزمایشی بر هر صفحه گذاشته می‌شود. یک کد در صفحهٔ ۳ به سادگی پیدا نمی‌شود و نتیجهٔ خالی شبیه «بدون کد» به نظر می‌رسد. از عامل بخواهید قبل از اعتماد به نتیجهٔ خالی get_license_status را فراخوانی کند.

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

آیا Claude می‌تواند کد QR را در این PDF بخواند؟
بله. با اتصال به سرور، Claude search_qr_codes را فراخوانی می‌کند و متن رمزگشایی‌شده، صفحه و موقعیت را به‌صورت محلی گزارش می‌دهد.

چگونه می‌توانم مقدار بارکد را از یک فاکتور با هوش مصنوعی استخراج کنم؟
از عامل بخواهید بارکدهای موجود در فایل را بخواند. آن search_barcodes را فراخوانی می‌کند و مقدار رمزگشایی‌شده را برمی‌گرداند؛ اگر یک کد خاص می‌خواهید فیلتر text را اضافه کنید.

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

عمیق‌تر بروید