{"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/dual-reader-parser-on-hybrid-textual-and","title":"Dual Reader-Parser on Hybrid Textual and Tabular Evidence for Open Domain Question Answering","arxiv_id":"2108.02866","date":"2021-08-05","proceeding":"ACL 2021 5","authors":["Alexander Hanbo Li","Patrick Ng","Peng Xu","Henghui Zhu","Zhiguo Wang","Bing Xiang"],"abstract":"The current state-of-the-art generative models for open-domain question answering (ODQA) have focused on generating direct answers from unstructured textual information. However, a large amount of world's knowledge is stored in structured databases, and need to be accessed using query languages such as SQL. Furthermore, query languages can answer questions that require complex reasoning, as well as offering full explainability. In this paper, we propose a hybrid framework that takes both textual and tabular evidence as input and generates either direct answers or SQL queries depending on which form could better answer the question. The generated SQL queries can then be executed on the associated databases to obtain the final answers. To the best of our knowledge, this is the first paper that applies Text2SQL to ODQA tasks. Empirically, we demonstrate that on several ODQA datasets, the hybrid methods consistently outperforms the baseline models that only take homogeneous input by a large margin. Specifically we achieve state-of-the-art performance on OpenSQuAD dataset using a T5-base model. In a detailed analysis, we demonstrate that the being able to generate structural SQL queries can always bring gains, especially for those questions that requires complex reasoning.","url_abs":"https://arxiv.org/abs/2108.02866v2","url_pdf":"https://arxiv.org/pdf/2108.02866v2.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":"dual-reader-parser-on-hybrid-textual-and","repo_url":"https://github.com/awslabs/durepa-hybrid-qa","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"open-domain-question-answering","task_name":"Open-Domain Question Answering"},{"task_slug":"question-answering","task_name":"Question Answering"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2108.02866","atlas_url":"https://app.syntology.ai/?focus=2108.02866","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2108.02866"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/awslabs/durepa-hybrid-qa","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":1,"unverified":6},"by_repo_kind":{"official":{"samples":7,"ran":1,"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":0,"samples":[{"code_sha256_prefix":"eeb8dc60c6ef1fa4","entry":"trim_batch","repo":"awslabs/durepa-hybrid-qa","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/awslabs/durepa-hybrid-qa/blob/HEAD/src/utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"eeb8dc60c6ef1fa4"}},{"code_sha256_prefix":"d740ff30dac46329","entry":"convert_examples_to_features","repo":"awslabs/durepa-hybrid-qa","repo_kind":"official","path":"src/utils_data.py","file_url":"https://github.com/awslabs/durepa-hybrid-qa/blob/HEAD/src/utils_data.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d740ff30dac46329"}},{"code_sha256_prefix":"9873b974777295b8","entry":"convert_examples_to_features","repo":"awslabs/durepa-hybrid-qa","repo_kind":"official","path":"src/utils_fusion_in_decoder.py","file_url":"https://github.com/awslabs/durepa-hybrid-qa/blob/HEAD/src/utils_fusion_in_decoder.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9873b974777295b8"}},{"code_sha256_prefix":"8a50439c11aef377","entry":"convert_examples_to_features","repo":"awslabs/durepa-hybrid-qa","repo_kind":"official","path":"utils_ranking.py","file_url":"https://github.com/awslabs/durepa-hybrid-qa/blob/HEAD/utils_ranking.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8a50439c11aef377"}},{"code_sha256_prefix":"9018ea848be77cce","entry":"convert_examples_to_features_inference","repo":"awslabs/durepa-hybrid-qa","repo_kind":"official","path":"utils_ranking.py","file_url":"https://github.com/awslabs/durepa-hybrid-qa/blob/HEAD/utils_ranking.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9018ea848be77cce"}},{"code_sha256_prefix":"f34974647bd20936","entry":"encode_file","repo":"awslabs/durepa-hybrid-qa","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/awslabs/durepa-hybrid-qa/blob/HEAD/src/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f34974647bd20936"}},{"code_sha256_prefix":"e8f0c6a01a6823df","entry":"lmap","repo":"awslabs/durepa-hybrid-qa","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/awslabs/durepa-hybrid-qa/blob/HEAD/src/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e8f0c6a01a6823df"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}