Table Question Answering
The Table Question Answering is one of the Natural Language Processing tasks supported by Hugging Face.
Using the huggingface_table_question_answering
filter.
The result will be converted to a JSON string from huggingface_table_question_answering
. You could decompress the JSON string and use the result by itself.
Sample 1 - send the data from variable by set tag:
{% set data = [
{
"repository": "vulcan-sql",
"topic": ["analytics", "data-lake", "data-warehouse", "api-builder"],
"description":"Create and share Data APIs fast! Data API framework for DuckDB, ClickHouse, Snowflake, BigQuery, PostgreSQL"
},
{
"repository": "accio",
"topic": ["data-analytics", "data-lake", "data-warehouse", "bussiness-intelligence"],
"description": "Query Your Data Warehouse Like Exploring One Big View."
},
{
"repository": "hell-word",
"topic": [],
"description": "Sample repository for testing"
}
] %}
-- The source data for "huggingface_table_question_answering" needs to be an array of objects.
SELECT {{ data | huggingface_table_question_answering(query="How many repositories related to data-lake topic?") }}
Sample 1 - Response:
[
{
"result": "{\"answer\":\"COUNT > vulcan-sql, accio\",\"coordinates\":[[0,0],[1,0]],\"cells\":[\"vulcan-sql\",\"accio\"],\"aggregator\":\"COUNT\"}"
}
]
Sample 2 - send the data from req tag:
{% req artists %}
SELECT * FROM artists
{% endreq %}
{% set question = "List display name where gender are female?" %}
SELECT {{ products.value() | huggingface_table_question_answering(query=question, model="microsoft/tapex-base-finetuned-wtq", wait_for_model=true, use_cache=true) }}
Sample 2 - Response:
[
{
"result": "{\"answer\":\"Irene Aronson, Ruth Asawa, Isidora Aschheim, Geneviève Asse, Dana Atchley, Aino Aalto, Berenice Abbott\",\"coordinates\":[[8,1],[16,1],[17,1],[23,1],[25,1],[29,1],[35,1]],\"cells\":[\"Irene Aronson\",\"Ruth Asawa\",\"Isidora Aschheim\",\"Geneviève Asse\",\"Dana Atchley\",\"Aino Aalto\",\"Berenice Abbott\"],\"aggregator\":\"NONE\"}"
}
]
Arguments
Please check Table Question Answering for further information.
Name | Required | Default | Description |
---|---|---|---|
query | Y | The query in plain text that you want to ask the table. | |
endpoint | N | The inference endpoint URL, when using endpoint , it replaces the original default value of model . | |
model | N | google/tapas-base-finetuned-wtq | The model id of a pre-trained model hosted inside a model repo on huggingface.co. See: https://huggingface.co/models?pipeline_tag=table-question-answering |
use_cache | N | true | There is a cache layer on the inference API to speedup requests we have already seen |
wait_for_model | N | false | If the model is not ready, wait for it instead of receiving 503. It limits the number of requests required to get your inference done |
Examples
You can check out this table-question-answering example for further details!