首页 > 教程攻略 > ai资讯 >AgentVerse-部署多个基于大型语言模型(LLM)的智能体

AgentVerse-部署多个基于大型语言模型(LLM)的智能体

来源:互联网 时间:2026-08-25 13:42:12

AgentVerse这个框架,说白了就是让多个大模型智能体凑在一起干活儿的“总指挥部”。它主要能玩两件事:一是任务解决——把一堆智能体自动组建成一个多智能体系统,一起搞定复杂任务,比如写软件、做咨询;二是仿真——你可以在自定义环境里围观或亲自跟这些智能体互动,用来研究社会行为、做游戏什么的,都挺有意思。代码目前还在重构,如果你只需要稳定版的仿真框架,切到release-0.1分支就行。

自发布以来,AgentVerse的关键节点还真不少:2024年3月被NVIDIA的博客点名推荐;2024年1月论文被ICLR 2024接收;2023年10月在Hugging Face上开源了社区版,可以直接用OpenAI API玩NLP课堂和囚徒困境两个仿真应用;2023年8月论文详细讲了任务解决框架里的多智能体协作机制和涌现行为;2023年6月放出了一批演示,包括软件设计、数据库管理、宝可梦H5游戏等;2023年5月项目正式启动。

即将到来

  • 论文代码完整发布
  • 支持本地LLM(LLaMA, Vicuna等)
  • 文档升级
  • 更复杂的对话历史记忆

内容

下面直接进入正题,从安装开始,到仿真和任务解决的实操,再到本地模型的支持说明,最后看看AgentVerse的具体展示。

开始使用

安装

手动安装(推荐)

确保Python版本>=3.9:

git clone https://github.com/OpenBMB/AgentVerse.git --depth 1
cd AgentVerse
pip install -e .

如果要用LLaMA这类本地模型,再装几个依赖:

pip install -r requirements_local.txt

通过pip安装

pip install -U agentverse

环境变量

你需要导出OpenAI API密钥:

export OPENAI_API_KEY="your_api_key_here"

如果用Azure OpenAI,则导出:

export AZURE_OPENAI_API_KEY="your_api_key_here"
export AZURE_OPENAI_API_BASE="your_api_base_here"

仿真

框架所需模块

agentverse
agents
simulation_agent
environments
simulation_env

CLI示例

以教室场景为例,九个智能体——一个教授,八个学生:

agentverse-simulation --task simulation/nlp_classroom_9players

GUI示例

启动本地网站演示:

agentverse-simulation-gui --task simulation/nlp_classroom_9players

服务器跑起来后,访问 http://127.0.0.1:7860/ 就能看到教室环境。如果想运行带工具的仿真案例(比如simulation/nlp_classroom_3players_withtool),需要先安装BMTools:

git clone git+https://github.com/OpenBMB/BMTools.git
cd BMTools
pip install -r requirements.txt
python setup.py develop

不过这是可选的——不装的话,不带工具的普通仿真依然能跑。

任务解决

框架所需模块

- agentverse
- agents
- simulation_env
- environments
- tasksolving_env

CLI示例

跑论文[2]提出的任务解决环境实验,可以这样:

运行基于AgentVerse的基准数据集:

agentverse-benchmark --task tasksolving/humaneval/gpt-3.5 --dataset_path data/humaneval/test.jsonl --overwrite

跑单个问题:

agentverse-tasksolving --task tasksolving/brainstorming

如果用工具案例(多智能体共用浏览器、Jupyter、bing搜索等),先构建XAgent[3]提供的ToolServer,按他们的指导[4]搞定后,再运行:

agentverse-tasksolving --task tasksolving/tool_using/24point

更多的工具使用任务放在agentverse/tasks/tasksolving/tool_using/里,可以慢慢翻。论文里其他的实验示例也都在agentverse/tasks/tasksolving目录下。

本地模型支持

vLLM支持

如果要跑vLLM(处理大规模推理),先按照文档[5]搭建vLLM服务器,然后设置环境变量:

export VLLM_API_KEY="your_api_key_here"
export VLLM_API_BASE="http://your_vllm_url_here"

接着在任务配置里把model改成vLLM服务器里对应的模型名,比如:

model_type: vllm
model: llama-2-7b-chat-hf

FSChat支持

FSChat是个本地模型框架,支持LLaMA、Vicuna等。集成步骤很简单:

1. 安装额外依赖

pip install -r requirements_local.txt

2. 启动本地服务器

根据你的模型路径和名称修改MODEL_PATHMODEL_NAME,然后运行:

bash scripts/run_local_model_server.sh

脚本默认启动Llama 7B聊天模型。当前支持的MODEL_NAME包括:llama-2-7b-chat-hfllama-2-13b-chat-hfllama-2-70b-chat-hfvicuna-7b-v1.5vicuna-13b-v1.5。如果要用其他的FastChat兼容模型[6],需要:

1. 在agentverse/llms/init.pyLOCAL_LLMS列表里加上新模型名。
2. 在同一个文件的LOCAL_LLMS_MAPPING字典里,把模型名跟它的Huggingface标识符对应上。

3. 修改配置文件

在配置里把llm_type设为localmodel设成你用的模型名:

llm:
  llm_type: local
  model: llama-2-7b-chat-hf
...

具体例子可以看agentverse/tasks/tasksolving/commongen/llama-2-7b-chat-hf/config.yaml

AgentVerse 展示

仿真展示

参见仿真展示[7]

任务解决展示

参见任务解决展示[8]