In this paper, we study how to improve the zero-shot reasoning ability of large language models~(LLMs) over structured data in a unified way. Inspired by the study on tool augmentation for LLMs, we develop an \emph{Iterative Reading-then-Reasoning~(IRR)} approach for solving question answering tasks based on structured data, called \textbf{StructGPT}. In our approach, we construct the specialized function to collect relevant evidence from structured data (\ie \emph{reading}), and let LLMs concentrate the reasoning task based on the collected information (\ie \emph{reasoning}). Specially, we propose an \emph{invoking-linearization-generation} procedure to support LLMs in reasoning on the structured data with the help of the external interfaces. By iterating this procedures with provided interfaces, our approach can gradually approach the target answer to a given query. Extensive experiments conducted on three types of structured data demonstrate the effectiveness of our approach, which can significantly boost the performance of ChatGPT and achieve comparable performance against the full-data supervised-tuning baselines. Our codes and data are publicly available at~\url{https://github.com/RUCAIBox/StructGPT}.
翻译:本文研究如何以统一方式提升大语言模型(LLMs)在结构化数据上的零样本推理能力。受LLMs工具增强研究的启发,我们提出基于结构化数据求解问答任务的迭代式“读取-推理”(Iterative Reading-then-Reasoning, IRR)方法,命名为StructGPT。在该方法中,我们构建专用函数以收集结构化数据中的相关证据(即“读取”),并让LLMs基于收集到的信息集中执行推理任务(即“推理”)。具体而言,我们提出“调用-线性化-生成”(invoking-linearization-generation)流程,通过外部接口支持LLMs对结构化数据进行推理。通过利用提供的接口迭代执行该流程,我们的方法可逐步逼近给定查询的目标答案。在三种结构化数据上开展的大量实验表明,本文方法有效,能显著提升ChatGPT的性能,并达到与全数据监督微调基线相当的水平。我们的代码与数据已开源至:https://github.com/RUCAIBox/StructGPT。