{"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/drafterbench-benchmarking-large-language","title":"DrafterBench: Benchmarking Large Language Models for Tasks Automation in Civil Engineering","arxiv_id":"2507.11527","date":"2025-07-15","proceeding":null,"authors":["Yinsheng Li","Zhen Dong","Yi Shao"],"abstract":"Large Language Model (LLM) agents have shown great potential for solving real-world problems and promise to be a solution for tasks automation in industry. However, more benchmarks are needed to systematically evaluate automation agents from an industrial perspective, for example, in Civil Engineering. Therefore, we propose DrafterBench for the comprehensive evaluation of LLM agents in the context of technical drawing revision, a representation task in civil engineering. DrafterBench contains twelve types of tasks summarized from real-world drawing files, with 46 customized functions/tools and 1920 tasks in total. DrafterBench is an open-source benchmark to rigorously test AI agents' proficiency in interpreting intricate and long-context instructions, leveraging prior knowledge, and adapting to dynamic instruction quality via implicit policy awareness. The toolkit comprehensively assesses distinct capabilities in structured data comprehension, function execution, instruction following, and critical reasoning. DrafterBench offers detailed analysis of task accuracy and error statistics, aiming to provide deeper insight into agent capabilities and identify improvement targets for integrating LLMs in engineering applications. Our benchmark is available at https://github.com/Eason-Li-AIS/DrafterBench, with the test set hosted at https://huggingface.co/datasets/Eason666/DrafterBench.","url_abs":"https://arxiv.org/abs/2507.11527v1","url_pdf":"https://arxiv.org/pdf/2507.11527v1.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":"drafterbench-benchmarking-large-language","repo_url":"https://github.com/eason-li-ais/drafterbench","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"benchmarking","task_name":"Benchmarking"},{"task_slug":"instruction-following","task_name":"Instruction Following"},{"task_slug":"large-language-model","task_name":"Large Language Model"}],"methods":[{"method_slug":"set","method_name":"SET"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2507.11527","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2507.11527"}},"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/eason-li-ais/drafterbench","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":7},"by_repo_kind":{"official":{"samples":7,"ran":0,"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":"cad32bc143e30f63","entry":"convert_num","repo":"eason-li-ais/drafterbench","repo_kind":"official","path":"utils/testf/functions.py","file_url":"https://github.com/eason-li-ais/drafterbench/blob/HEAD/utils/testf/functions.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cad32bc143e30f63"}},{"code_sha256_prefix":"2446c8087c52da92","entry":"executable_check","repo":"eason-li-ais/drafterbench","repo_kind":"official","path":"methods/metric.py","file_url":"https://github.com/eason-li-ais/drafterbench/blob/HEAD/methods/metric.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2446c8087c52da92"}},{"code_sha256_prefix":"7715f7e7ba9fc0ec","entry":"ground_check","repo":"eason-li-ais/drafterbench","repo_kind":"official","path":"methods/metric.py","file_url":"https://github.com/eason-li-ais/drafterbench/blob/HEAD/methods/metric.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7715f7e7ba9fc0ec"}},{"code_sha256_prefix":"1b81e0b940d4348d","entry":"openfile","repo":"eason-li-ais/drafterbench","repo_kind":"official","path":"methods/evaluator.py","file_url":"https://github.com/eason-li-ais/drafterbench/blob/HEAD/methods/evaluator.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1b81e0b940d4348d"}},{"code_sha256_prefix":"e04faa22c7a1f1be","entry":"process_code","repo":"eason-li-ais/drafterbench","repo_kind":"official","path":"methods/collect_result.py","file_url":"https://github.com/eason-li-ais/drafterbench/blob/HEAD/methods/collect_result.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e04faa22c7a1f1be"}},{"code_sha256_prefix":"6864ae0498891982","entry":"score_format","repo":"eason-li-ais/drafterbench","repo_kind":"official","path":"methods/evaluate.py","file_url":"https://github.com/eason-li-ais/drafterbench/blob/HEAD/methods/evaluate.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6864ae0498891982"}},{"code_sha256_prefix":"7bb88907ee56ab4d","entry":"validity_check","repo":"eason-li-ais/drafterbench","repo_kind":"official","path":"utils/testf/functions.py","file_url":"https://github.com/eason-li-ais/drafterbench/blob/HEAD/utils/testf/functions.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7bb88907ee56ab4d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}