跳到正文
北京时间
原文
Hugging Face:Blog(RSS)·· 2026-06-06精选AI 评分74

用Qwen2.5-3B构建多智能体经济体:工程报告

Thousand Token Wood: shipping a multi-agent economy on a 3B model

AI 导读

开发者用Qwen2.5-3B构建了五人森林生物多智能体经济体,每个智能体独立运行,通过vLLM部署在Modal,以Gradio为交互窗口。3B模型在100%调用中输出有效JSON,但经济判断能力弱。通过设计稀缺性(食物品种限制、易腐坏、冬季燃料危机)和优化提示词(禁止买入自产物品、给出示例)提升决策质量。15轮模拟中,蜜价从10跌至3、柴价从4涨至7、财富基尼系数从0.14扩至0.38。项目展示了小模型可靠格式化与不可靠推理之间的工程填补。

推荐理由

我觉得这是近期最诚实的小模型工程复盘,把为什么不换大模型、怎么靠提示修正推理、怎样设计系统稀缺性讲透了,比看十篇论文有实操价值。

正文 · AI 翻译

一篇关于 Build Small Hackathon 的实地报告:一个由交易者组成的 30 亿参数议事会能做什么、不能做什么。 先试一试:Space,以及开放的 agent traces。

我为 Build Small Hackathon 构建了 Thousand Token Wood。这是一个微型经济体:五只林地生物,每一只都是运行在 Qwen2.5-3B 上的独立智能体,它们用五种货物交换卵石,传播流言,囤积居奇,陷入恐慌。你戳一戳这片林地,就能看到泡沫、崩盘和不断扩大的贫富差距自行浮现。模型通过 vLLM 在 Modal 上提供服务;一个 Gradio 应用则是观察这片林地的窗口。

这是一篇关于工程实现的实地报告,写给那些用小模型做构建的人。简短版本是:3B 模型是一个可靠的格式生成器,却是一个不可靠的推理者;涌现系统需要被设计出来的稀缺性;而最好的演示,恰恰位于技术约束与你已经深刻理解的某样东西相交的地方。

为什么“小”是设计,而不是限制

一个活的经济体需要许多智能体在每次运行中思考许多次。而这恰恰是前沿模型用错地方的地方:每 tick 都运行一个交易者议事会,太慢也太贵。小模型才让实时多智能体模拟变得可行。每只生物每回合都在一次批处理的 GPU 调用中做出决策。

第一个经济体一诞生就死了

朴素版本毫无作用。生产超过了消费,所以每个生物都自给自足,从来没有交易的理由。市场出清一次后便归于沉寂。解决办法是人为制造稀缺:

  • 饮食多样性:一个生物每餐只能吃任意单一食物的一份,因此要想生存,就得购买它自己不生产的食物。
  • 腐败:易腐食物若囤积就会腐烂,迫使盈余必须在仍有价值时卖出。
  • 冬季燃料危机:每个生物每回合都必须烧柴火,需求随时间上升,而只有一个生物生产柴火。

最后这条机制制造了戏剧性。唯一的供应商无法满足不断上升的需求,于是樵夫变得富有,其他所有生物则争抢取暖。

JSON 合法,判断力薄弱

在稀缺机制到位后,关于小模型的诚实教训浮现了出来。3B 在 100% 的调用中都输出了合法的 JSON,但其经济判断力很差:一个生产橡子的生物会发布订单去购买橡子,而这恰恰是它过剩的东西。

解决办法不是更大的模型,而是更精准的提示词。我告诉每个智能体它生产什么、绝不能购买什么,计算出它短缺的商品的确切清单,并给它一个完整的示例。决策质量大幅提升,生物们开始按照各自的角色进行交易。整个循环被包裹在一个容错的 JSON 解析与修复层中,因此格式错误的响应会降级为无操作,而不会让模拟崩溃。

第二个教训来自幸福度。我最初把它建模成一个累加器,任何长期的短缺都会让每个生物在一轮运行中归零,这种死亡螺旋看起来毫无乐趣,而且惩罚了智能体不完美的优化。我把它重新定义为一个均值回归的心情,当生物吃饱穿暖时就会恢复,而且永远不会归零。赌注应该放在石子、价格和地位上,而不是饥饿上。

然后它开始讲故事

我最满意的功能是将这个项目与市场历史联系起来。玩家可以抽取一张"森林传奇":一个著名事件被重新包装成林地民间传说。郁金香狂热变成了大橡果狂热。南海泡沫变成了空心原木贸易公司。1929年的银行挤兑变成了对乌娜宝库的挤兑。

这些不是装饰性文本。每个传奇都会触发真实的冲击,而智能体会做出反应。在一次运行中,我抽到了"对乌娜宝库的挤兑",即猫头鹰的金库已空的传言。乌娜开始清算她的蜂蜜以筹集石子,供应的洪流在接下来的回合中将蜂蜜价格从10砸到了3。一次重新包装的银行挤兑让一个智能体抛售资产,并推动了一个市场价格。这一切都不是脚本编排的。

要让这一点可见,价格必须变动。它们之前是冻结的,因为智能体报回了我展示给它们的参考价格。解决办法是让市场参考价在每一轮之后随剩余的供需漂移:大量未成交的买盘推高价格,供应过剩则压低价格。现在价格在稀缺时呈现趋势,在均衡交易时保持平稳。

实际发生了什么

一次具有代表性的十五轮运行,中途注入了一场干旱和一则冬季传言:

指标 结果
有效的 JSON 动作 100%(75 次调用中的 75 次)
每轮交易次数 持续在 3 到 9 之间,从未静默
蜂蜜价格 在银行挤兑传言期间从 10 暴跌至 3
柴火价格 随着冬季稀缺加剧,从 4 涨至 7
财富差距(基尼系数) 从 0.14 扩大至 0.38
结局 樵夫最终最富有,囤积者破产

这些操作背后的推理过程都在公开的 traces 数据集中:每一行都是一个生物的完整提示词、原始响应、解析后的动作以及私密思考。

用小模型构建的要点

大部分工程工作是在弥合小模型可靠的格式输出与不可靠的推理之间的差距,靠的是结构和提示词,而不是规模。涌现式系统需要被设计出来的稀缺性;富足则乏味。而最引人注目的小模型演示并不需要虚构的戏剧性。三百年的市场历史早已备好剧本,而一个由 3B 智能体组成的议事会就足以将其演绎出来。

小模型,大冒险。试试这个 Space。

最初发布于 Medium。[

来源:Hugging Face:Blog(RSS) · huggingface.co