Skip to content

[BUG]: 404 Error for nemoretriever-table-structure-v1 API Endpoint #44

@ansh-info

Description

@ansh-info

Version

nemoretriever-table-structure-v1:latest(2025-03-17)

Describe the bug.

What I Tried

I attempted to call the following NVIDIA API endpoint:

POST https://ai.api.nvidia.com/v1/cv/nvidia/nemoretriever-table-structure-v1

With this payload format:

{
  "input": [
    {
      "type": "image_url",
      "url": "data:image/png;base64,<base64_encoded_image>"
    }
  ]
}

And appropriate authorization headers:

Authorization: Bearer <MY_API_KEY>
Accept: application/json

What Happened

I consistently receive a 404 error:

{
  "status": 404,
  "title": "Not Found",
  "detail": "Function '2befd4f2-fe18-4a45-bc49-556bd74646b9': Not found for account 'xvrF-qIqK9kgyWlaCjOgCuw035tJBvpnCiPXj-TavH0'"
}

What I Expected

Since this endpoint is documented ([source: NVIDIA Foundation Model API documentation]), I expected it to process the request and return a table structure extraction result.

Notes

  • My API key is valid (other models like paddleocr, nemoretriever-graphic-elements-v1 work).
  • This suggests the model is not available for my account or project.
  • I couldn't find a public endpoint to list available models (/v1/functions returns 404 as well).

Question

  • Is nemoretriever-table-structure-v1 restricted to specific accounts or under private preview?
  • If so, how can I request access to use this function?
  • Is there an alternative model for table structure detection that is publicly available via the NVIDIA API?

Thanks for your help!

Minimum reproducible example

def detect_table_structure(image_pil, size=(896, 896), quality=85):
    import base64
    from io import BytesIO
    import requests
    import os

    # Resize and convert to JPEG
    img = image_pil.convert("RGB").resize(size)
    buffered = BytesIO()
    img.save(buffered, format="JPEG", quality=quality, optimize=True)
    image_b64 = base64.b64encode(buffered.getvalue()).decode()

    if len(image_b64) > 180_000:
        raise ValueError(f"Image too large: {len(image_b64)} chars")

    headers = {
        "Authorization": f"Bearer {os.getenv('NVIDIA_API_KEY')}",
        "Accept": "application/json"
    }

    payload = {
        "input": [
            {
                "type": "image_url",
                "url": f"data:image/jpeg;base64,{image_b64}"
            }
        ]
    }

    response = requests.post(
        "https://ai.api.nvidia.com/v1/cv/nvidia/nemoretriever-table-structure-v1",
        headers=headers,
        json=payload
    )

    response.raise_for_status()
    return response.json()

table_regions = [r for r in cropped_regions if r["type"] == "table"]
print(f"Found {len(table_regions)} table regions.")

# Try the first one
table_test = table_regions[0]
structure_result = detect_table_structure(table_test["image"], size=(640, 640), quality=70)
print(structure_result)

Relevant log output

{
  "status": 404,
  "title": "Not Found",
  "detail": "Function '2befd4f2-fe18-4a45-bc49-556bd74646b9': Not found for account 'xvrF-qIqK9kgyWlaCjOgCuw035tJBvpnCiPXj-TavH0'"
}

Full env printout

Other/Misc.

No response

Code of Conduct

  • I agree to follow THIS PROJECT's Code of Conduct
  • I have searched the open bugs and have found no duplicates for this bug report

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions