메뉴
HN
Hacker News 29일 전

마이크로 에이전트: 모델 API 내부 협업으로 최첨단 모델을 능가하는 법

IMP
8/10
핵심 요약

최첨단 AI 모델 자체의 발전만큼이나 모델 간의 요청을 지능적으로 분배하고 조율하는 '라우터(Router)' 계층이 중요해지고 있습니다. vLLM Semantic Router와 같은 기술은 단일 모델 API 호출을 내부적인 다중 에이전트 협업으로 변환하여, 비용을 절감하면서도 최종 답변의 품질을 대폭 향상시킵니다. 복잡한 워크플로우를 숨기고 사용자는 하나의 모델과 대화하는 것처럼 매끄럽게 사용할 수 있게 해준다는 점에서 실무적 가치가 큽니다.

번역된 본문

목차

모두가 차세대 최첨단 모델(Frontier Model)을 주시하고 있습니다. 하지만 더 흥미로운 계층은 그 앞에 위치한 계층일지도 모릅니다.

라우터는 AI 추론을 위한 제어 평면(Control Plane)이 되어가고 있습니다. 라우터의 첫 번째 역할은 실용적이었습니다. 바로 올바른 요청을 올바른 모델로 전달(Routing)하는 것입니다. 이는 이미 중요한 문제입니다. 왜냐하면 실 서비스(Production) 환경에서의 AI는 더 이상 단일 모델만을 사용하는 세계가 아니기 때문입니다.

라우터는 요청에 최첨단 모델이 필요한지, 아니면 오픈소스 또는 로컬 모델로 충분한지를 판단하여 비용을 절감할 수 있습니다. 또한 민감한 영역의 요청을 더 엄격한 모델이나 필터, 강력한 검토 경로로 전송하여 안전 정책을 실행 가능하게 만들 수 있습니다. 클라우드와 엣지(Edge)를 조정하여 프라이빗하거나 짧은 지연 시간이 필요한 작업은 로컬에 유지하면서, 더 복잡하고 어려운 작업은 클라우드로 상향 조정(Escalation)할 수도 있습니다. 이것들 모두 매우 중요한 역할입니다.

하지만 라우터의 다음 역할은 더욱 흥미롭습니다. 바로 모델 자체를 더 낫게 만드는 것입니다. 모델의 가중치(Weights)를 변경해서가 아닙니다. 모든 애플리케이션이 맞춤형 에이전트 그래프를 구축하도록 요구해서도 아닙니다. 단일 모델 API 호출을 서빙 레이어 내의 제한된 협업(Collaboration)으로 전환함으로써 가능해집니다.

사카나(Sakana)의 Fugu가 큰 반향을 일으킨 이유가 바로 이것입니다. 즉, '모델'은 하나의 표면(Surface)이 될 수 있고 그 표면 뒤에는 하나의 '팀'이 있을 수 있다는 단순하면서도 강력한 아이디어를 상용 제품으로 만들었기 때문입니다. Fugu 기술 보고서 및 Conductor, Trinity와 같은 조정(Coordination) 논문을 포함하여 이 아이디어를 둘러싼 연구는 오케스트레이션(Orchestration)을 생각하는 데 유용한 용어를 제공합니다.

하지만 vLLM Semantic Router의 비전은 이 추상화(abstraction)를 배치하는 위치가 다릅니다. 협업 기능이 단 하나의 상용 엔드포인트나 애플리케이션별 에이전트 그래프 내부에만 존재해서는 안 됩니다. 그것은 개방형 서빙 원시 객체(Open serving primitive)가 되어야 합니다. vLLM Semantic Router는 그 아이디어를 개방형 서빙 계층으로 가져왔습니다.

사용자는 여전히 하나의 모델을 호출합니다. 이 안정적인 모델 ID 뒤에서 라우터는 레시피를 선택하고, 워커들(Workers)에게 작업을 분산시키고, 정족수(Quorum)를 수집하고, 이견을 검증하며, 최종 답변을 종합하고, 출력 계약(Output contract)을 수정한 다음, 하나의 정상적인 OpenAI 호환 응답을 반환합니다.

요점은 복잡성을 드러내는 것이 아닙니다. 요점은 협업을 마치 하나의 모델처럼 느껴지게 만드는 것입니다.

루퍼(Looper)가 곧 런타임(Runtime)입니다

vLLM Semantic Router에서 '루퍼'는 제한된 마이크로 에이전트(Micro-agents)를 위한 실행 런타임입니다. 요청은 일반적인 채팅 완료(Chat completion) 형태로 라우터에 들어옵니다. 라우터는 신호를 추출하여 작업 모양이나 위험 구간으로 투영하고, 의사 결정과 일치시킨 다음 알고리즘을 선택합니다. 이 알고리즘은 일반적인 단일 모델 라우팅일 수도 있고, 루퍼 라우팅일 수도 있습니다.

오늘날 주요 루퍼 패턴은 다음과 같습니다:

신뢰도(Confidence): 순차적 상향 조정(Escalation) 루프입니다. 먼저 더 저렴한 후보 모델을 시도하고 신뢰도를 측정한 다음, 점수가 너무 낮을 때만 상위 모델로 작업을 넘깁니다. 평가(Ratings): 제한된 병렬 분산 루프입니다. 엄격한 동시 실행 한도 내에서 여러 후보 모델을 실행하고 평가 인식 가중치를 사용하여 결과를 집계합니다. ReMoM: 모델 혼합(Mixture-of-models) 추론 반복입니다. 다양한 폭의 샘플을 분산시키고, 충분한 성공적인 응답이 모일 때까지 기다린 다음 최종 종합 라운드를 실행합니다. 퓨전(Fusion): 패널-판사-최종결정자(Panel-Judge-Final) 패턴입니다. 독립적인 모델 응답이 판사 및 최종결정자를 위한 증거가 됩니다. 워크플로우(Workflows): 마이크로 에이전트 워크플로우 런타임입니다. 정적 역할이나 동적 플래너(Planner)를 지원하고, 제한된 워커 단계를 실행하며, 최종 응답을 종합합니다.

구현 세부 사항은 중요합니다. 루퍼는 단순히 '더 많은 모델에게 물어보라'는 슬로건이 아닙니다. 이것은 예산, 토폴로지, 추적(Trace) 및 실패 정책을 갖춘 작은 런타임입니다.

신뢰도(Confidence): 어려운 경우에만 상향 조정 비용 지출

'신뢰도'는 비용을 인식하는 루프입니다. 더 작거나 저렴한 후보 모델로 시작한 다음, 답변을 멈추기에 충분히 신뢰할 수 있는지 평가합니다. 신뢰도 신호는 토큰 수준의 로그 확률(Log Probability), 로그 확률 마진, 하이브리드 점수, 자가 검증(Self-verification) 또는 AutoMix 방식의 수반 검증기(Entailment Verifier)에서 나올 수 있습니다.

점수가 임계값을 통과하면 라우터는 즉시 결과를 반환합니다. 점수가 너무 낮으면 라우팅 경로는 다음 후보 모델로 상향 조정됩니다. 중요한 부분은 상향 조정 기능이 존재한다는 것이 아닙니다. 상향 조정이 명시적인 라우터 정책, 즉 임계값, 실패 동작 및 중지 조건이 visible(보이고)하고 튜닝 가능하게 된다는 것입니다.

평가(Ratings): 엄격한 한도 내에서의 병렬 품질 보장

'평가'는 con...

원문 보기
원문 보기 (영어)
Table of Contents Everyone is watching for the next frontier model. The more interesting layer may be the one in front of it. Routers are becoming the control plane for AI inference. Their first role was practical: route the right request to the right model. That already matters because production AI is no longer a one-model world. A router can cut cost by deciding when a request deserves a frontier model and when an open-source or local model is enough. It can make safety policy executable by sending sensitive domains to stricter models, stricter filters, or stronger review paths. It can coordinate cloud and edge, keeping private or low-latency intent local while escalating harder work to the cloud. Those are important jobs. But the next router job is more interesting: A router can make the model better. Not by changing weights. Not by asking every application to build a bespoke agent graph. By turning one model API call into a bounded collaboration inside the serving layer. This is why Sakana Fugu landed so loudly: it made a commercial product out of a simple but powerful idea, that a "model" can be a surface, and behind that surface can be a team. The research around this idea, including the Fugu technical report and coordination papers such as Conductor and Trinity , gives useful language for thinking about orchestration. But the vLLM Semantic Router vision is different in where it puts the abstraction. Collaboration should not live only inside one commercial endpoint or one application-specific agent graph. It should become an open serving primitive. vLLM Semantic Router brings that idea into the open serving layer. The user still calls one model: Behind that stable model identity, the router can select a recipe, fan out to workers, collect a quorum, verify disagreement, synthesize a final answer, repair the output contract, and return one normal OpenAI-compatible response. The point is not to expose complexity. The point is to make collaboration feel like a model. The Looper Is the Runtime In vLLM Semantic Router, the looper is the execution runtime for bounded micro-agents. A request enters the router as an ordinary chat completion. The router extracts signals, projects them into task-shape or risk bands, matches a decision, and then chooses an algorithm. That algorithm may be a normal single-model route, or it may be a looper route. Today, the main looper patterns are: Confidence : a sequential escalation loop. It tries a cheaper candidate first, measures confidence, and escalates only when the score is too low. Ratings : a bounded fan-out loop. It runs multiple candidates under a hard concurrency cap and aggregates them with rating-aware weights. ReMoM : repeated mixture-of-model reasoning. It fans out breadth samples, waits for enough successful responses, and runs a final synthesis round. Fusion : a panel-judge-final pattern. Independent model responses become evidence for a judge and finalizer. Workflows : a micro-agent workflow runtime. It supports static roles or a dynamic planner, executes bounded worker steps, and synthesizes a final response. The implementation details matter. A looper is not a slogan for "ask more models." It is a small runtime with budget, topology, trace, and failure policy. Confidence: spend escalation only on hard cases Confidence is the cost-aware loop. It starts with a smaller or cheaper candidate, then evaluates whether the answer is confident enough to stop. The confidence signal can come from token-level log probability, logprob margin, a hybrid score, self-verification, or an AutoMix-style entailment verifier. If the score passes the threshold, the router returns immediately. If the score is too low, the route escalates to the next candidate. The important part is not that escalation exists. It is that escalation becomes explicit router policy: thresholds, failure behavior, and stopping conditions are visible and tunable. Ratings: parallel quality under a hard cap Ratings is the controlled ensemble loop. It launches several candidates in parallel, but only up to a configured max_concurrent cap. That makes it useful when a route should benefit from multiple model views without turning every request into an unbounded fan-out. The router collects successful responses, applies rating-aware aggregation, and handles failures according to the route policy. In practice, Ratings is a good fit for A/B-style evaluation, ensemble strategies, and routes where the operator already has meaningful per-candidate quality signals. ReMoM: breadth with a contract ReMoM is useful when the task has high reasoning variance and the answer format must survive the collaboration. It fans out multiple reasoning attempts, waits for a minimum-success quorum, then asks a synthesis model to merge evidence into the required output contract. If synthesis fails but earlier workers produced valid evidence, the route does not have to collapse into an API error. It can fall back to the best valid evidence and still return a normal response. Fusion: disagreement as signal Fusion starts from a different bet. Sometimes the useful object is not the average answer; it is the structure of disagreement. Independent panel answers become evidence. The judge sees agreement, contradiction, and unique insight, then the finalizer returns one answer with the trace collapsed behind the API. That makes Fusion especially useful when there are plausible competing paths: hard multiple-choice reasoning, long-form expert judgment, or exact-answer tasks where a single confident response can be brittle. Workflows: roles under a budget Workflows is the most agentic pattern, and also the one that needs the strictest boundaries. The planner can only choose allowed worker models. The plan is validated. Steps are bounded by max steps, max parallelism, timeouts, and error policy. The final response still has to satisfy the output contract. For SWE-style tasks, that means the router can express a planner, patcher, verifier, and finalizer without letting the application own a bespoke agent stack. For production serving, that distinction is critical: the loop is powerful, but it is still governed by infrastructure. Auto recipes: one model name, many loops The public surface remains one model name: vllm-sr/auto . Internally, the router can use signals and projections to choose the right loop for the request. Difficulty, risk, contract pressure, latency, and cost are not comments in a prompt. They are routing facts that can select Confidence, Ratings, ReMoM, Fusion, Workflows, or a fallback path. This is the difference between "agent as app logic" and "micro-agent as serving runtime." The router controls the budget, policy, topology, trace, and failure mode. Recipes Beat One Universal Loop The most important lesson from our eval work is not that one algorithm always wins. It is the opposite: The best loop is task-shaped. GPQA-Diamond wants strict multiple-choice answer preservation. LiveCodeBench wants runnable code and hidden-test robustness. Humanity's Last Exam wants disagreement resolution and exact-answer formatting. SWE-style tasks need a planner, patcher, verifier, and finalizer. That is why vllm-sr/auto should not mean "always run the biggest loop." It should mean: select the recipe that fits this task. In our recipes, that shape is explicit: GPQA-Diamond routes hard science multiple-choice prompts into a ReMoM recipe with strict ANSWER: X preservation. LiveCodeBench looks for constraints, starter code, standard input, float tolerance, timeout risk, and hidden-test risk before selecting a code-shaped loop. HLE detects formal reasoning, disagreement risk, long context, and exact answer pressure before choosing between deeper ReMoM, smaller Fusion, or a fallback path. This is why router-side collaboration is more than prompt engineering. The prompt is only one part. The recipe also defines model pool, model roles, reasoning effort, concurrency, quorum, timeout, syn