|
--- |
|
license: llama3.1 |
|
datasets: |
|
- RUCKBReasoning/TableLLM-SFT |
|
language: |
|
- en |
|
base_model: |
|
- meta-llama/Llama-3.1-8B-Instruct |
|
tags: |
|
- table |
|
- QA |
|
- Code |
|
--- |
|
|
|
# TableLLM: Enabling Tabular Data Manipulation by LLMs in Real Office Usage Scenarios |
|
|
|
| **[Paper](https://arxiv.org/abs/2403.19318)** | **[Training set](https://huggingface.co/datasets/RUCKBReasoning/TableLLM-SFT)** | **[Github](https://github.com/RUCKBReasoning/TableLLM)** | **[Homepage](https://tablellm.github.io/)** | |
|
|
|
We present **TableLLM**, a powerful large language model designed to handle tabular data manipulation tasks efficiently, whether they are embedded in spreadsheets or documents, meeting the demands of real office scenarios. TableLLM is fine-tuned based on [Llama3.1-8B-Instruct](https://huggingface.co/meta-llama/Llama-3.1-8B-Instruct). |
|
|
|
TableLLM generates either a code solution or a direct text answer to handle tabular data manipulation tasks based on different scenarios. Code generation is used for handling spreadsheet-embedded tabular data, which often involves the insert, delete, update, query, merge, and plot operations of tables. Text generation is used for handling document-embedded tabular data, which often involves the query operation of short tables. |
|
|
|
## Evaluation Results |
|
We evaluate the code solution generation ability of TableLLM on three benchmarks: WikiSQL, Spider and Self-created table operation benchmark. The text answer generation ability is tested on four benchmarks: WikiTableQuestion (WikiTQ), TAT-QA and FeTaQA. The evaluation result is shown below: |
|
|
|
| Model | WikiTQ | TAT-QA | FeTaQA | WikiSQL | Spider | Self-created | Average | |
|
| :------------------- | :----: | :----: | :----: | :-----: | :----: | :----------: | :-----: | |
|
| TaPEX | 38.6 | β | β | 83.9 | 15.0 | / | 45.8 | |
|
| TaPas | 31.6 | β | β | 74.2 | 23.1 | / | 43.0 | |
|
| TableLlama | 24.0 | 22.3 | 20.5 | 43.7 | - | / | 23.4 | |
|
| TableGPT2(7B) | 77.3 | 88.1 | 75.6 | 63.0 | 77.34 | 74.42 | 76.0 |
|
| Llama3.1 (8B) | 71.9 | 74.3 | 83.4 | 40.6 | 18.8 | 43.2 | 55.3 | |
|
| GPT3.5 | 58.5 | 72.1 | 71.2 | 81.7 | 67.4 | 77.1 | 69.8 | |
|
| GPT4o |**91.5**|**91.5**|**94.4**|<ins>84.0</ins>| 69.5 |<ins>77.8</ins>|<ins>84.8</ins>| |
|
| CodeLlama (13B) | 43.4 | 47.3 | 57.2 | 38.3 | 21.9 | 47.6 | 43.6 | |
|
| Deepseek-Coder (33B) | 6.5 | 11.0 | 7.1 | 72.5 | 58.4 | 73.9 | 33.8 | |
|
| StructGPT (GPT3.5) | 52.5 | 27.5 | 11.8 | 67.8 |**84.8**| / | 43.1 | |
|
| Binder (GPT3.5) | 61.6 | 12.8 | 6.9 | 78.6 | 52.6 | / | 36.3 | |
|
| DATER (GPT3.5) | 53.4 | 28.5 | 18.3 | 58.2 | 26.5 | / | 33.0 | |
|
| TableLLM-8B (Ours) |<ins>89.1</ins>|<ins>89.5</ins>|<ins>93.4</ins>|**89.6**|<ins>81.1</ins>|<ins>77.8</ins>|**86.7**| |
|
|
|
## Prompt Template |
|
The prompts we used for generating code solutions and text answers are introduced below. |
|
|
|
### Code Solution |
|
The prompt template for the insert, delete, update, query, and plot operations on a single table. |
|
``` |
|
[INST]Below are the first few lines of a CSV file. You need to write a Python program to solve the provided question. |
|
|
|
Header and first few lines of CSV file: |
|
{csv_data} |
|
|
|
Question: {question}[/INST] |
|
``` |
|
|
|
The prompt template for the merge operation on two tables. |
|
``` |
|
[INST]Below are the first few lines two CSV file. You need to write a Python program to solve the provided question. |
|
|
|
Header and first few lines of CSV file 1: |
|
{csv_data1} |
|
|
|
Header and first few lines of CSV file 2: |
|
{csv_data2} |
|
|
|
Question: {question}[/INST] |
|
``` |
|
|
|
The csv_data field is filled with the first few lines of your provided table file. Below is an example: |
|
``` |
|
Sex,Length,Diameter,Height,Whole weight,Shucked weight,Viscera weight,Shell weight,Rings |
|
M,0.455,0.365,0.095,0.514,0.2245,0.101,0.15,15 |
|
M,0.35,0.265,0.09,0.2255,0.0995,0.0485,0.07,7 |
|
F,0.53,0.42,0.135,0.677,0.2565,0.1415,0.21,9 |
|
M,0.44,0.365,0.125,0.516,0.2155,0.114,0.155,10 |
|
I,0.33,0.255,0.08,0.205,0.0895,0.0395,0.055,7 |
|
``` |
|
|
|
### Text Answer |
|
The prompt template for direct text answer generation on short tables. |
|
```` |
|
[INST]Offer a thorough and accurate solution that directly addresses the Question outlined in the [Question]. |
|
### [Table Text] |
|
{table_descriptions} |
|
|
|
### [Table] |
|
``` |
|
{table_in_csv} |
|
``` |
|
|
|
### [Question] |
|
{question} |
|
|
|
### [Solution][INST/] |
|
```` |
|
|
|
For more details about how to use TableLLM, please refer to our GitHub page: <https://github.com/TableLLM/TableLLM> |