Change Default Model

By default Rhubarb uses Claude Sonnet 4.6 model. Different Language Models are available via LanguageModels class.

Anthropic Claude Models:

  • LanguageModels.CLAUDE_SONNET_4_6 (default)

  • LanguageModels.CLAUDE_HAIKU_4_5

  • LanguageModels.CLAUDE_OPUS_4_6

Amazon Nova Models:

  • LanguageModels.NOVA_PRO

  • LanguageModels.NOVA_LITE

  • LanguageModels.NOVA_2_LITE

Use Claude Haiku -

  from rhubarb import DocAnalysis, LanguageModels

  da = DocAnalysis(file_path="s3://your-bucket/employee_enrollment.pdf",
                   boto3_session=session,
                   modelId=LanguageModels.CLAUDE_HAIKU_4_5)
  resp = da.run(message="What is the employee's name?")

Or Claude Opus -

  from rhubarb import DocAnalysis, LanguageModels

  da = DocAnalysis(file_path="s3://your-bucket/employee_enrollment.pdf",
                   boto3_session=session,
                   modelId=LanguageModels.CLAUDE_OPUS_4_6)
  resp = da.run(message="What is the employee's name?")

Or Amazon Nova 2 Lite -

  from rhubarb import DocAnalysis, LanguageModels

  da = DocAnalysis(file_path="s3://your-bucket/employee_enrollment.pdf",
                   boto3_session=session,
                   modelId=LanguageModels.NOVA_2_LITE)
  resp = da.run(message="What is the employee's name?")

Or Nova Pro -

  from rhubarb import DocAnalysis, LanguageModels

  da = DocAnalysis(file_path="s3://your-bucket/employee_enrollment.pdf",
                   boto3_session=session,
                   modelId=LanguageModels.NOVA_PRO)
  resp = da.run(message="What is the employee's name?")

Native PDF Support

Claude models support native PDF processing, sending PDFs directly as document blocks instead of converting pages to images. This supports up to 600 pages per request and provides better text extraction alongside visual understanding.

Native PDF support is automatic — when you pass a PDF file with a Claude model, Rhubarb uses the native path. No code changes needed.

Note

Native PDF support is only available for Claude models using the invoke_model API (not Converse API). Nova models and image files (PNG, JPG, TIFF) continue using image-based conversion.