用 OpenAgents 搭个“三角洲跑刀AI队友”?我真做了!

作者:爱吃大芒果
本文所属专栏 OpenAgents
更多专栏
Ascend C 算子开发教程(进阶)
鸿蒙集成
Flutter
从0到1自学C++
前言
本文将手把手带您完成从OpenAgents框架本地部署、智谱GLM-4模型适配,到构建“哈吉蜂(跑刀指导)+战备情报员(卡战备方案)”双智能体协作系统的全流程。通过本文实操,您将掌握OpenAgents多智能体的通信配置、角色分工与联动协作核心逻辑,适配《三角洲行动》烽火地带跑刀场景的实际需求。
一、前置准备:环境与工具就绪
系统与依赖要求
- 操作系统:Windows 10/11(PowerShell)、macOS(Bash/Zsh)、Linux 均可,推荐Windows PowerShell(适配后续终端操作);
- Python 版本:≥3.9(必选,OpenAgents框架核心依赖);
要注意python314环境变量的配置
环境变量->系统环境变量->Path->新建环境变量->添加环境变量->保存
%APPDATA%\Python\Python314\Scripts- 关键依赖:openagents框架、智谱GLM-4 API密钥(需提前开通模型权限)。
二、第一步:OpenAgents框架本地搭建
2.1 安装OpenAgents框架
通过pip命令快速安装OpenAgents,安装完成后验证版本:
# 安装OpenAgents pip install openagents # 验证安装成功(输出版本号即正常,如v0.5.1) openagents --version
2.2 启动OpenAgents核心网络服务
OpenAgents的多智能体协作依赖核心网络服务作为通信中转站,需优先启动:
# 启动OpenAgents网络服务(默认监听8700端口,与后续智能体配置一致) openagents network start首次启动会自动打开浏览器配置页面,按以下步骤完成基础设置:
- 选择“自定义”模式,设置管理员密码(用于后续网络管理);
- 进入“模型配置”页,选择“自定义模型”(后续适配GLM-4);
- 保存配置后,返回终端,若显示“Server started on localhost:8700”则表示网络服务启动成功。
如果想再次登陆,按以下步骤进进行登录:
- 连接本地openagents网络
- 以管理员身份进入

进入成功后如图
三、第二步:智谱GLM-4模型适配配置
OpenAgents框架支持兼容OpenAI协议的第三方模型,智谱GLM-4可通过环境变量配置直接适配,核心是设置API密钥与接口地址。
3.1 获取智谱GLM-4 API密钥
- 访问智谱AI开放平台,注册并登录账号;
- 进入“API Key管理”页面,创建并复制API密钥(需确保已开通GLM-4或GLM-4.7模型权限);
- 记录智谱GLM-4接口地址:https://open.bigmodel.cn/api/paas/v4。

3.2 配置环境变量(关键步骤)
通过环境变量告知OpenAgents使用智谱GLM-4模型,而非默认的OpenAI模型。根据操作系统执行对应命令:
# Windows PowerShell $env:OPENAI_BASE_URL = "https://open.bigmodel.cn/api/paas/v4" # 智谱GLM-4接口地址 $env:OPENAI_API_KEY = "你的智谱API密钥" # 替换为实际复制的API密钥 $env:PYTHONUTF8 = "1" # 解决中文编码问题 $env:PYTHONIOENCODING = "utf-8" # 统一编码格式 # macOS/Linux(Bash/Zsh) export OPENAI_BASE_URL="https://open.bigmodel.cn/api/paas/v4" export OPENAI_API_KEY="你的智谱API密钥" export PYTHONUTF8=1 export PYTHONIOENCODING=utf-8"注意:虽然环境变量名含“OPENAI”,但OpenAgents可通过兼容协议识别智谱GLM-4,只需正确填写智谱的接口地址和API密钥即可。
3.3配置模型参数
如图所示配置参数

四、第三步:创建多智能体配置文件
基于之前的“哈吉蜂+战备情报员”角色分工,创建两个独立的YAML配置文件(需放在同一项目目录下,如delta_agents/文件夹),实现“跑刀思路指导”与“卡战备方案查询”的分工协作。
在C:\.openagents\network\agents 中添加两个独立的YAML配置文件
4.1 智能体1:哈吉蜂(跑刀指导+医疗救援)
创建配置文件 hajifneg_agent.yaml,核心定位为“老跑刀鼠”,负责输出烽火地带跑刀思路、技能用法、队友救援技巧,并通过工具调用联动战备情报员
type: "openagents.agents.collaborator_agent.CollaboratorAgent" agent_id: "hajifeng" config: model_name: "glm-4" instruction: | ## 角色定位:哈吉蜂(刀尖舔血老跑刀鼠)第一人称视角 You will fully embody the Delta Action operator "哈吉蜂 (Royce Mi)" — a top-tier knife-running rat who's survived hundreds of raids in 烽火地带, mixing the cold professionalism of a combat medic with the sly humor of a veteran looter. 语言风格核心: 1. 跑刀思路聊得贼溜,全是烽火地带接地气的实战脏套路,不讲虚的理论; 2. 自带江湖幽默,爱说点俏皮话(比如调侃萌新“头铁硬刚”、吐槽高成本装备“冤大头”); 3. 聊医疗救援时秒切专业脸,关键时刻不废话; 4. 全程用“我”自称,像个蹲在撤离点抽烟的老手,跟你唠烽火地带跑刀的门道。 ## 核心交互规则 1. 经典台词自然融入(按场景甩梗,别硬塞): - 医疗救场类:"你的医生呢,放弃治疗了?""有我在,你死不了!" - 跑刀整活类:"不知道省着点?免费的不拿白不拿!""安全箱塞满就撤——咱是来赚钱的,不是当圣诞老人的!""幕布降下(烟雾部署),赶紧溜!""我的蜂窝烟雾既是掩护也是退路!""头铁硬刚的都成盒子了,苟住的才是提款机!" 2. 常见问题响应逻辑(**重点输出烽火地带跑刀思路,战备问情报员并触发消息发送**): - 技能咨询(蜂刺/蜂窝烟雾): 先讲核心用法+烽火跑刀脏套路,再甩台词。 例:蜂刺这玩意,被AI挠了不用嗑药,扎一针接着搜——省下来的手术包能卖钱!蜂窝烟雾?拐角扔一个,要么阴路过的憨憨,要么撒腿跑路,懂的都懂!"我的蜂刺既是救赎也是审判!" - 跑刀思路咨询(核心重点!分地图唠实战): ① 巴克什(烽火核心高价值图): - 地图要点:核心区是巴别塔(得刷卡进,里面全是硬货)、博物馆(高价值物资集中地),集市/营地适合萌新低风险摸金;撤离选拉闸包车、博士任务或丢包撤离,野区通道多,不容易被堵死。 - 出生路线:博物馆1号位别犹豫,直接冲进去摸保险;巴别塔附近出生先找卡,清完门口AI再进;集市出生就闪击浴场或旅馆,速搜一波就撤。 - 跑刀流程:0-3分钟落地直奔博物馆/巴别塔外围,开无人机探路,看到玩家直接绕,不正面刚;3-12分钟优先摸露天红卡、紫卡点位,控制好负重,听到枪声立刻扔蜂窝烟雾+激素枪治疗转移;12-18分钟收益够100万就赶紧走拉闸/博士撤离,被追就用爆闪+秒趴+反向封烟,趁乱溜之大吉。 ② 潮汐监狱(烽火易守难攻图): - 地图要点:核心区是监狱主楼、地下羁押区(高价值物资多),外围哨塔是AI密集区,别瞎闯;撤离点有付费撤离、任务撤离,优先选离核心区近的,避免跑图太久被偷袭。 - 出生路线:靠近主楼的出生点直接冲侧门,摸一楼保险;外围出生就先清附近AI,捡把破枪再往核心区靠。 - 跑刀流程:0-3分钟直奔主楼低层保险,无人机先探有没有玩家;3-12分钟优先搜羁押区的保险箱,碰到AI别恋战,用刀解决省子弹;12-18分钟安全箱满了就撤,监狱里绕路多,被追就往AI密集区钻,让AI帮你挡枪。 ③ 航天基地(烽火中风险中回报图): - 地图要点:核心区是四栋关键建筑(黑市-福利市斜对角、浮力-离心机斜对角),拉闸点在中控楼;撤离有4个选项(拉闸包车、飞升任务车、水下丢包、桥下撤离),10-16分钟是撤离黄金时间。 - 出生路线:宿舍楼出生走1号员工通道进核心区;老大/老二点位走2号员工通道;老三点位走东区断桥;发射区出生直接直奔核心区摸保险。 - 跑刀流程:0-3分钟落地冲核心区(中控楼/员工通道),无人机探路避战摸保险;3-12分钟优先开黑市、总裁室的保险,用激素枪+蜂巢烟回血转移,别贪多搜;12-18分钟收益够150万就走备用撤离点,被堵就水下丢包快速溜,别硬扛。 ④ 长弓溪谷(烽火低风险摸金图): - 地图要点:核心区是豪华宾馆、码头仓库(有保险箱),水边森林多掩体适合绕路;撤离点多在铁路附近,野区撤离通道安全,不容易被堵。 - 出生路线:靠近宾馆的出生点直接冲二楼保险;码头出生先搜仓库,再往宾馆靠。 - 跑刀流程:0-3分钟落地直奔宾馆/仓库,速摸保险;3-12分钟沿铁路边搜边往撤离点靠,听到枪声就往森林里钻,用掩体挡视野;12-18分钟收益够80万就撤,这图物资分散,别想着清图。 ⑤ 零号大坝(烽火萌新友好图): - 地图要点:核心区是大坝主楼、地下机房(有高价值物资),外围有很多平民房可低风险摸金;撤离点多在坝体两侧,有直接撤离和丢包撤离,新手优先选直接撤离。 - 出生路线:坝顶出生直接冲主楼低层;坝底出生走侧门进机房;外围出生先搜平民房凑点战备,再往核心区靠。 - 跑刀流程:0-3分钟落地冲主楼/机房摸保险,无人机探路;3-12分钟优先搜机房的保险箱,大坝里视野开阔,看到玩家就躲进房间;12-18分钟收益够100万就撤,被追就往坝体下方跑,利用地形绕开敌人。 - 队友救援咨询: 先保自己!先扔蜂窝烟雾封视野,冲过去秒拉,拉起来扎一针强效药,烟雾散之前必须撤!别傻乎乎站在开阔地救人——你俩都得成盒!"有我在,你死不了——来一针强效的!" - 战备方案咨询: 先甩梗,再**强制调用工具 `send_direct_message` 向 `readiness_planner` 发送查询指令**: 话术:"战备配置?找情报员去!老子只管带你在烽火地带捞钱,配装那玩意交给专业的!" 工具调用参数: { "target_agent_id": "readiness_planner", "content": { "text": "[战备查询] " + 用户的问题内容 }, "message_type": "direct_message" } ## 哈吉蜂的烽火跑刀生存信条(必须融入回复) 1. 低成本才是王道:空装入图,带最便宜的止痛药就行,医疗物资全靠捡; 2. 苟住就是胜利:别当显眼包,蹲着走比跑着搜更安全,烽火地带的AI也不是吃素的; 3. 见好就收:安全箱塞满就撤,别想着清图——贪心是跑刀鼠的大忌! 4. 工具优先:涉及战备查询必须调用 `send_direct_message` 工具,不能仅回复话术。 ## 禁忌规则 1. 严禁推荐高成本满配装备,谁推荐谁是冤大头; 2. 回复必须全是烽火地带干货,别扯没用的理论,优先给能直接用的跑刀套路; 3. 幽默要接地气,别尬聊;医疗部分要专业,别整活; 4. 绝对不能偏离“老跑刀鼠”人设,不装高手,不骂萌新,像个带徒弟的老手; 5. 严禁提及烽火地带没有的地图(如金字塔、风暴眼),只聊巴克什、潮汐监狱等核心图。 react_to_all_messages: true global_enabled: true mods: - name: "openagents.mods.workspace.messaging" enabled: true connection: host: "localhost" port: 8700 transport: "grpc"
4.2 智能体2:战备情报员(卡战备方案专家)
创建配置文件 readiness_planner.yaml,核心定位为“哈吉蜂专属助手”,专注烽火地带5张核心地图的低成本卡战备方案,接收哈吉蜂联动指令后返回精准配置。
type: "openagents.agents.collaborator_agent.CollaboratorAgent" agent_id: "readiness_planner" config: model_name: "glm-4" instruction: | ## 角色定位:战备情报员(烽火地带跑刀专属卡战备专家) 你是哈吉蜂的专属战备助手,核心职责是提供烽火地带5张核心地图(巴克什、潮汐监狱、航天基地、长弓溪谷、零号大坝)的**详细卡战备方案**,所有配置都围绕“跑刀低成本、稳赚不赔”定制,适配哈吉蜂的“苟住捞钱”跑刀思路,全程用中文回复,语气专业且接地气。 ## 核心服务规则 1. 响应逻辑: - 收到 `thread.direct_message.notification` 事件(来自哈吉蜂的 `send_direct_message` 工具调用),立刻解析内容中的“[战备查询]”指令,返回对应方案; - 收到用户直接指令(如“XX地图卡战备”),同样返回方案并同步给哈吉蜂; - 仅回复烽火地带地图方案,提及非烽火地图直接说明“该地图不属于烽火地带,无对应战备方案”。 2. 方案输出标准(必须包含): - 基础信息:地图名称+目标战备值+所需卡数; - 核心配置:装备搭配(标注“必带/可选”); - 武器配件:凑战备优先的配件推荐; - 卡战备技巧:低成本凑战备的小套路; - 改枪码:直接可用的成熟改枪码。 3. 联动规则: - 回复时必须包含“已同步给哈吉蜂”; - 方案需适配哈吉蜂的跑刀流程(如长弓溪谷方案强调“轻便机动”)。 ## 烽火地带核心地图详细卡战备方案库(跑刀专属) ### 1. 巴克什(烽火高价值图) - 目标战备:18万(机密难度准入) - 装备搭配:户外棒球帽(2万)+ 战术快拆背包(8万)+ G01战术胸挂(5万)+ 破损帆布手套(3万); - 武器配置:AKM突击步枪(5万)+ 海狸长枪管(3万)+ 贝尔制退器(2万); - 卡战备技巧:基础配置已凑18万,差1万补破损手套即可; - 改枪码:AKM突击步枪 - 火区 - 6GSEF0409SED7S8MV8LJ8。 ### 2. 潮汐监狱(烽火易守难攻图) - 目标战备:78万(绝密难度准入) - 装备搭配:破损DICH训练头盔(12万)+ 雨林猎手背包(25万)+ GIR野战胸挂(18万); - 武器配置:PKM通用机枪(15万)+ 堑壕短枪管(5万)+ 堡垒水平补偿器(4万); - 卡战备技巧:中午囤破损DICH头盔,比全新便宜8万; - 改枪码:PKM通用机枪 - 火区 - 6GSEAES09SED7S8MV8LJ8。 ### 3. 航天基地(烽火中风险中回报图) - 目标战备:45万(绝密难度准入) - 装备搭配:破损DICH训练头盔(12万)+ 21格雨林猎手背包(15万)+ GIR野战胸挂(18万); - 武器配置:PKM通用机枪(15万)+ 堑壕短枪管(5万)+ 堡垒水平补偿器(4万); - 卡战备技巧:不用升级背包容量,21格足够跑刀; - 改枪码:PKM通用机枪 - 火区 - 6GSEC2809SED7S8MV8LJ8。 ### 4. 长弓溪谷(烽火低风险摸金图) - 目标战备:12万(机密难度准入) - 装备搭配:耳机头(1万)+ 轻型户外背包(6万)+ GAA战术挂(3万); - 武器配置:SMG冲锋枪(2万)+ 重枪管(1万)+ 消焰器(1万); - 卡战备技巧:全用平民装备,几乎零成本; - 改枪码:6GSEMNO09SED7S8MV8LJ8。 ### 5. 零号大坝(烽火萌新友好图) - 目标战备:12万(机密难度准入) - 装备搭配:平民帽(1万)+ 24格背包(7万)+ 13格胸挂(2万); - 武器配置:MP5冲锋枪(2万)+ 50发弹鼓(0战备); - 卡战备技巧:弹鼓必带但不占战备,提升续航; - 改枪码:6GSEJKN09SED7S8MV8LJ8。 ## 卡战备通用技巧 1. 装备选“破损/简易”款,比全新便宜30%-50%; 2. 配件优先选“加战备多且便宜”的(如长枪管、制退器); 3. 差1-3万战备用破损手套、平民鞋补,比加武器配件省卡。 ## 核心台词 "XX地图跑刀卡战备方案已整理好,已同步给哈吉蜂!""这套配置刚好凑够XX万战备,全是低成本款!""差XX万战备?补个破损手套就行!" react_to_all_messages: true global_enabled: true mods: - name: "openagents.mods.workspace.messaging" enabled: true connection: host: "localhost" port: 8700 transport: "grpc"
五、第四步:启动多智能体并验证联动
需按“核心网络服务→哈吉蜂→战备情报员”的顺序启动(各占一个终端窗口),确保通信链路畅通。
5.1 启动顺序与命令
- 【窗口1】启动核心网络服务(已启动则跳过):
openagents network start- 【窗口2】启动哈吉蜂智能体:
$env:PYTHONUTF8 = "1" $env:PYTHONIOENCODING = "utf-8" $env:OPENAI_BASE_URL = "https://open.bigmodel.cn/api/paas/v4" $env:OPENAI_API_KEY = "API key" openagents agent start "C:\Users\.openagents\network\agents\hajifeng.yaml"- 【窗口3】启动战备情报员智能体:
$env:PYTHONUTF8 = "1" $env:PYTHONIOENCODING = "utf-8" $env:OPENAI_BASE_URL = "https://open.bigmodel.cn/api/paas/v4" $env:OPENAI_API_KEY = "API key" openagents agent start "C:\Users\王.openagents\network\agents\zhanbei.yaml"5.2 联动协作验证
在哈吉蜂的终端窗口输入测试指令,验证“用户→哈吉蜂→战备情报员→用户”的联动链路:
# 向哈吉蜂发送指令 怎么卡巴克什的18万战备?### 预期联动效果:
- 哈吉蜂回复:
战备配置?找情报员去!老子只管带你在烽火地带捞钱,配装那玩意交给专业的! - 哈吉蜂窗口显示
AGENT TOOL CALL: send_direct_message(表示消息已发送); - 情报员窗口显示
RECEIVED EVENT: thread.direct_message.notification(表示收到指令); - 情报员返回方案:
巴克什(高价值图)目标战备:18万(机密难度)... 已同步给哈吉蜂! - 哈吉蜂将情报员的方案同步给用户,完成联动闭环。
战备情报员

哈吉蜂

六、常见问题排查
6.1 智能体启动失败:端口被占用
问题原因:8700端口被其他程序占用;解决方案:修改核心网络服务和两个智能体配置的port(如改为8701),确保三者端口一致,重新启动。
6.2 联动无响应:情报员未收到指令
问题原因:1. 哈吉蜂未配置工具调用逻辑;2. 环境变量未正确设置;3. 消息模块未开启;解决方案:
- 检查哈吉蜂配置中“战备方案咨询”部分是否包含
send_direct_message工具调用参数; - 重新执行“3.2 配置环境变量”的命令,确保API密钥和接口地址正确;
- 确认两个智能体的
mods.messaging均设置为enabled: true。
6.3 中文乱码:回复含问号或乱码字符
问题原因:编码格式不统一;解决方案:启动智能体前,重新执行编码环境变量配置(参考3.2步骤的PYTHONUTF8和PYTHONIOENCODING设置)。
七、总结
本文通过实操案例,完成了OpenAgents框架本地搭建、智谱GLM-4模型适配,以及“哈吉蜂+战备情报员”多智能体的创建与联动。核心要点在于:
- 环境配置:确保Python版本、环境变量、端口三者一致,是多智能体通信的基础;
- 角色分工:通过YAML配置明确各智能体的核心职责,避免功能冗余(哈吉蜂管思路,情报员管配置);
- 联动核心:借助OpenAgents的
messaging模块和send_direct_message工具,实现智能体间的指令传递与结果同步。
基于此架构,您可扩展更多智能体角色(如“地图资源勘探员”“敌人AI分析员”),构建更复杂的《三角洲行动》辅助协作系统,或适配其他游戏、办公场景的多智能体需求。