<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>LLM on ZQQ's docs</title><link>https://zqq.name/docs/llm/</link><description>Recent content in LLM on ZQQ's docs</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><atom:link href="https://zqq.name/docs/llm/index.xml" rel="self" type="application/rss+xml"/><item><title>性能指标</title><link>https://zqq.name/docs/llm/perf/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://zqq.name/docs/llm/perf/</guid><description>分析evalscope中有关perf的代码，梳理清楚 TTFT/ TPOT 等性能指标的定义和计算标准
TTFT # 定义：TTFT(time to first token)，从用户输入提示词（Prompt）到模型生成第一个输出 Token 的时间，仅统计流式响应。
代码实现：通过异步读取流式 HTTP 响应，在收到首个有效响应 chunk 时用客户端计时器计算 当前时间 - 请求起始时间。
# 单请求TTFT的定义: # `evalscope/evalscope/perf/utils/benchmark_util.py` 中的 `first_chunk_latency` # 平均TTFT= 所有**成功**请求的 `first_chunk_latency` 之和 / 成功请求数量： self.total_first_chunk_latency += data.first_chunk_latency avg_first_chunk_latency = _safe_div(self.total_first_chunk_latency, n) 只要首个 SSE JSON 中存在非空 choices，即使内容只是如下也会被记录为 TTFT：
{ &amp;#34;choices&amp;#34;: [ { &amp;#34;delta&amp;#34;: { &amp;#34;role&amp;#34;: &amp;#34;assistant&amp;#34; } } ] } 相关代码：
if choices := data.get(&amp;#39;choices&amp;#39;): if data.get(&amp;#39;object&amp;#39;) == &amp;#39;text_completion&amp;#39;: content = choices[0].get(&amp;#39;text&amp;#39;) or &amp;#39;&amp;#39; else: delta = choices[0].</description></item></channel></rss>