Files
papers/hanzo-stack-comparison/sections/23-named-competitor-scaffold.tex
zeekay 5b50a6c614 papers: add named-competitor comparison-table scaffold + repro spec to hanzo-stack-comparison
Add section 23 with literature-backed comparison scaffolds for:
- AI agent frameworks: vs LangGraph, AutoGen, CrewAI, OpenAI Agents SDK
- LLM inference engines: vs vLLM, TGI, TensorRT-LLM

Hanzo column entries marked [TBD-measure] until a controlled re-run
on the competitor's published harness is completed. Competitor cells
sourced to repos, papers, and third-party benchmark articles.
Reproducibility spec (hardware, models, software pins, decision rule)
documents what is needed to fill the [TBD] cells honestly.

No invented numbers; existing internal claims in sec 17/16 retained but
flagged in section 23 as not-yet-apples-to-apples vs literature.
2026-05-13 01:09:55 -07:00

147 lines
7.1 KiB
TeX

\onecolumn
\section{Named-Competitor Comparison Scaffold}
\label{sec:hanzo-named-comp}
%% ============================================================================
Sections~\ref{sec:agents} and \ref{sec:inference} report headline numbers
for Hanzo Agent and Hanzo Engine. This section publishes the same
comparisons against \emph{cited literature numbers} for each named
competitor, with Hanzo cells marked \texttt{[TBD-measure]} until the
corresponding controlled run is published. \textbf{This is the table
that wins or loses the ``integrated stack'' claim under audit.}
\subsection{AI Agent Frameworks}
\subsubsection*{Competitors and Why}
\begin{itemize}
\item \textbf{LangGraph}~\cite{langgraphgithub} --- LangChain's
graph-orchestration framework; the most-deployed multi-agent
runtime in production today~\cite{pecollective2026agentframeworks}.
\item \textbf{AutoGen}~\cite{autogengithub} --- Microsoft Research's
conversational multi-agent framework.
\item \textbf{CrewAI}~\cite{crewaigithub} --- role-based orchestration;
widely adopted in the SaaS startup segment.
\item \textbf{OpenAI Swarm / Agents SDK}~\cite{openaiagentssdk} ---
OpenAI's minimal handoff-based agent SDK.
\end{itemize}
\subsubsection*{Performance Scaffold}
\begin{table}[H]
\centering
\small
\begin{tabular}{@{}lrrrl@{}}
\toprule
\textbf{Framework} & \textbf{Overhead / step} & \textbf{Token overhead} & \textbf{Task completion} & \textbf{Source} \\
\midrule
\textbf{Hanzo Agent} & \texttt{[TBD-measure]} & \texttt{[TBD-measure]} & \texttt{[TBD-measure]} & this paper \\
\midrule
LangGraph & $\sim$1.2\,s (10-step pipeline) & baseline & 76\% (medium tasks) & \cite{pecollective2026agentframeworks,pooya2026frameworks} \\
AutoGen & --- & +24\% over LangChain & 68\% (medium tasks) & \cite{pecollective2026agentframeworks,pooya2026frameworks} \\
CrewAI & --- & up to 3$\times$ LangGraph on simple flows & 71\% (medium tasks) & \cite{pooya2026frameworks} \\
OpenAI Swarm / Agents SDK & not in public benchmark & not in public benchmark & not in public benchmark & \cite{openaiagentssdk} \\
\bottomrule
\end{tabular}
\caption{Agent-framework performance scaffold. Numbers in the competitor
rows are from the cited 2026 third-party benchmark blogs; the methodology
is not yet a formal academic publication, so the comparison should be
treated as ``best public number'' rather than ``gold-standard.'' The
Hanzo column requires a re-run inside the same harness.}
\label{tab:hanzo-agent-comparison}
\end{table}
\begin{table}[H]
\centering
\small
\begin{tabular}{@{}lcccl@{}}
\toprule
\textbf{Framework} & \textbf{MCP native} & \textbf{Direct deps} & \textbf{Open source} & \textbf{Source} \\
\midrule
Hanzo Agent & yes & 12 & yes & this paper \\
LangGraph & partial (via adapter) & 28+ & yes & \cite{langgraphgithub} \\
AutoGen & no & $\sim$35 & yes & \cite{autogengithub} \\
CrewAI & no & $\sim$45 & yes & \cite{crewaigithub} \\
OpenAI Agents SDK & no & small (proprietary) & no (proprietary core) & \cite{openaiagentssdk} \\
\bottomrule
\end{tabular}
\caption{Capability scaffold for agent frameworks. The MCP-native column
is the row where Hanzo Agent is structurally distinct; the others can be
made MCP-compatible only via plug-in.}
\label{tab:hanzo-agent-caps}
\end{table}
\subsection{AI Inference Engines}
The Hanzo Engine row in Section~\ref{sec:inference} reports performance
against vLLM, TGI, and Triton with internal numbers. Public numbers for
those baselines vary widely across hardware and quantisation; the scaffold
here pins them to one specific configuration class.
\begin{table}[H]
\centering
\small
\begin{tabular}{@{}lrrl@{}}
\toprule
\textbf{Engine} & \textbf{Tok/s (A100, 7B FP16)} & \textbf{Tok/s (A100, 70B AWQ)} & \textbf{Source} \\
\midrule
\textbf{Hanzo Engine} & \texttt{[TBD-measure]} & \texttt{[TBD-measure]} & this paper \\
\midrule
vLLM (v0.5+) & 2{,}500--3{,}500 (batch) & $\sim$500--900 (batch) & \cite{vllmrepo,vllmpaper} \\
TGI (HF, v2.x) & 2{,}000--3{,}000 (batch) & $\sim$400--800 (batch) & \cite{tgirepo} \\
Triton + TensorRT-LLM & 3{,}500--4{,}500 (batch, FP8) & $\sim$700--1{,}100 (batch, FP8) & \cite{tensorrtllm} \\
\bottomrule
\end{tabular}
\caption{LLM inference throughput scaffold. Ranges in the competitor rows
reflect the actual variance in public reports; Hanzo Engine must be
re-measured under each baseline's published configuration before a
specific ``faster than vLLM'' claim is published.}
\label{tab:hanzo-engine-scaffold}
\end{table}
\subsection{Reproducibility Specification}
\label{sec:hanzo-repro}
\begin{itemize}
\item \textbf{Hardware (agents).} Single \texttt{c6i.4xlarge} for the
agent overhead measurement; LLM endpoint on Azure (matches the
AutoGen baseline in \cite{pooya2026frameworks}).
\item \textbf{Hardware (inference).} 1$\times$NVIDIA A100 80\,GB for
the 7B FP16 benchmark; same A100 for the 70B AWQ benchmark;
\texttt{p4d.24xlarge} for the 8$\times$A100 multi-GPU baseline.
\item \textbf{Models.}
Qwen3-7B-Instruct FP16 (matches Hugging Face vLLM/TGI defaults);
Qwen3-72B-AWQ (matches the Hanzo paper's existing config);
2048 input tokens, 512 output tokens, batch 64.
\item \textbf{Software pins.}
\texttt{vllm-project/vllm} v0.6+; \texttt{huggingface/text-generation-inference}
v2.4+; \texttt{NVIDIA/TensorRT-LLM} v0.13+; \texttt{hanzoai/engine}
at the freeze tag of this paper.
\item \textbf{Agent harness.}
Re-implement the five-tool research task from
Section~\ref{sec:agents} in each of LangGraph, AutoGen, CrewAI,
OpenAI Agents SDK, and Hanzo Agent, hitting the \emph{same}
OpenAI-compatible LLM endpoint to neutralise the model variable.
Report overhead per step (excluding LLM latency), token overhead
(with deterministic seed), and task completion on the
\texttt{$\tau$-bench}-style harness used by
\cite{pooya2026frameworks}.
\item \textbf{Decision rule.} Hanzo wins a cell only if it beats the
best-published competitor number on the \emph{same hardware,
same model, same prompt set}, with $\geq$~3 runs and reported
variance. Cells where the comparison cannot be made
apples-to-apples (e.g.\ OpenAI Agents SDK's proprietary core)
are reported as ``incomparable,'' not as a win.
\end{itemize}
\paragraph{Honest framing.} The current Hanzo paper's headline numbers
(2.1\,ms agent step overhead; 180k TPS Quasar; 4.2\,M ops/s ZAP) are
\emph{Lux/Hanzo internal} measurements. They are useful as upper bounds
on what the integrated stack can achieve, but they are not yet defended
against the competitor's own preferred harness. That defence is the
content of this section's scaffold; it is unfinished until the cells
populate.
\twocolumn
%% ============================================================================