{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/trustuqa-a-trustful-framework-for-unified","title":"TrustUQA: A Trustful Framework for Unified Structured Data Question Answering","arxiv_id":"2406.18916","date":"2024-06-27","proceeding":null,"authors":["Wen Zhang","Long Jin","Yushan Zhu","Jiaoyan Chen","Zhiwei Huang","Junjie Wang","Yin Hua","Lei Liang","Huajun Chen"],"abstract":"Natural language question answering (QA) over structured data sources such as tables and knowledge graphs have been widely investigated, especially with Large Language Models (LLMs) in recent years. The main solutions include question to formal query parsing and retrieval-based answer generation. However, current methods of the former often suffer from weak generalization, failing to dealing with multi-types of sources, while the later is limited in trustfulness. In this paper, we propose TrustUQA, a trustful QA framework that can simultaneously support multiple types of structured data in a unified way. To this end, it adopts an LLM-friendly and unified knowledge representation method called Condition Graph(CG), and uses an LLM and demonstration-based two-level method for CG querying. For enhancement, it is also equipped with dynamic demonstration retrieval. We have evaluated TrustUQA with 5 benchmarks covering 3 types of structured data. It outperforms 2 existing unified structured data QA methods. In comparison with the baselines that are specific to one data type, it achieves state-of-the-art on 2 of the datasets. Further more, we have demonstrated the potential of our method for more general QA tasks, QA over mixed structured data and QA across structured data. The code is available at https://github.com/zjukg/TrustUQA.","url_abs":"https://arxiv.org/abs/2406.18916v2","url_pdf":"https://arxiv.org/pdf/2406.18916v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"trustuqa-a-trustful-framework-for-unified","repo_url":"https://github.com/zjukg/trustuqa","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"answer-generation","task_name":"Answer Generation"},{"task_slug":"knowledge-graphs","task_name":"Knowledge Graphs"},{"task_slug":"question-answering","task_name":"Question Answering"},{"task_slug":"retrieval","task_name":"Retrieval"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2406.18916","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2406.18916"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zjukg/trustuqa","reach":{"status":"ok"}}],"summary":{"ran":11},"by_repo_kind":{"official":{"samples":11,"ran":11,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":11,"samples":[{"code_sha256_prefix":"f820898046a810bb","entry":"csv2CG","repo":"zjukg/trustuqa","repo_kind":"official","path":"structllm/format_.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/structllm/format_.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f820898046a810bb"}},{"code_sha256_prefix":"14e8de78650499cd","entry":"evaluate_cron","repo":"zjukg/trustuqa","repo_kind":"official","path":"evaluate/evaluate_for_CronQuestion.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/evaluate/evaluate_for_CronQuestion.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"14e8de78650499cd"}},{"code_sha256_prefix":"cb1e0150a01795bc","entry":"evaluate_example","repo":"zjukg/trustuqa","repo_kind":"official","path":"evaluate/evaluate_for_tableqa.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/evaluate/evaluate_for_tableqa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"cb1e0150a01795bc"}},{"code_sha256_prefix":"4dfe66c4b83fa396","entry":"evaluate_metaqa","repo":"zjukg/trustuqa","repo_kind":"official","path":"evaluate/evaluate_for_metaqa.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/evaluate/evaluate_for_metaqa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4dfe66c4b83fa396"}},{"code_sha256_prefix":"775efd15bc45e62d","entry":"evaluate_tableqa","repo":"zjukg/trustuqa","repo_kind":"official","path":"evaluate/evaluate_for_tableqa.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/evaluate/evaluate_for_tableqa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"775efd15bc45e62d"}},{"code_sha256_prefix":"7b99bc5013204993","entry":"evaluate_wqsp","repo":"zjukg/trustuqa","repo_kind":"official","path":"evaluate/evaluate_for_wqsp.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/evaluate/evaluate_for_wqsp.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7b99bc5013204993"}},{"code_sha256_prefix":"044507ca7c1d518a","entry":"get_selfconsistency_denotation","repo":"zjukg/trustuqa","repo_kind":"official","path":"evaluate/evaluate_for_tableqa.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/evaluate/evaluate_for_tableqa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"044507ca7c1d518a"}},{"code_sha256_prefix":"79151b327111de52","entry":"get_selfconsistency_res","repo":"zjukg/trustuqa","repo_kind":"official","path":"evaluate/evaluate_for_CronQuestion.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/evaluate/evaluate_for_CronQuestion.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"79151b327111de52"}},{"code_sha256_prefix":"8ab90872ff37b4da","entry":"get_selfconsistency_res","repo":"zjukg/trustuqa","repo_kind":"official","path":"evaluate/evaluate_for_metaqa.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/evaluate/evaluate_for_metaqa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8ab90872ff37b4da"}},{"code_sha256_prefix":"34c184b21a3b5bdc","entry":"str_to_real","repo":"zjukg/trustuqa","repo_kind":"official","path":"structllm/format_.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/structllm/format_.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"34c184b21a3b5bdc"}},{"code_sha256_prefix":"0b7ab4baf744d447","entry":"str_to_real_thou","repo":"zjukg/trustuqa","repo_kind":"official","path":"structllm/format_.py","file_url":"https://github.com/zjukg/trustuqa/blob/HEAD/structllm/format_.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0b7ab4baf744d447"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}