Figma logoLayoutLM Document QA

A multimodal model that takes an image of a document or invoice and answers questions about the document in natural language.

Deploy LayoutLM Document QA behind an API endpoint in seconds.

Deploy model

Example usage

This code example shows how to invoke the model using the requests library in Python. The model has two inputs:

  1. url: The URL for the input image

  2. prompt: The input text sent to the model

The output is a list containing a JSON object. Inside the JSON object the key called answer contains the output of the model.

Input
1import requests
2import os
3
4# Replace the empty string with your model id below
5model_id = ""
6baseten_api_key = os.environ["BASETEN_API_KEY"]
7
8data = {
9  "url": "https://templates.invoicehome.com/invoice-template-us-neat-750px.png",
10  "prompt": "What is the invoice number?"
11}
12
13# Call model endpoint
14res = requests.post(
15    f"https://model-{model_id}.api.baseten.co/production/predict",
16    headers={"Authorization": f"Api-Key {baseten_api_key}"},
17    json=data
18)
19
20# Print the output of the model
21print(res.json())
JSON output
1[
2    {
3        "score": 0.34037861227989197,
4        "answer": "us-001",
5        "start": 16,
6        "end": 16
7    }
8]

Deploy any model in just a few commands

Avoid getting tangled in complex deployment processes. Deploy best-in-class open-source models and take advantage of optimized serving for your own models.

$

truss init -- example stable-diffusion-2-1-base ./my-sd-truss

$

cd ./my-sd-truss

$

export BASETEN_API_KEY=MdNmOCXc.YBtEZD0WFOYKso2A6NEQkRqTe

$

truss push

INFO

Serializing Stable Diffusion 2.1 truss.

INFO

Making contact with Baseten πŸ‘‹ πŸ‘½

INFO

πŸš€ Uploading model to Baseten πŸš€

Upload progress: 0% | | 0.00G/2.39G