Skip to main content
client.evals.extract now exposes only processing entry points:
  • process(...)
  • process_stream(...) in Python / processStream(...) in Node

Process

from retab import Retab
from retab.types.mime import MIMEData

client = Retab()

result = client.evals.extract.process(
    eval_id="eval_123",
    document=MIMEData(
        filename="invoice.pdf",
        url="data:application/pdf;base64,JVBERi0xLjQKJ...",
    ),
    metadata={"source": "sdk-docs"},
)

print(result.choices[0].message.parsed)

Process Stream

from retab import Retab
from retab.types.mime import MIMEData

client = Retab()

with client.evals.extract.process_stream(
    eval_id="eval_123",
    document=MIMEData(
        filename="invoice.pdf",
        url="data:application/pdf;base64,JVBERi0xLjQKJ...",
    ),
) as stream:
    for chunk in stream:
        print(chunk.choices[0].delta.flat_parsed)