ToolQA:挑战大语言模型的工具使用能力
在人工智能快速发展的今天,大语言模型(LLMs)的能力不断突破人们的想象。然而,即便是最先进的LLMs,在面对需要实时信息或专业知识的复杂问题时,仍然存在局限性。为了突破这一瓶颈,研究人员提出了一个创新的解决方案:让LLMs学会使用外部工具。而要评估LLMs在这方面的表现,就需要一个专门的数据集。这就是ToolQA项目的由来。
ToolQA:为何而生?
ToolQA是一个开源数据集,专门设计用于评估工具增强型大语言模型的能力。它的核心目标是测试LLMs在使用外部工具回答具有挑战性问题时的表现。这个数据集的独特之处在于:
- 精心筛选的问题:确保LLMs无法仅凭内部知识正确回答。
- 多工具组合:大多数问题需要组合使用多个工具才能解答。
- 难度分级:提供"简单"和"困难"两个级别的数据集。
- 全面诊断:对上下文中工具增强型LLMs进行深入分析。
- 人机协作:通过人类和AI的合作创建,可适应新数据和问题。
数据集的丰富性
ToolQA涵盖了8个不同的领域,每个实例都包含问题、答案、参考语料库和工具。参考语料库可以是文本语料库、表格数据库或图形数据库,为外部知识源提供了多样化的形式。
以下是ToolQA数据集的统计概览:
上下文 | 主题 | 知识格式 | 知识规模 | 简单模板数 | 简单问题数 | 困难模板数 | 困难问题数 |
---|---|---|---|---|---|---|---|
时间 | 航班 | 表格数据库 | 4,078,318 | 10 | 100 | 10 | 100 |
时间 | 咖啡 | 表格数据库 | 5,746 | 8 | 100 | 13 | 130 |
空间 | Yelp | 表格数据库 | 150,346 | 11 | 100 | 10 | 100 |
空间 | Airbnb | 表格数据库 | 102,599 | 10 | 100 | 10 | 100 |
数学 | GSM8K | 专业能力 | - | - | 100 | - | - |
社交 | DBLP | 图 | 553,320 | 10 | 100 | 10 | 100 |
科学 | SciREX | 纯文本语料库 | 438 | 1 | 100 | 4 | 100 |
个人 | 日程 | 纯文本语料库 | 10,000 | 5 | 100 | 5 | 100 |
总计 | - | - | - | 55 | 800 | 62 | 730 |
这种多样性确保了ToolQA能够全面评估LLMs在不同场景下使用工具的能力。
数据获取与使用
ToolQA项目非常注重开放性和可用性。研究者可以通过官方链接下载外部语料库数据。此外,项目还提供了原始数据的下载指南,包括航班、咖啡、Yelp、Airbnb等多个领域的数据集。
对于那些希望生成新问题的研究者,ToolQA提供了数据生成代码。这些代码位于/dataset_generation/
目录下,只需修改路径即可使用。这种灵活性使得ToolQA不仅可以用于评估,还可以用于模型调优和新的评估集创建。
工具实现:多样化的挑战
ToolQA不仅提供了数据集,还实现了一系列工具,如检索器、SQL解释器和数学计算器。这些工具的实现代码可在./benchmark/ReAct/code/tools
目录下找到。值得注意的是,ToolQA的问题设计是开放式的,这反映了项目团队的理念:这些问题本身就具有足够的挑战性,他们不希望限制论文中建议的工具。
研究者被鼓励实验更先进的工具(如更优秀的检索器)来提高性能,或设计更有效的规划模块以更好地组合使用已定义的工具。这种开放态度为创新提供了广阔的空间。
检索器:知识的桥梁
ToolQA使用Langchain包和Chroma向量数据库实现了检索器。预处理后的Chroma向量库可通过官方链接下载。这个检索器扮演着连接LLMs和外部知识的关键角色。
SQL解释器:数据查询的利器
对于需要处理结构化数据的问题,ToolQA提供了SQL解释器。用户需要先将数据库加载到MySQL中,可以通过运行以下命令创建数据库:
python ./benchmark/ReAct/code/tools/table/mysql_db_create.py
这个过程可能需要几个小时,但为后续的数据查询和分析奠定了基础。
数学计算器:精确计算的保障
ToolQA还集成了Wolframalpha的计算功能。使用这个计算器需要在Wolframalpha开发者门户注册一个账号。这个强大的计算工具可以处理各种复杂的数学问题,为LLMs提供精确的计算支持。
项目进展与未来展望
ToolQA项目目前正处于最后的数据清理和代码整理阶段,预计很快就会全面开放。项目团队列出了详细的待办事项,包括:
- 发布所有简单和困难问题
- 完成工具实现
- 发布所有基准代码
- 更新基准代码
这些进展表明,ToolQA正在稳步向其目标迈进,即为研究社区提供一个全面、可靠的工具增强型LLMs评估平台。
结语:开启AI工具使用能力的新纪元
ToolQA的出现,标志着AI研究进入了一个新的阶段。它不仅仅是一个数据集,更是一个推动LLMs向更高层次发展的催化剂。通过ToolQA,研究者可以:
- 全面评估LLMs使用外部工具的能力
- 探索LLMs在复杂问题解决中的潜力
- 开发更智能、更实用的AI系统
随着ToolQA的不断完善和应用,我们有理由相信,未来的AI系统将更加智能、灵活,能够更好地解决现实世界中的复杂问题。这不仅推动了AI技术的进步,也为人类社会带来了无限可能。
如果您对ToolQA项目感兴趣,欢迎访问GitHub仓库了解更多详情,或通过yczhuang at gatech.edu
与项目团队联系。让我们共同期待ToolQA带来的AI革新,迎接智能工具时代的到来! 🚀🔧🤖
参考文献
如果您在研究中使用了ToolQA,请引用以下论文:
@misc{zhuang2023toolqa,
title={ToolQA: A Dataset for LLM Question Answering with External Tools},
author={Yuchen Zhuang and Yue Yu and Kuan Wang and Haotian Sun and Chao Zhang},
year={2023},
eprint={2306.13304},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
让我们一起推动AI技术的边界,探索更广阔的可能性!