跳转到内容
use-cases / five-agents-five-pipes-one-verdict / hero
PIPE · 容器 · 多智能体

五个智能体,五条管道,一个裁决

你想让一组模型来审阅同一个输入。五个容器、五个不同的提供商、五种意见。编排框架通常会发明一百行代码来协调这件事。你不用写——每个智能体拿到自己的管道路径,裁判并行 curl 这五条。

阅读 Pipe API
use-cases / five-agents-five-pipes-one-verdict / mechanism

五个容器,五条路径,一个裁判

每个智能体在自己的容器中运行,使用自己的模型句柄。每个把裁决流式送进自己的管道路径。裁判进程并行 curl 这五条路径——管道为每个裁决守住,直到裁判连上,再把字节穿过去。无消息总线,无编排框架,无回调图。

编排循环4 STEPS · NO BROKER
0101 · BROADCAST

把同一个提示发给五个容器

五个容器并行启动,每个挂载不同的模型句柄。裁判同时 POST 提示到每个容器的智能体端点。

0202 · STREAM

每个智能体写入自己的管道路径

模型在思考时,智能体用 PUT 把裁决送进 pipe/agent-N。管道守住字节——不上磁盘、不走 broker——直到有人 curl 出来。

0303 · FAN-IN

裁判并行 curl 这五条路径

GET pipe/agent-1 到 pipe/agent-5,每条一个 curl。两端一连上,管道就把每个智能体的字节路由给裁判。

0404 · TALLY

解析裁决,返回结果

裁判从每条路径读 JSON,统计票数,返回多数派。五个容器,每个一条 HTTP 路径,它们之间没有 SDK。

judge.sh
#!/usr/bin/env bash
set -euo pipefail

PROMPT='review this PR for security issues'
AGENTS=(claude-sonnet gpt-4o gemini llama mixtral)
BASE=https://pipe.hoody.com/api/v1/pipe

# Each container streams its verdict into its own path.
# Five paths fan-in to one judge — no broker, no SDK.
for i in "$[!AGENTS[@]]"; do
  N=$((i + 1))
  curl -s -X POST "https://agent-$N.hoody.com/v1/run" \
    -d "[\"prompt\": \"$PROMPT\", \"sink\": \"$BASE/agent-$N\"]" &
done

# Read all five verdicts in parallel.
VERDICTS=()
for i in 1 2 3 4 5; do
  VERDICTS+=("$(curl -s "$BASE/agent-$i")")
done
wait

# Tally — majority wins.
printf '%s\n' "$[VERDICTS[@]]" \
  | jq -r .verdict \
  | sort | uniq -c | sort -rn | head -1

PUT 把每个裁决推上去。GET 把每个拉下来。管道就是这根线——两端一连上,字节就从智能体流到裁判,每条路径都有独立的反压。要加第六个智能体,启动第六个容器,再在循环里加一行。

use-cases / five-agents-five-pipes-one-verdict / angles

同一个评审团的三种解读

机制是一种形状——五个容器、五条路径、一个裁判——但根据你想击败的对象,价值的读法不一样。

FOR THE LAZY SENIOR ENGINEER

别为了问三个模型再去接 CrewAI

你不需要编排框架就能把一个提示发给五个 API、再把答案平均一下。一个 bash 循环加五个 curl 已经做到了。所谓智能体集成,向来就是五个 HTTP 调用披着风衣。

FOR THE AGENT BUILDER

热替换模型,不碰编排器

加一个智能体:再来一个容器、再来一条管道路径,在裁判的并行抓取里多加一行。下掉一个:杀掉容器,删掉那一行。没什么要重新配置的——无消息总线、无回调图、无 schema 迁移。

FOR THE COST-AWARE PM

跑五个模型,只为一个结果买单

便宜的模型先流出;贵的只有在共识不明时才跑完。因为每个智能体是独立的容器,带着自己的管道,所以一旦三个达成一致,你就能短路评审团——无共享状态、无 abort RPC,只要把管道关掉。

use-cases / five-agents-five-pipes-one-verdict / punchline

每个智能体拿到一条路径。路径就是这根线。

五家模型提供商,五个容器,五条 HTTP 路径——再加一个二十行 bash 的裁判。编排框架向来在假装 HTTP 不存在。

5 条路径
  • pipe/agent-claude
    block
  • pipe/agent-gpt
    block
  • pipe/agent-gemini
    block
  • pipe/agent-llama
    block
  • pipe/agent-mixtral
    approve
1 个裁决
block · 4/5 同意

裁判读取每条路径,统计票数,返回多数派。要加一个智能体,启动一个容器并加一条路径。没有消息总线要重配。

阅读 Pipe 文档
use-cases / five-agents-five-pipes-one-verdict / replaces

它替代了什么

这里每个框架都自带一套「智能体」的概念,外加一种厂商专属的方式让一个智能体跟另一个对话。管道把这层表面塌缩到 HTTP——每个智能体一条路径,curl 双向通行。

  • LangChain 智能体集成回调图,框架锁定
  • CrewAI 多智能体角色、任务、抽象塔
  • AutoGen 智能体评审团对话历史,厂商 SDK
  • 自建投票编排器手写的队列和扇入代码
  • OpenAI Assistants 线程厂商特定,单一供应商
  • Haystack 流水线为了一个提示要维护一张 DAG
use-cases / five-agents-five-pipes-one-verdict / cta

你不需要编排器。你需要五个容器和五条管道路径。裁判是二十行 bash。

阅读 Pipe API
use-cases / five-agents-five-pipes-one-verdict / related

阅读其他内容