首页  >  文章  >  科技周边  >  OpenDevin出技术报告了,大模型Agent开发者必读

OpenDevin出技术报告了,大模型Agent开发者必读

王林
王林原创
2024-08-05 21:40:011042浏览
Plateforme d'agent universelle grand modèle populaire.

En mars de cette année, « le premier ingénieur logiciel d'IA au monde » Devin a fait exploser le cercle de l'IA. Contrairement aux précédents assistants de programmation IA, Devin n'aide pas seulement à la programmation, mais peut réaliser l'ensemble du projet de développement de manière indépendante et de bout en bout.

OpenDevin出技术报告了,大模型Agent开发者必读

La naissance de Devin nous permet d'apprécier les puissantes capacités des Agents grands modèles. Bientôt, de nombreux projets open source sont apparus dans l'industrie pour tenter de le copier. Parmi eux, OpenDevin s'est démarqué et a reçu le plus d'attention.

OpenDevin est une plate-forme pour développer des agents à usage général qui interagissent avec le monde via des logiciels. Ses fonctionnalités incluent :

  • Mécanisme d'interaction entre les agents de grand modèle, les interfaces et les environnements

  • Opérations sandbox disponibles pour les agents ; Environnement de navigateur Web ;

  • Interface pour créer et exécuter du code ;

  • Support multi-agents ;

  • Actuellement, le GitHub d'OpenDevin a reçu plus de 29 000 étoiles.

Récemment, l'équipe OpenaDevin a publié un rapport technique sur cet outil.

OpenDevin出技术报告了,大模型Agent开发者必读

Adresse du rapport : https://arxiv.org/pdf/2407.16741

OpenDevin出技术报告了,大模型Agent开发者必读Dans le rapport technique, les auteurs d'OpenDevin, des chercheurs de l'Université de l'Illinois à Urbana-Champaign, de l'Université Carnegie Mellon et d'autres institutions ont présenté OpenDevin. en détail, il s'agit d'une plate-forme communautaire visant à développer des agents d'IA généraux et spécialisés qui interagissent avec le monde via des logiciels.

Plus important encore, OpenDevin n'est pas seulement un cadre conceptuel, il comprend également une implémentation complète et prête à l'emploi d'un agent, d'un environnement et d'une évaluation. Au moment de la rédaction de ce rapport, OpenDevin comprend un Agent Center dans lequel plus de 10 agents ont été implémentés, dont un puissant agent général implémenté sur la base de l'architecture CodeAct, avec des fonctionnalités supplémentaires pour la navigation Web et l'édition de code. L'interaction de l'utilisateur avec l'agent s'effectue via une interface de chat, qui visualise les opérations en cours de l'agent et permet un retour d'information en temps réel. De plus, le cadre d'évaluation prend actuellement en charge 15 critères qui peuvent être utilisés pour évaluer les performances des agents.

Architecture OpenDevin

Dans cet article, l'auteur décrit OpenDevin sous les aspects suivants : (1) comment définir et implémenter des agents (2) comment l'exécution d'actions favorise l'observation (3) comment gérer et étendre les agents couramment utilisés ; outils pour les agents Compétences ; (4) Comment combiner plusieurs agents pour résoudre des tâches.

Comment définir et implémenter un agent OpenDevin出技术报告了,大模型Agent开发者必读

Un agent peut détecter l'état de l'environnement et générer des actions à effectuer lors de la résolution de tâches spécifiées par l'utilisateur. Diffusion des statuts et des événements. Dans OpenDevin, l'état est une structure de données qui encapsule toutes les informations pertinentes permettant à un agent d'effectuer des tâches. Un élément clé de cet état est le streaming d’événements, une collection chronologique d’actions et d’observations passées.

Action. Inspiré de CodeAct, OpenDevin connecte les agents à l'environnement via un ensemble d'actions de base. Les actions IPythonRunCellAction et CmdRunAction permettent aux agents d'exécuter du code Python arbitraire et des commandes bash dans un environnement sandbox (par exemple, un système d'exploitation Linux isolé de manière sécurisée). BrowserInteractiveAction permet aux agents d'interagir avec les navigateurs Web.

Observez. Les observations décrivent les changements dans l'environnement observés par l'agent. Cela peut ou non être provoqué par une action de l'agent : il peut s'agir 1) d'une instruction en langage naturel donnée par l'utilisateur, 2) du résultat de l'exécution de l'action précédente de l'agent (par exemple, le résultat de l'exécution de code, etc.).

Mettre en œuvre de nouveaux agents. La conception de l'agent est simple mais puissante, permettant aux utilisateurs de créer et de personnaliser facilement des agents pour diverses tâches. Le cœur réside dans la fonction step, qui prend l'état actuel comme entrée et génère les actions appropriées basées sur la logique de l'agent. La figure 2 montre un exemple de code simplifié pour l'abstraction d'agent.

Observez les résultats de l'exécution des actionsOpenDevin出技术报告了,大模型Agent开发者必读

Agent Runtime fournit aux agents un espace d'action comparable à celui des développeurs de logiciels humains, permettant à OpenDevin de gérer une variété de tâches de développement de logiciels et basées sur le Web, y compris des processus de développement de logiciels complexes. , projets d'analyse de données, tâches de navigation Web, etc. Il permet aux agents d'accéder à un terminal bash pour exécuter du code et des outils de ligne de commande, d'exploiter les notebooks Jupyter pour écrire et exécuter du code à la volée et d'interagir avec un navigateur Web pour effectuer des tâches Web (par exemple, des recherches d'informations).

可扩展的智能体 - 计算机接口

作者构建了一个 AgentSkills 库,这是一个旨在增强智能体功能的工具箱,能够提供基本 bash 命令或 python 代码无法轻松获得的实用程序。

多智能体交互

OpenDevin 允许多个智能体进行交互。为了实现这一目标,作者使用了一种特殊的动作类型 AgentDelegateAction,它允许智能体将特定的子任务委托给另一个智能体。

评估

本节将 OpenDevin (以下实验结果中简写为 OD)与开源可复现的基线方法进行了比较。这 15 个基准涵盖软件工程、网页浏览等任务。

OpenDevin出技术报告了,大模型Agent开发者必读

表 3 表明,虽然 OpenDevin 智能体可能无法在每个类别中都达到最佳性能,但其设计考虑了通用性。

OpenDevin出技术报告了,大模型Agent开发者必读

表 4 报告了智能体在软件工程基准上的结果。

OpenDevin出技术报告了,大模型Agent开发者必读

具体而言:

SWE-bench 旨在评估智能体解决 GitHub 问题的能力,如 bug 报告或功能请求。如表 4 所示,本文最新版本的 CodeActAgent v1.8 ,基于 claude-3.5-sonnet,与其他专门用于软件开发的开源智能体相比,解决问题率高达 26%。

HumanEvalFix。OpenDevin CodeActAgent 成功修复了 Python 拆分中 79.3% 的错误,明显优于所有非智能体方法,几乎是 StarCoder2-15B 性能的两倍。

基于 GPT-4o 的 OpenDevin 智能体在 ML-Bench 上实现了 76.47% 的最高成功率,优于 SWE-Agent(42.64%)。

Gorilla APIBench 考察智能体使用 API 的能力。使用 GPT-4o 的 OpenDevin 的成功率为 36.4%,优于未针对 API 调用进行专门微调的基线。

ToolQA 评估智能体使用外部工具的能力。与所有基线相比,采用 GPT-4o 的 OpenDevin 表现出最高的性能。智能体在与 CSV 和数据库工具使用相关的任务上表现更好,但在数学和计算器工具使用方面需要改进。

表 5 报告了网页浏览基准的评估结果。

OpenDevin出技术报告了,大模型Agent开发者必读

表 6 报告了各种辅助基准的结果。

OpenDevin出技术报告了,大模型Agent开发者必读

其中,GAIA 用于评估智能体解决一般任务的能力,结果显示,智能体在 GAIA 上取得了 32.1 分,比原来的 AutoGPT 有了明显的提高。

GPQA 用于评估智能体在解决具有挑战性的研究生水平问题时协调使用工具的能力。结果如表 6、7 所示,OpenDevin 集成了支持多种工具使用以及 web 搜索的功能,使得智能体能够更好地解决复杂的多步骤问题。

OpenDevin出技术报告了,大模型Agent开发者必读

了解更多结果,请参考原论文。

以上是OpenDevin出技术报告了,大模型Agent开发者必读的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn