docs
UAEN
Docs/SDK

Rekognita SDK

Rekognita надає офіційні SDK для швидкої інтеграції. Наразі підтримується Python, з планами для Node.js, Go та Java.

Встановлення

Встановіть Python SDK через pip:

pip install rekognita

Або через poetry:

poetry add rekognita

Ініціалізація

Імпортуйте та ініціалізуйте клієнт:

from rekognita import RekognitaClient

client = RekognitaClient(api_key="rk_sk_your_key_here")

# Або використовуйте змінну середовища REKOGNITA_API_KEY
client = RekognitaClient()  # автоматично зчитає з env

Базове використання

Конвертація документа

# Завантажити та конвертувати документ
result = client.documents.convert(
    file="invoice.pdf",
    output_format="markdown",  # або "html", "json", "docx"
)

print(result.content)      # Markdown/HTML контент
print(result.pages)        # Кількість сторінок
print(result.metadata)     # Метадані документа

Витягування структурованих даних

# Витягнути дані за JSON Schema
result = client.documents.extract(
    file="invoice.pdf",
    schema={
        "invoice_number": "string",
        "total_amount": "number",
        "line_items": [{
            "description": "string",
            "quantity": "number",
            "price": "number"
        }]
    }
)

print(result.data)  # {"invoice_number": "INV-2847", ...}

Графова структура

# Отримати графову структуру документа
result = client.documents.parse(
    file="report.pdf",
    output_format="graph",
)

for node in result.nodes:
    print(f"{node.type}: {node.text[:50]}...")
    for child in node.children:
        print(f"  └─ {child.type}: {child.text[:30]}...")

Асинхронний клієнт

from rekognita import AsyncRekognitaClient

async_client = AsyncRekognitaClient()

result = await async_client.documents.convert(
    file="document.pdf",
    output_format="markdown"
)

Обробка помилок

from rekognita.exceptions import (
    RekognitaAuthError,
    RekognitaRateLimitError,
    RekognitaValidationError,
)

try:
    result = client.documents.convert(file="doc.pdf")
except RekognitaAuthError:
    print("Невірний API ключ")
except RekognitaRateLimitError as e:
    print(f"Ліміт запитів. Спробуйте через {e.retry_after}с")
except RekognitaValidationError as e:
    print(f"Помилка валідації: {e.message}")

Далі