星火 X2.5 复测:写封请假邮件抄 40 遍"任务要求"?换个接口它正常了

Spark-X2.5 能力实测第 4 期 · 调用方式对比机器:R9-7900 + RTX 3070 8G + 64G | 引擎:llama.cpp(XHToken fork) 需要引擎自己玩的,关注GZH回复【llamacpp】【X2.5】获取上期(能力实测 04)我用"续写接口"测四档模型写作,结论是"1.7B 比 4B 会写、4B 把任务要求抄了四十遍"。这期我打自己的脸:换成"对话接口"重测,写作表现天差地别。先说清楚:上期数据是真的,这期数据也是真的——变的不是模型,是我调用它的方式。
一、先复盘:上期我测出了什么
上期 12 道办公写作题(请假邮件、会议通知、客服回复、起标题……),四档模型各跑两轮,通过数:
|
1.7B-F16 |
13/24 |
最稳 |
|
1.7B-Q4 |
12/24 |
紧随其后 |
|
4B-Q4 |
8/24 |
掉一截 |
|
4B-F16 |
4/24 |
断崖垫底 |
最扎眼的是 4B-Q4 写请假邮件时把"【任务要求】"复读了 40+ 行,4B-F16 多数时候不动笔。上期我据此建议:"办公写作选 1.7B,别让 4B 写东西。"
这个结论,这期要收回一大半。
二、转折:我发现了测试方法的一个漏洞
上期(含更早几期)我用的是llama.cpp 的"续写"接口(/v1/completions)——把题目当纯文本喂进去,让模型接着往下写,没套对话模板。
对 X2.5 这种"思考型"模型,这可能是错的用法:它训练时见到的是"用户说一句 → 我思考 → 我回答"的对话结构。不给对话模板,它不知道"该回答我了",就容易在题面上打转——复读任务要求、分析题目、迟迟不动笔。
不是瞎猜。同一道请假邮件题、同一个 4B-Q4 模型,唯一变量是接口:
续写接口(上期用法):
【任务要求】【任务要求】【任务要求】【任务要求】【任务要求】……(复读 40+ 行)
对话接口(本期,套官方 chat 模板):
尊敬的领导:因家中突发事务,我需于明天下午请假半天。此前,我已将手头工作仔细做好交接安排,确保各项事宜顺利推进,无工作延误风险。恳请领导批准。

同一颗脑子,一个像卡带,一个像正常人。差异全在你怎么叫它。
三、上期最惨的 4B-F16,换接口后一样正常
上期 4B-F16 是"断崖垫底":请假邮件它幻觉出一整套"高考作文题"("每一代人有每一代人的担当"材料 + 800 字要求),完全没在答我的题。
对话接口下,同一道题的输出:
尊敬的领导:您好!因明日下午家中突发急事,需向您请假半天,恳请批准。为确保工作顺利推进,我已提前做好手头工作的详细交接与安排,相关资料均已妥善同步给接班同事。望您理解并予以批准,感谢!
上期"全军覆没"的两道题(会议邀请函称呼、外卖差评回复),对话接口下 4B-Q4 的输出:
会议邀请函称呼(要求:单独一行,只输出称呼):
尊敬的陈总,诚邀您出席本次产品发布会!
外卖差评回复(要求 ≤100 字、必须致歉):
非常抱歉,餐品凉透、汤洒漏的问题让我们深感愧疚。这反映出配送与包装环节存在疏漏,我们已立即加强保温及防漏包装,并严管配送流程。后续定会严控细节,尽力弥补,感谢您的批评与监督!
这几段输出放一起,不用我多说,你也看得出谁正常谁不正常。这就是这期我最想让你看的东西——输出原文,比任何分数都直观。
四、全量数据:不是某一题幸运,是系统性差异
怕你觉得"就一题碰巧",我把全套 53 题(不止写作,含信息提取、JSON 输出、Agent 类任务)用两个接口各跑一遍(温度都用官方推荐的 1.0)。四档模型、两个接口,通过数:
|
1.7B-F16 |
14/53 = 26.4% |
36/53 = 67.9% |
+22 题 |
|
4B-Q4 |
11/53 = 20.8% |
35/53 = 66.0% |
+24 题 |
|
4B-F16 |
6/53 = 11.3% |
34/53 = 64.2% |
+28 题 |
|
1.7B-Q4 |
14/53 = 26.4% |
30/53 = 56.6% |
+16 题 |
这张表只说明一件事:续写接口把四档全部系统性压低,换成对话接口每档多过 16~28 题。
注意——我不拿这张表给四个模型排名。单次采样下,36/35/34 这种差距可能纯粹来自随机性,但是“对话”>“续写” 这个差距远超噪声,是稳的。
五、这个级别的模型,写作到底什么水平?肉眼可见
跑完这轮,我对"1B~4B 小模型写作水平"的判断反而更清晰了——不用抠分数,看输出就知道:
✅ 能写的:套路型公文,改改就能用。请假邮件、会议通知、系统公告这类有固定模板的,四档模型对话接口下都能交出像样的成品——上文的请假邮件、外卖回复就是例子,结构、礼貌用语、关键信息都在,个别地方微调即可。
⚠️ 要留意的:约束容易松。"只输出这一句""不要解释"这类格式纪律,小模型时灵时不灵——上期就发现它会把"写一句广告语"理解成"写一篇卖点分析"。字数、格式约束,要么自己盯,要么提示词里强调三遍。
❌ 写不了的:要共情、要临场应变的。客户投诉安抚、差评回复要"看人下菜"时,四档都偏机械——道歉是道了,但读起来像模板。这类活它只能打草稿。
🔍 还有一类"技术性翻车":想太多,把答案想没了。对话接口下四档仍有 9~14 题"只思考没落笔"——思考内容一大段,答案区却是空的。集中在合同对比、会议纪要、评论情绪这类"要读一大段、再写一大篇"的题。1.7B-Q4 最严重(14 题)。这不是它不想答,是思考占满了 token 预算,没来得及写答案——长任务要么给足预算,要么拆小。
六、这期对你有啥用(方法 > 结论)
与其说这是"4B 翻案",不如说是一次评测方法的自我纠错。三条可复用:
测"思考型"模型,先确认调用方式对不对。续写 ≠ 对话。看到"复读题目""分析题目不下笔"这类输出,先怀疑是不是没套模板,别急着给模型定罪——我上期就给 4B 定了罪,这期翻案了。
同一个模型,接口换一下,53 题能差 28 题。以后谁跟你说"XX 模型很烂",先问他用的什么接口。
看模型水平,优先看输出原文,分数只当参考。尤其小模型写作,一段真实输出比一张通过率表信息量大得多——这期和上期都是这么干的。
本地跑 X2.5 怎么用对接口:llama-server 启动加 –jinja(启用官方对话模板),请求走 /v1/chat/completions 而非 /v1/completions。参数放文末。
下期预告:接口对了,那让Agent(自动调工具、多轮思考)去跑同一批题,X2.5 又是什么水平?以及四档到底谁强——我会补多轮采样再下结论,不拿单次数据糊弄你。
附:完整数据表(53题,temp=1.0, top_p=0.95,单次采样)

|
1.7B-F16 |
26.4% |
67.9% |
7/12 |
10/12 |
|
4B-Q4 |
20.8% |
66.0% |
4/12 |
11/12 |
|
4B-F16 |
11.3% |
64.2% |
1/12 |
11/12 |
|
1.7B-Q4 |
26.4% |
56.6% |
5/12 |
7/12 |
排序仅为阅读方便,不代表能力排名。档间 1~6 题差距处于单次采样噪声范围,模型间孰强孰弱待多轮采样确认。"写作·续写"为续写接口 t1.0 单轮;文章 04 的通过数口径是两轮合计(温度0+1.0),故与此表数值不同,结论方向一致。口径说明:53 题中含 6 道 Agent 场景题(任务分解/工具选择/异常处理等),测的是"模型在文字场景中给出合理回应",未套真实工具调用——它们不构成对模型 Agent 能力的结论,仅供场景理解参考。
测试环境:R9-7900 12C/24T · RTX 3070 8G · 64G · Windows · CUDA 13.3.1 · llama.cpp XHToken fork调用方式:llama-server /v1/chat/completions + –jinja 官方模板(对照:/v1/completions 裸续写)判分口径:关键词+格式初筛,本文引用输出均人工复核。全部数据来自本机运行日志,可复现。
往期内容:
第一篇:为了跑星火Spark-X2.5,我把 llama.cpp 重新编译了一遍
星火 X2.5 文档分析实测:四个档位读同一份日志,最慢的确实质量最高
星火X2.5写作实测,跟我想象的完全不一样
网硕互联帮助中心



评论前必须登录!
注册