Document AI — KCPC Structured Document Extraction (zero-downside)
بُني 2026-09-17 بأمر د. وائل. يستخرج نصّاً/جداول/حقولاً مهيكلة من مناقصات/عقود/فواتير KCPC عبر Google Document AI مع سلسلة never-stop كاملة.
الاستخدام
python3 skills/document-ai/docai.py process <file.pdf> [--processor layout|ocr|form|invoice] [--json] [--save out.json]
python3 skills/document-ai/docai.py list # عرض الـ processors
python3 skills/document-ai/docai.py selftest # فحص ذاتي حيّ
python3 skills/document-ai/docai.py cost # حاسبة التكلفة
المعمار (صفر سلبيات)
سلسلة never-stop بثلاث طبقات + auto-processor-fallback داخلي: 1. Document AI (الأدق للبنية) — مع سلسلة processors داخلية: المختار → OCR → form → layout (الدرس الحيّ: Layout Parser يرجع فارغاً لمستند نصّي، OCR ينجح). 2. Gemini vision (gsuite) — عند فشل Document AI كلياً. 3. tesseract محلي (مجاني، ara+eng) — آخر ملاذ، صفر تكلفة.الـ Processors (kiloclaw-494123, us, مُنشأة 2026-09-17، ENABLED)
kcpc-layout(48b07be46a0fe728) — LAYOUT_PARSER: بنية (عناوين/جداول/فقرات)kcpc-ocr(2f5df266578f8c08) — OCR: نص خام دقيق (الأمتن)kcpc-form(f295e8f86b2c0245) — FORM_PARSER: حقول/أزواج مفتاح-قيمة + جداولkcpc-invoice(97a90f7ee082bae9) — INVOICE: فواتير مهيكلة
💰 التكلفة (online process، أول 1000 صفحة/شهر مجانية لكل نوع)
- OCR / Layout Parser: $1.50 / 1000 صفحة
- Form Parser: $30 / 1000 صفحة
- Invoice Parser: $0.10 / صفحة (أول 10 مجانية)
- التخزين المحلي (البنية): صفر — processors = config على Google. الـ skill نفسه ≈ 11KB.
- storage GCS: صفر — online process (≤15 صفحة/طلب) بلا bucket/batch.
- توكن LLM: صفر لـ DocAI (خدمة OCR مستقلة). fallback Gemini يستهلك توكن فقط عند فشل DocAI.
🔒 الخصوصية (خط أحمر)
- ❌ لا يرفع مستندات حسّاسة تلقائياً — المستدعي يقرّر.
- Document AI = معالجة على Google (kiloclaw-494123). للمستندات فائقة الحساسية → tesseract محلي (
--processorمع فشل DocAI، أو مباشرة عبر الطبقة 3). - النتيجة تُرجَع نصّاً، لا تُحفَظ محلياً إلا بـ
--saveصريح.
المتطلّبات
- gcloud مربوط (
. env.sh→ PATH + CLOUDSDK_CONFIG). التوكن يُجدَّد تلقائياً عبرgcloud auth print-access-token. - tesseract + pdftoppm (fallback) — موجودان.