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

【AI Agent系列】【MetaGPT多智能体学习】0. 环境准备 - 升级MetaGPT 0.7.2版本及遇到的坑

之前跟着《MetaGPT智能体开发入门课程》学了一些MetaGPT的知识和实践,主要关注在MetaGPT入门和单智能体部分(系列文章附在文末,感兴趣的可以看下)。现在新的教程来了,新教程主要关注多智能体部分。

本系列文章跟随《MetaGPT多智能体课程》(https://github.com/datawhalechina/hugging-multi-agent),深入理解并实践多智能体系统的开发。

本文为该课程的前期准备 - 环境搭建。

文章目录

  • 0. 环境准备中遇到的坑
    • 0.1 环境升级
    • 0.2 坑一:1 validation error for Config
    • 0.3 坑二:No module named 'pwd'
    • 0.4 运行成功
  • 附:之前MetaGPT单智能体课程的系列笔记

0. 环境准备中遇到的坑

0.1 环境升级

距离上次单智能体的入门课程已经过了一个多月了,这一个月间,MetaGPT也在快速迭代,0.5版本到0.6版本再到0.7版本。要用就用最新的… 所以我升级了0.7版本。并且从源码安装:

git clone https://github.com/geekan/MetaGPT.git
cd /your/path/to/MetaGPT
pip install -e .

更具体和更多的安装方式可参考官方教程。

升级的过程很顺利,然后运行示例程序检验环境是否能用。先不要管这个程序是干嘛的,直接拷贝到一个python文件中,点运行。

import asynciofrom metagpt.actions import Action
from metagpt.environment import Environment
from metagpt.roles import Role
from metagpt.team import Teamaction1 = Action(name="AlexSay", instruction="Express your opinion with emotion and don't repeat it")
action2 = Action(name="BobSay", instruction="Express your opinion with emotion and don't repeat it")
alex = Role(name="Alex", profile="Democratic candidate", goal="Win the election", actions=[action1], watch=[action2])
bob = Role(name="Bob", profile="Republican candidate", goal="Win the election", actions=[action2], watch=[action1])
env = Environment(desc="US election live broadcast")
team = Team(investment=10.0, env=env, roles=[alex, bob])asyncio.run(team.run(idea="Topic: climate change. Under 80 words per message.", send_to="Alex", n_round=5))

0.2 坑一:1 validation error for Config

在这里插入图片描述
这是因为没有设置API key导致的。找到 MetaGPT/config/config2.yaml文件,修改里面的参数,把你的key,model等填进去:

在这里插入图片描述

0.3 坑二:No module named ‘pwd’

在这里插入图片描述
这是因为Windows环境下没有pwd命令。因为这是封装在langchain内部的,我们不太好改源码。可以用以下两种解决方法:

(1)换 WSL 环境来运行程序

(2)还是Windows环境,将 langchain 的版本换一下:

pip install langchain==0.1.6
pip install langchain-community==0.0.19

所以如果你是Windows环境,那么大概也只能使用 WSL 来运行程序了。

0.4 运行成功

运行后的输出应该类似下图这样:

在这里插入图片描述
至此,环境准备好了。

附:之前MetaGPT单智能体课程的系列笔记

  • 【AI的未来 - AI Agent系列】【MetaGPT】0. 你的第一个MetaGPT程序
  • 【AI的未来 - AI Agent系列】【MetaGPT】1. AI Agent如何重构世界
  • 【AI的未来 - AI Agent系列】【MetaGPT】2. 实现自己的第一个Agent
  • 【AI的未来 - AI Agent系列】【MetaGPT】3. 实现一个订阅智能体,订阅消息并打通微信和邮件
  • 【AI的未来 - AI Agent系列】【MetaGPT】4. ActionNode从理论到实战
  • 【AI的未来 - AI Agent系列】【MetaGPT】4.1 细说我在ActionNode实战中踩的那些坑
  • 【AI的未来 - AI Agent系列】【MetaGPT】5. 更复杂的Agent实战 - 实现技术文档助手
  • 【AI的未来 - AI Agent系列】【MetaGPT】6. 用ActionNode重写技术文档助手
  • 【AI Agent系列】【MetaGPT】7. 实战:只用两个字,让MetaGPT写一篇小说
  • 【AI Agent系列】【MetaGPT】8. 一句话订阅专属信息 - 订阅智能体进阶,实现一个更通用的订阅智能体
  • 【AI Agent系列】【MetaGPT】9. 一句话订阅专属信息 - 订阅智能体进阶,实现一个更通用的订阅智能体(2)
  • 【AI Agent系列】【MetaGPT】【深入源码】智能体的运行周期以及多智能体间如何协作
  • 【AI Agent系列】【MetaGPT】总结这段时间学习MetaGPT的一些学习方法和感悟

相关文章:

【AI Agent系列】【MetaGPT多智能体学习】0. 环境准备 - 升级MetaGPT 0.7.2版本及遇到的坑

之前跟着《MetaGPT智能体开发入门课程》学了一些MetaGPT的知识和实践,主要关注在MetaGPT入门和单智能体部分(系列文章附在文末,感兴趣的可以看下)。现在新的教程来了,新教程主要关注多智能体部分。 本系列文章跟随《M…...

python自动化管理和zabbix监控网络设备(无线AC控制瘦ap配置部分)

目录 前言 拓扑 一、AC-SW1 二、Core-sw1 三、Core-sw2 四、汇聚层 五、AC1 六、SW1-6 七、DMZ区域 前言 具体原理和操作可以访问我的主页视频 白帽小丑的个人空间-白帽小丑个人主页-哔哩哔哩视频 拓扑 一、AC-SW1 sys sysname AC-SW1 vlan batch 100 200 210 220 2…...

XSS中级漏洞(靶场)

目录 一、环境 二、正式开始闯关 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x0B 0x0C 0x0D 0x0E ​ 0x0F 0x10 0x11 0x12 一、环境 在线环境(gethub上面的) alert(1) 二、正式开始闯关 0x01 源码: 思路:闭…...

etcd java 客户端jetcd库踩坑日志

问题 Q: EtcdException: Unable to resolve endpoints [http://0.0.0.0:2379/] A: 经过测试,endpoints最后的斜杠不能写,完整的endpoints是http://0.0.0.0:2379 Q: java.lang.NoSuchMethodError: io.netty.buffer.Po…...

<网络安全>《61 微课堂<第1课 南北向流量是什么?>》

1 形象化解释 在网络安全中,经常听到南北向流量这个词。那究竟是什么意思呢? 这里的南北,就是地图上的东西南北,是方向。我们在画网络架构图时,往往是由上到下依次是web层、应用层、数据层,流量从web层到…...

Day12-【Java SE进阶】JDK8新特性:Lambda表达式、方法引用、常见算法、正则表达式、异常

一、JDK8新特性 1.Lambda表达式 Lambda表达式是JDK 8开始新增的一种语法形式;作用:用于简化名内部类的代码写法。 注意:Lambda表达式并不是说能简化全部匿名内部类的写法,只能简化函数式接口的匿名内部类。 有且仅有一个抽象方法的接口。注意:将来我们见到的大部…...

go mod中如何解决 xxx/yyy/lib@v1.1.0: unrecognized import path

需要检查的几个地方 这个错误通常出现在 Go 模块系统无法找到指定版本的模块时。有几种可能的原因和解决方法: 模块未被发布或标记: 确保 xxx/yyy/lib 模块的版本 v1.1.0 已经被正确地发布或标记。你可以在对应的 GitLab 仓库中查看是否存在 v1.1.0 标签…...

比较Python和Rust的内存管理机制

大家好,内存管理是编程语言的基础,它确保着资源被有效利用,不同的编程语言采用不同的策略来管理内存。有些语言需要程序员手动管理内存,有些语言则自动化了内存管理过程。Python和Rust都采用了垃圾收集(Garbage Collec…...

Linux系统——Shell脚本——一键安装LNMP

#!/bin/bash #安装nginx echo "安装nginx服务" wget http://nginx.org/download/nginx-1.11.4.tar.gz &>/dev/null if [ $? -eq 0 ] thenecho "nginx-1.11.4安装包下载完成"echo "--开始安装必要的依赖文件--"yum install -y gcc gcc-c…...

算法复习之二分【备战蓝桥杯】

二分模板一共有两个,分别适用于不同情况。 算法思路:假设目标值在闭区间[l, r]中, 每次将区间长度缩小一半,当l r时,我们就找到了目标值。 版本一 当我们将区间[l, r]划分成[l, mid]和[mid 1, r]时,其更…...

如何做代币分析:以 SHIB 币为例

作者:lesleyfootprint.network 编译:cicifootprint.network 数据源:SHIB Token Dashboard (仅包括以太坊数据) 在加密货币和数字资产领域,代币分析起着至关重要的作用。代币分析指的是深入研究与代币相关…...

Springboot+vue的考勤管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。

演示视频: Springbootvue的考勤管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller)三层…...

https://htmlunit.sourceforge.io/

https://htmlunit.sourceforge.io/ 爬虫 HtmlUnit – Welcome to HtmlUnit HtmlUnit 3.11.0 API https://mvnrepository.com/artifact/net.sourceforge.htmlunit/htmlunit/2.70.0 https://s01.oss.sonatype.org/service/local/repositories/releases/content/org/htmlunit…...

回文链表(leetcode)

我自己第一个写的代码: bool isPalindrome(struct ListNode* head){struct ListNode* tail NULL;struct ListNode* pos NULL;if( head->next NULL){return true;}while( 1 ){if( head->next NULL || (head->next->next NULL && head->…...

大语言模型(LLM)技术名词表(一)

LLMs on a Phone:指在手机设备上运行的大型语言模型。 Scalable Personal AI:指用户可以在个人设备上对AI模型进行微调的技术。 Responsible Release:发布AI模型时考虑社会、法律和伦理影响的做法。 Multimodality:AI模型能处理…...

C++ 快速排序快速选择

目录 1、75. 颜色分类 2、912. 排序数组 3、 215. 数组中的第K个最大元素 4、LCR 159. 库存管理 III 1、75. 颜色分类 思路:利用快速排序思路,使用三指针分块进行优化。 [0,left]——小于key[left1,right-1]——等于key[right,nums.size()]——大于k…...

雅马哈伺服器TS-S系列说明具体详情内容可参看PDF目录内容

雅马哈伺服器TS-S系列说明具体详情内容可参看PDF目录内容...

SpringBoot底层原理

SpringBoot底层原理 一 配置优先级 1.配置方式 Springboot中支持三种配置方式,分别为: application.propertiesapplication.ymlapplication.yaml 2.配置优先级 当存在多份配置文件时,配置文件会按照它们的优先级生效。 优先级从高到底…...

【golang】25、图片操作

用 “github.com/fogleman/gg” 可以画线, 框 用 “github.com/disintegration/imaging” 可以变换颜色 一、渲染 1.1 框和字 import "github.com/fogleman/gg"func DrawRectangles(inPath string, cRects []ColorTextRect, fnImgNameChange FnImgNameChange) (st…...

kswapd0挖矿病毒攻击记录

文章目录 一、起因与病毒分析1、起因2、阿里云告警2.1 恶意脚本代码执行12.2 恶意脚本代码执行22.3恶意脚本代码执行32.4 恶意脚本代码执行4 3、病毒简单分析3.1 病毒的初始化3.2 病毒本体执行 4、总结 二、ubuntu自救指南1、病毒清理2、如何防御 一、起因与病毒分析 1、起因 …...

GD32H7 SPI3配置避坑指南:从GPIO到NSS,手把手解决‘主机配置错误’

GD32H7 SPI3配置避坑指南:从GPIO到NSS,手把手解决‘主机配置错误’ 在嵌入式开发中,SPI(Serial Peripheral Interface)作为一种高速、全双工的同步串行通信接口,因其简单高效的特点被广泛应用于各种外设连接…...

数据链路层核心技术:封装成帧与透明传输的实战解析

1. 数据链路层功能概述 数据链路层是计算机网络体系结构中承上启下的关键层级。想象一下,如果把网络通信比作寄快递,物理层负责的是"把包裹从一个站点运到另一个站点"这个基础动作,而数据链路层则是确保"包裹完整无误地送达&q…...

PLECS C-Script实战:手把手教你用代码生成三相SVPWM调制波(附完整代码)

PLECS C-Script实战:手把手教你用代码生成三相SVPWM调制波(附完整代码) 在电力电子领域,空间矢量脉宽调制(SVPWM)技术因其优异的电压利用率和平滑的输出波形,已成为三相逆变器控制的核心算法。但…...

KEIL开发环境Error #541报错深度解析:从Pack包缺失到启动文件修复全流程

1. 初识Error #541:当KEIL突然罢工时 第一次在KEIL MDK开发环境中看到Error #541报错时,我的反应和大多数开发者一样——盯着那个红色的错误提示框发愣。屏幕上赫然显示着:"Error #541: PS:Device:Startup:1.0.0 component is missing (…...

VSCode终端执行npm命令失败的排查与修复(Powershell方案)

1. 问题场景还原:为什么VSCode终端跑不动npm? 最近在项目里碰到个怪事:用系统自带的CMD窗口跑npm install一切正常,但切回VSCode内置终端就报"npm不是可识别的命令"。这种割裂感就像手机连WiFi能上网但电脑连同一个WiFi…...

阶段零:AI、机器学习、深度学习之间的关系

AI、机器学习、深度学习:一文讲透三者的关系从零开始,用最直观的方式理解AI核心概念一、一句话说清楚 深度学习 ⊂ 机器学习 ⊂ 人工智能 这三个概念是层层包含的关系,就像俄罗斯套娃一样: 最外层:人工智能&#xff08…...

为什么92%的AIAgent在非结构化环境中失控?2026奇点大会公布首个跨厂商控制一致性基准测试v1.3(仅开放72小时下载)

第一章:2026奇点智能技术大会:AIAgent机器人控制 2026奇点智能技术大会(https://ml-summit.org) 在2026奇点智能技术大会上,AIAgent机器人控制框架正式开源,标志着多模态具身智能体从实验室走向工业级实时闭环控制的关键跃迁。该…...

【CVE-2026-25253】--漏洞复现、漏洞原理以及修复建议

前言‌ OpenClaw‌ 是一款 ‌开源、本地优先的 AI 智能体框架‌,核心目标是让 AI 从“只会聊天”升级为“能动手执行真实任务”,被社区亲切地称为“‌龙虾 AI‌”或“‌小龙虾‌”‌ 一、漏洞概述 1、详情 CVE-2026-25253是OpenClaw控制界面(Control UI)中存在的跨站We…...

软件测试人员,别再贩卖AI焦虑了!

📝 面试求职: 「面试试题小程序」 ,内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试,命中…...

长芯微LD1220完全P2P替代ADS1220,是一款精密、低功耗、兼容 SPI 接口、24 位 ΔΣ ADC

描述LD1220 是一款精密、低功耗、兼容 SPI 接口、24 位 ΔΣ ADC,其内部集成了一个低噪声可编程增益放大器 (PGA)、 两个可编程输出电流源 (IDAC)、一个电压基准、一个振荡器、一个低侧开关和一个精密温度传感器。 这些特性使得 LD1220 适用于测量微弱信号&#xff…...