当前位置: 首页 > news >正文

开封网站建设培训班网站建设的竞争力

开封网站建设培训班,网站建设的竞争力,快速做网站公司,形象类网站论文地址#xff1a;https://arxiv.org/abs/2402.18679 Github#xff1a;MetaGPT: The Multi-Agent Framework 数据解释器#xff08;Data Interpreter#xff09;是一个基于大型语言模型#xff08;LLM#xff09;的代理#xff0c;专门为解决数据科学问题而设计。它…论文地址https://arxiv.org/abs/2402.18679 GithubMetaGPT: The Multi-Agent Framework 数据解释器Data Interpreter是一个基于大型语言模型LLM的代理专门为解决数据科学问题而设计。它通过代码来解决数据科学中的挑战特别是在需要实时数据调整、复杂任务间依赖关系的优化以及识别逻辑错误的精确推理方面表现出色。数据解释器采用了三种关键技术来增强数据科学问题解决能力 1. 动态规划与层次图结构利用层次图结构来实时适应数据变化动态规划方法使得数据解释器能够适应任务变化特别是在监控数据变化和管理数据科学问题中固有的复杂变量依赖关系方面表现出高效性。2. 工具集成与动态增强在执行过程中动态集成各种人类编写的代码片段创建特定任务的自定义工具超越了仅依赖API的现有能力。这一过程涉及自动组合多种工具与自生成的代码利用任务级执行来独立构建和扩展其工具库简化工具使用并根据需要进行代码重构。3. 逻辑不一致性识别与经验记录提升效率基于执行结果获得的置信分数检测代码解决方案与测试代码执行之间的不一致性并通过比较多次尝试来减少逻辑错误。在整个执行和推理过程中记录任务级经验主要包括元数据和运行轨迹包括成功和失败的经验。 数据解释器在各种数据科学和现实世界任务上进行了评估与开源基线相比显示出优越的性能在机器学习任务中表现显著提升从0.86提高到0.95。此外它在MATH数据集上显示出26%的增长在开放式任务中更是显著提升了112%。该解决方案将在GitHub上发布地址为https://github.com/geekan/MetaGPT。 摘要Abstract 基于大型语言模型LLM的代理在多个领域展现出了显著的有效性。然而它们在需要实时数据调整、由于各种任务间复杂依赖性所需的优化专业知识以及识别逻辑错误以进行精确推理的数据科学场景中的性能可能会受到影响。 在本研究中我们介绍了数据解释器Data Interpreter这是一个旨在通过代码解决数据科学问题的解决方案强调了三种关键技术来增强问题解决能力 1动态规划与层次图结构用于实时数据适应性2动态集成工具以增强执行期间的代码熟练度丰富所需的专业知识3在反馈中识别逻辑不一致性并通过经验记录提高效率。 我们在各种数据科学和现实世界任务上评估了数据解释器。与开源基线相比它展示了卓越的性能在机器学习任务中表现出显著的改进从0.86提高到0.95。此外它在MATH数据集上显示出26%的增长在开放式任务中更是显著提升了112%。解决方案将在Github上发布。 引言Introduction 大型语言模型LLMs使代理在广泛的应用中表现出色展示了它们的适应性和有效性。这些由LLM驱动的代理显著影响了软件工程、导航复杂开放世界场景、促进多模态任务的协作多代理结构、提高虚拟助手的响应性、优化群体智能并为科学研究做出贡献。 最近的研究集中在通过改进它们的推理过程来提高这些代理的问题解决能力旨在提高复杂性和效率。然而包括机器学习、数据分析和数学问题解决在内的数据为中心的科学问题提出了一些独特的挑战这些挑战仍有待解决。机器学习过程涉及复杂的、漫长的任务处理步骤其特点是多个任务之间的复杂依赖关系。这需要专家介入进行过程优化和在失败或数据更新的情况下进行动态调整。对于LLM来说一次性提供正确的解决方案往往是具有挑战性的。 在当前的数据科学领域有一种方法是通过编写代码来解决以数据为核心的问题这种方法被称为解释器范式。它结合了对需求的静态分析和代码的实际执行。尽管这种方法有其优势但在实际的数据科学应用中它也暴露出了一些重要的挑战 1数据依赖强度数据科学固有的复杂性源于各个步骤之间的复杂相互作用这些步骤可能会实时变化。为了获得准确的结果在开发任何机器学习模型之前数据清洗和全面的特工程是前提条件。因此监控数据变化并动态调整转换后的数据和变量至关重要。机器学习建模过程包括特征选择、模型训练和评估涉及广泛的处理操作符和搜索空间。挑战在于同时生成和解决整个过程代码。 2精细的领域知识数据科学家的专业知识和编码实践在解决数据相关挑战中至关重要。通常嵌入在专有代码和数据中这些知识对当前的LLM来说往往是不可访问的。例如为特定领域如能源或地质学生成数据转换代码可能对没有所需领域专业知识的LLM构成挑战。现有的方法主要依赖于LLM这种依赖可能会简化流程但可能会牺牲性能。 3严格的逻辑要求解释器通过代码执行和错误捕获能力来增强问题解决性能。然而它们往往忽略了无错误的执行错误地将其视为正确的。虽然基本编程任务可以通过即时执行反馈来简化并且当要求明确界定时依赖于即时执行反馈但数据科学问题往往提出了模糊、不规则和定义不明确的要求这使得LLM难以理解。因此LLM生成的代码解决方案可能包含需要严格验证逻辑正确性的模糊性这超出了单纯的执行反馈。 相关工作Related Work 作为数据科学家代理的LLM尖端的大型语言模型LLMs在多样化的自然和编程数据上进行预训练展现出强大的解释能力。例如利用程序解释器来解耦复杂的计算提升了它们在MATH数据集上的性能使得具身代理具备基于代码的推理能力。在代码解释能力的基础上研究人员正在探索如何利用LLM来解决数据科学挑战并将LLM与专门的机器学习管道集成。例如自主地从数据和任务描述中开发或增强机器学习模型。此外将LLM与系统评估配对通过演化可执行程序来发现解决开放问题的方法。然而这一领域缺乏专门设计的数据集和评估方法以评估基于LLM的方法的能力。我们在机器学习问题解决上对我们的工作和各种开源框架进行了基准测试以提供对这一研究领域的更多洞察和理解。 规划规划能力是LLM代理的关键能力。规划能力强调为特定问题生成逻辑结构化的行动或思维路线图。对于LLM代理的规划能力早期工作如CoT和ReAct专注于复杂任务的分解并为子任务执行顺序规划。由于任务的复杂性LLM代理生成的单一计划有时是不可行的。因此一些工作如ToT和GoT旨在生成多个计划并选择一个计划执行。尽管这些以前的规划方法展示了令人印象深刻的性能但它们在解决具有强烈任务依赖性的多步骤问题方面存在困难这在数据科学任务中是常见的。作为替代我们利用动态层次规划来增强能力允许将复杂问题分解为任务和行动图这在数据科学场景中很常见。 工具近期的研究集中在通过创建和集成外部工具来提高LLM的能力提出了多个代理来解决多模态任务提出了一个基于LLM决策的自动工具选择机制而不是为特定任务静态分配特定工具。在自我创造工具的领域将LLM的角色从工具用户转变为创造者实现了工具创造的自给自足。结合工具的创造和使用来解决问题。在本文中我们扩展了工具使用的种类和范围。我们不仅实现了他们未来工作中提出的两种工具类型即“现有工具的升级”和“多个工具的组合”还提高了工具生成效率和实用性。我们通过利用执行经验而不是依赖于少数几个提示来实现这一点。此外本研究支持创建各种私有工具库并允许LLM根据需要独立选择和组合多个工具。 推理推理能力强调理解和处理信息以做出决策这是LLM代理的另一个关键优势。对于推理能力以前的工作如Reflexion、Self-Refine、CRITIC专注于鼓励LLM代理反思失败并完善推理过程。此外利用代码提高LLM解决数学、符号和算法推理问题的准确性的开创性工作。通过使用程序解释器解决数值推理任务将复杂计算与语言理解和推理解耦。利用迭代提示机制根据来自环境的反馈和自我验证增强了Minecraft中代理作为行动使用的程序。与主要关注一般语言反馈或执行反馈的以前方法不同我们的工作解决了数据科学问题所提出的独特挑战这些挑战需要高级逻辑推理。具体来说我们提出了新颖的基于自动化置信度的验证机制来提高推理能力。 图2数据解释器整体设计。该模型包含三个阶段动态计划图和管理其中为数据中心的任务生成计划并在执行过程中管理每个步骤的状态工具利用和演化涉及选择或创建合适的工具解决问题并不断演化这些工具以及基于自动信心度的验证该阶段检查并对逻辑上合理的解决方案进行投票。 方法论Methodology 方法论概述 数据解释器采用了一个“计划-代码-审查”范式将动态规划与层次结构相结合以实时监控和调整目标。解释器使用代码来完成每个任务根据计划分解任务并通过LLM生成相应的代码。执行器执行代码产生可追踪的运行结果并且每个任务都经过验证过程以确保其可靠性。执行任务的过程被描述和分析为经验这些经验可以在未来类似任务中被检索和使用。 动态规划与层次结构Dynamic Planning with Hierarchical Structure 数据科学项目包含广泛的细节和长期的流程这使得直接规划所有详细任务和编码变得复杂。通过层次结构组织数据科学流程将复杂的数据科学问题分解为可管理的任务并将每个任务进一步细分为通过代码执行的具体行动。介绍了动态计划管理以确保在执行过程中高效地执行任务并促进计划的修改。自我调试和人工编辑两种策略被设计出来以增强解释器的自主完整性和正确性。 工具利用与生成Tool Utilization and Generation 为了解决过于复杂而无法从头开始编码的任务利用现有工具包或集成现有代码片段变得至关重要。提出了一个双管齐下的方法一方面推荐或生成最适合的工具另一方面有效地组织这些工具。通过LLM对工具进行分类并根据任务描述和类型选择最合适的工具。工具的使用遵循任务图中描述的原则和程序工具的使用本身被视为图中的一个任务。 增强推理的验证与经验Enhancing Reasoning with Verification and Experience 设计的任务图、动态计划管理和工具利用可以提高任务规划和工具掌握。即使代码没有错误地运行也可能包含逻辑缺陷因此引入了自动化基于置信度的验证ACV来提高结果的正确性和效率。通过ACV解释器在执行代码时生成验证代码以确保输出结果符合任务要求。经验驱动的推理利用外部存储库称为“经验池”来归档每个任务的关键元素包括任务描述、最终版本的代码和最终答案。 基于分层图结构的动态计划 这种方法借鉴了自动化机器学习中的层次规划技术通过层次结构将复杂的数据科学问题分解为易于管理的小任务并进一步将这些任务转化为具体的代码执行动作从而实现细致的规划与执行。 分层结构 (a) 一个有组织的任务和动作图展示了高层级机器学习项目的工作流程包括实现项目目标所需的任务依赖和动作序列。 (b) 任务的有向无环图DAG以机器操作状态预测问题为例。任务图展示了拆解的计划任务而动作图也称为执行图则根据计划的任务图执行各个节点。每个节点的执行代码由LLM转换。 这种动态规划方法赋予了Data Interpreter在任务变化时的适应性而有向无环图Directed acyclic graph结构则在监控和处理数据科学问题中的任务依赖关系方面展现出了高效性。 通过这种方式Data Interpreter能够有效地管理和优化数据科学任务的执行流程提高了问题解决的准确性。 数据解释器的动态计划管理 (a) 通过人工编辑进行计划细化。左侧图像显示了在图上经过人工编辑的任务右侧图像则展示了细化后的计划包括更新后的任务3.1’、3.2’以及新增的任务3.3。 (b) 对失败任务的计划进行细化。在任务执行后如果任务3.3失败细化后的计划将整合已有的成功任务用更新后的任务3.3’替换原任务3.3并引入新任务4.1、4.2、4.3和5。 工具集成与进化 在数据科学任务中任务的多样性与专业性要求基于LLM框架具备广泛的工具调用能力。现有的工具调用方式往往局限于API的形式无法满足任务多样性带来的动态需求。 Data Interpreter 提出了工具集成与生成的方法。通过工具推荐与组织能够根据任务描述进行任务分类从而有效选择合适的工具集。 在执行阶段Data Interpreter根据工具参数描述、工具方法描述文档的结构化信息动态嵌入和调整工具参数以适应任务的具体需求。 此外Data Interpreter还能够通过自我进化从执行经验中抽象出工具的核心功能形成通用的代码片段集成到工具函数库之中。这些工具函数可以在未来的任务中重复使用从而减少了调试频率提高了执行效率。 下图是数据解释器中的工具使用流程工具推荐最初根据任务分类来选择工具然后根据任务需求组合多个工具使用 基于验证与经验驱动的推理 解决数据科学问题需要严谨的数据与逻辑验证过程现有的研究在解决这一类问题的过程中往往依赖于代码执行后的错误检测或异常捕获这一方式往往会误解代码执行正确即任务完成无法发现逻辑错误难以提升任务实现的有效性。 Data Interpreter 通过结合基于置信度的自动验证Automated Confidece-based Verification策略显著提升了其在数据科学问题解决中的推理能力。 ACV策略要求Data Interpreter在执行代码后生成验证代码并执行验证根据执行验证结果校验任务和实现代码的一致性类似于白盒测试流程。 在需要更严谨数值反馈的场景中如使用LLM进行数学推理Data Interpreter可以增加多次独立验证并通过多次结果的置信度排序来进一步提升效果。 另一方面Data Interpreter利用经验池存储和反思任务执行过程中的经验能够从过去的成功和失败中学习代码知识从而在面对新任务时做出更准确的决策。这种结合实时验证和经验学习的方法显著增强了解释器的推理能力提升了任务的解决质量。 下图以MATH内的一个任务说明基于置信度自动验证流程虚线框内是自动验证的过程虚线框下方根据验证对多个候选答案进行排序 实验Experiments 实验设置 1. 数据集Datasets MATH数据集包含12,500个问题其中5,000个用于测试涵盖不同的学科和难度级别。作者评估了四个典型的问题类型C.Prob, N.Theory, Prealg, Precalc并排除了测试集中难度级别为5的几何问题。ML-Benchmark由于缺乏评估机器学习领域能力的专用数据集和评估指标作者开发了一个名为ML-Benchmark的基准数据集和相应的评估方法。该数据集包括八个代表性的机器学习任务分为三个难度级别每个任务都附有数据、简洁的描述、标准用户需求、建议的步骤和评估指标。开放式任务基准为了评估框架对现实世界任务的泛化能力作者开发了包含20个任务的开放式任务基准。每个任务要求框架理解用户需求、分解复杂任务并执行代码。这些任务覆盖了常见的需求如光学字符识别OCR、网络搜索与爬取WSC、自动回复电子邮件ER、网页模仿WPI、文本到图像转换T2I、图像到HTML代码生成I2C、图像背景移除IBR和迷你游戏生成MGG。 2. 评估指标Evaluation Metrics 在MATH基准测试中准确性作为评估指标手动审查所有方法生成的输出以确定准确响应的数量。对于ML-Benchmark使用了三个评估指标完成率CR、归一化性能得分NPS和综合得分CS。这些指标提供了模型性能的全面洞察。对于开放式任务由于缺乏统一的性能标准默认NPS0直接将CS等同于CR。 3. 基线和实施细节Baselines and Implementation Details 在所有框架中使用了GPT-4-Turbogpt-4-1106-preview以确保公正的性能评估。在MATH数据集上使用了MathChat和AutoGen作为基线模型并设置了ACV的N3。在ML-Benchmark中选择了四个典型的开源LLM代理框架作为基线XAgent、AutoGen、OpenInterpreter和TaskWeaver。在开放式任务基准中使用了AutoGen和OpenInterpreter作为基线模型。 4. 消融实验 为了进一步探讨相关方法的有效性研究人员还进行了消融实验。为评估各模块性能研究人员在ML-Benchmark上使用了三种配置进行测试: 初始设置基础ReAct框架包含简单的任务理解提示词以及支持代码执行流程增加了基于分层图结构的动态计划包括分层规划和每一步骤的动态管理便于实时调整在“2”的基础上增加了工具集成能力。 主要结果Main Results 数学问题解决性能数据解释器在所有测试类别中取得了最佳结果特别是在最困难的Precalc类别中与AutoGen相比准确率提高了0.16。机器学习性能数据解释器在七个任务中的综合得分为0.95比AutoGen的平均得分0.86提高了10.3%。在Titanic、House Prices、SCTP和ICR等数据集上数据解释器是唯一一个综合得分超过0.9的框架。开放式任务性能数据解释器的完成率为0.97比AutoGen提高了112%。 消融研究Ablation Study 核心模块的消融通过在ML-Benchmark上进行消融实验评估了不同模块的性能。动态规划和工具利用显著提高了性能。LLM backbones的消融在机器学习任务中较大的LLM backbones如Qwen-72B-Chat和Mixtral-8x7B与GPT-3.5-Turbo的性能相当而较小的LLM则性能下降。经验学习的消融通过在不同大小的经验池上进行实验评估了经验学习对任务效率的影响。增加经验池的大小显著减少了每个任务的调试尝试次数和成本。 这些实验结果证明了数据解释器在处理复杂的数据科学任务方面的有效性和优越性特别是在需要动态调整和高级逻辑推理的场景中。通过这些实验数据解释器不仅在标准化测试中表现出色而且在现实世界的开放式任务中也展现了强大的适应性和问题解决能力。 结论Conclusion 尽管当前基于大型语言模型LLM的代理在处理静态和简单任务方面已经显示出有效性但当面临复杂的多步骤挑战时尤其是在机器学习等任务中它们的性能会下降。我们的分析揭示了各种任务之间复杂的依赖关系带来了关键挑战通常涉及任务分解其中单个任务的失败会中断整个流程。此外这些任务的动态性质引入了特定问题的变异性要求对编码工具有细微的理解超越了当前以API为中心的能力。现有的主要针对静态任务的方法往往忽略了这些在复杂数据科学场景中常见的挑战。此外基于LLM的代理可以通过代码执行反馈来增强它们的问题解决能力。然而当解释错误反馈以评估任务完成时它们的能力受到限制。在数据科学场景中基于LLM的代理必须区分逻辑错误和无错误反馈从而验证其代码解决方案的可靠性并提供更准确的结果。 为了解决这些挑战我们引入了数据解释器这是一种通过动态规划与层次图、工具集成与演化以及自动化基于置信度的验证来解决数据科学问题的解决方案。我们的数据解释器被精心设计以增强在管理复杂数据科学任务时的可靠性、自动化和推理能力。通过广泛的评估我们的数据解释器在机器学习任务、数学问题和现实世界任务性能方面超越了各种开源框架这标志着基于LLM的代理在数据科学领域能力的重大进步。 附录Appendix 1. 计划示例Plan Example 展示了一个机器学习任务的典型计划结构包括任务ID、依赖任务ID、指令和代码等组成部分。每个任务都详细描述了其目的例如进行数据探索、特征工程、模型开发和评估等。 2. 工具详情Tools Details 列出了数据解释器使用的工具包括工具名称、类型、功能和应用领域。工具被分为不同的类别如机器学习、多模态和通用工具。 3. 工具模式示例An Example of Tool Schema 描述了用于特征工程的工具的JSON模式包括类的类型、描述、方法和参数。工具模式帮助LLM理解工具的功能和使用场景。 4. 工具使用提示Tool Usage Prompts 提供了用于开放式任务和机器学习任务的工具使用提示包括零次提示和一次提示。这些提示指导LLM如何在代码中有效地利用预定义的工具。 5. 额外结果Additional Results 展示了ML-Benchmark数据集上的完成率和归一化性能得分的额外结果。提供了ML-Benchmark上的消融实验结果包括完成率、归一化性能得分和综合得分。 6. ML-Benchmark数据集描述ML-Benchmark Dataset Description 详细介绍了ML-Benchmark数据集包括数据集名称、用户需求、数据集类型、任务类型、难度和使用的评估指标。包括了从Kaggle收集的典型数据集以及它们在机器学习任务中的应用。 7. 开放式任务详情Open-Ended Task Details 描述了几个典型的开放式任务包括发票OCR、网络搜索与爬取、电子邮件回复和网页模仿等。为每个任务提供了场景描述、用户需求、数据处理流程要求和性能要求。 8. 开放式任务结果Results of Open-Ended Tasks 展示了数据解释器在多个开放式任务上的结果包括图像背景移除、文本到图像转换和网络搜索与爬取等。提供了任务的可视化结果展示了数据解释器在数据分析和可视化方面的能力。 这些附录内容为读者提供了数据解释器的实施细节、使用的工具和方法、以及实验结果的深入分析有助于更好地理解数据解释器的工作方式和评估方法。
http://www.zqtcl.cn/news/775336/

相关文章:

  • 做外贸上什么网站什么什么设计英文网站
  • 嘿客免费网站建设网站对联图片
  • 一件代发48个货源网站韶关最新消息
  • 网站都需要备案吗安徽建设通网站
  • 外包公司 网站建设 深圳电子商务公司设计网站建设
  • 怎么添加网站背景音乐定制建站
  • 西安网站建设和推广公司php企业网站开发实训报告
  • 市网站制作番禺绿叶居
  • 网站漂浮物怎么做电子商务网站开发实训体会
  • 电商网站建设定制济南网站建设及推广
  • 网站标签化wordpress 输出评论内容 函数
  • 明星个人网站设计汕头网络推广公司
  • 深圳有哪些做网站公司好武夷山建设局网站
  • 怎么设立网站赚广告费一个网站可以做多少关键字
  • 网站刚建好怎么做能让百度收录成都定制网站建
  • thinkphp网站开发技术做电脑租赁网站
  • 网站设计评语中午版wordpress
  • 邢台企业手机网站建设汕头网站制作后缀
  • 微网站后台内容设置做网站语言排名2018
  • 嘉兴网站制作网站建设外贸营销推广平台有哪些
  • 网站开发集广州高端网站定制开发价格
  • 网站开发培训成都网站建设 报价单 doc
  • 苏州哪里有做淘宝网站的WordPress模板博客主题
  • 网站做中转做任务 网站
  • 深圳住房建设局网站网站的建设教程
  • 6免费建站的网站在线建筑设计
  • 哪些网站做任务可以赚钱的建设厅网站如何查询企业信息
  • 深圳网站设计+建设首选深圳市服装网站建设需求分析报告
  • 肥城网站制作浙江省建设厅信息港官网
  • 手机网站建设进度南宁企业网站设计