1. 实验目标

本次实验旨在系统比较不同国产大模型在 DolphinDB 代码任务中的实际表现,并为后续模型选型提供依据。评估主要围绕结果质量过程质量稳定性以及效率展开。

结果质量关注模型是否能够产出可运行、可验收的 DolphinDB 脚本,关注其产出是否正确且规范。

过程质量关注模型在求解过程中对文档检索、工具调用、测试验证以及基于报错信息持续修正的能力,目的是考察模型对预设技能提示词的遵守程度。

稳定性主要从三个维度进行考察。其一,体验一致性,即模型在相同任务要求下经过多次平行实验后,表现是否保持稳定。其二,跨任务波动性,即同一模型在不同任务要求下的表现差异及其波动幅度。其三,鲁棒性,即模型在环境异常或外部条件受扰动的情况下,是否仍能按照规范完成实验流程,并对错误进行准确报告与合理反馈。

本报告将回答以下问题:

1.1. 哪些模型在 DolphinDB 任务上总体表现较好?

2.2. 模型差异主要体现在哪些能力上?

3.3. 后续建设 DolphinDB 代码生成 Agent,应优先选用哪款模型?

2. 平台与流程

本次实验使用 DolphinDB XLab 作为测试平台。

在这里插入图片描述

如上图所示,整个评测平台可以划分为四个层级:第一层是 Task Author,即任务生成层。它负责输入语料,并以 JSON 格式输出结构化的任务描述与验收约束。第二层是 Render,即任务目录渲染层。它的作用是将上述结构化任务固化为一个稳定的任务目录结构。第三层是 Solver,即解题器。它负责驱动 Agent,在给定上下文环境中完成代码开发与调试的完整流程。第四层是 Reviewer,包括 Judger 与 Distiller,即评分与复盘层。它包含两种工作模式:其一是评分模式,依据预设细则对 Solver 的解题成果进行量化评估;其二是蒸馏模式,旨在从解题过程中暴露的实际问题出发,为后续的 Skill 编写与文档完善提供改进建议。

一次完整 实验轮次 的执行链路如下:

1.1. Task Author 读取输入材料,生成结构化任务描述。

2.2. Render 将任务描述渲染为稳定的任务目录,包括任务文本、提示词、运行目录和评审输入。

3.3. Solver 驱动 Agent 在任务目录中完成代码编写、调试和结果产出。

4.4. Judger 对结果进行评分,输出 judgment.json。

围绕这条主流程,平台提供了分组管理、批量启动、多线程执行、阶段重跑、运行过程追踪、结果文件查看以及统计分析。确保批量完成大规模实验并在实验结束后快速定位问题、整理结果并生成对比图表。

本次报告后续涉及的各项数据,例如 round 状态、评分结果、运行耗时、Token 消耗、执行次数和错误类型,均来自上述流水线在运行过程中沉淀的结构化记录。

3. 任务与评分

本次实验的题目由 Task Author 自动生成,共计5道题目,涉及因子计算与存储DECIMAL 类型OLTP交易账户表流计算引擎分钟K线数据入库与日K聚合计算,完整题目见附录A。

评分满分为 100 分,采用分项打分。当前评分细则如下:

评分项 分值 评分细则
结果正确 30 最新执行尝试 为基准,对比任务要求的输出要求,检查是否有真实运行成功证据、结果是否正确。
代码风格 15 检查代码结构、命名、注释和可维护性,参考 dolphindb-expert 中的代码风格要求。
工具使用 15 检查是否合理使用函数索引查询文档阅读编译探针代码执行器,尤其看是否先做探针再真实运行,工具参数是否使用正确。
文档查询 10 检查是否基于文档定位 API、参数和用法,API 型题目会重点看是否有充分的文档阅读证据。
技能遵守 10 对照 dolphindb-expert 的 SKILL.md,检查函数发现、文档阅读、编译探针、执行顺序和开发流程是否符合要求。
测试实验 10 遇到问题后是否做了最小可验证实验来定位原因,而不是反复堆补丁。
调试效率 5 检查是否能根据报错快速收敛,是否存在长时间重复同类错误、无效修补或低效试错。
时间成本 5 结合总耗时和 Token 消耗评分。10 分钟内且 3M Token 内可视为优秀;超过 20 分钟或 5M Token 需要扣分。

“代码能力”由结果正确和代码风格构成,对应结果质量

“纪律性”由工具使用、文档查询、技能遵守和测试实验构成,对应过程质量

“效率”由调试效率和时间成本构成,作为额外的考量。

评分结果由 Judger 自动输出到 judgment.json,并经过归一化后作为最终得分。

本次实验只比较模型能力。出现 401、429、502、代理异常、网络中断、权限问题等外部故障时,该轮会标记为无效样本,并在条件允许时安排重跑。

4. 实验设置

实验按Group组织,共 11 组,对应不同任务和不同批次的重复实验。当前分组如下:

任务 组别
task01 Group-001-task01, Group-006-task01
task02 Group-002-task02, Group-007-task02
task03 Group-003-task03, Group-008-task03
task04 Group-004-task04, Group-009-task04, Group-010-task04-badenv
task05 Group-005-task05, Group-011-task05

其中,Group-010-task04-badenv 为特殊环境组,后续分析时单独分析。

本次实验实际使用的模型及轮次数如下,共计12个模型, 117轮:

模型名称 样本数
gpt-5.4 8
glm-5 11
qwen3.6-plus 12
kimi-k2.5 12
minimax-m2.5 11
qwen3.5-plus 12
minimax-m2.7 11
deepseek-v3.2 12
deepseek-r1 2
glm-5.1 5
deepseek-v4-flash 11
deepseek-v4-pro 10

执行参数方面,本批样本中的 Solver 均采用 solve 模式,采用QwenCode后端,思考模式均为打开,运行权限统一为 danger-full-access。

去除非模型自身因素导致失败的轮次,保留常规环境、任务覆盖完整的样本,共 94 轮,分布如下:

模型名称 样本数
gpt-5.4 7
deepseek-v4-pro 9
deepseek-v4-flash 10
minimax-m2.7 8
qwen3.6-plus 10
glm-5 11
kimi-k2.5 11
minimax-m2.5 10
qwen3.5-plus 11
deepseek-v3.2 6
deepseek-r1 1

后续结果分析、图表绘制和模型对比,均基于上述 94 轮样本进行。

5. 总体结果分析

最终纳入统计的 94 轮主比较样本平均得分为 73.2 分。其中,passed 48 轮,warning 19 轮,failed 27 轮。整体上看,模型之间的分层已经比较清楚,高分模型在结果质量和稳定性上都更强,低分模型则更多停留在部分完成或中途失败。

注:Passed 表示结果正确,且综合得分达到 80 分以上;Warning 表示结果基本可用,但过程质量存在一定不足,综合得分通常介于
60 至 80 分之间;Failed 表示任务未成功执行、结果不正确,或综合得分低于 60 分。

各模型总分分布总表如下:

在这里插入图片描述

模型名称 样本数 平均得分 得分标准差 得分 CV 优秀率 平均耗时(秒) 平均 Token(M) 平均运行次数
gpt-5.4 7 88.1 4.6 0.053 100.0% 541.5 2.316 2.4
deepseek-v4-pro 9 84.7 3.9 0.046 100.0% 644.9 1.671 2.6
deepseek-v4-flash 10 81.0 10.4 0.129 80.0% 430.8 1.738 2.8
minimax-m2.7 8 78.1 9.4 0.121 62.5% 851.3 2.492 4.2
qwen3.6-plus 10 76.0 9.8 0.130 40.0% 440.5 1.835 3.3
glm-5 11 74.8 16.8 0.224 45.5% 686.3 1.759 4.0
kimi-k2.5 11 66.8 14.3 0.214 9.1% 893.1 2.490 5.1
minimax-m2.5 10 65.6 19.3 0.294 30.0% 643.5 2.480 8.2
qwen3.5-plus 11 63.7 18.6 0.292 27.3% 870.9 4.935 13.9
deepseek-v3.2 6 60.8 24.4 0.402 50.0% 992.9 1.864 1.3
deepseek-r1 1 31.0 0.0 0.000 0.0% 715.7 0.266 0.0

在这里插入图片描述

5.1 平均得分情况

在这里插入图片描述

从图中可以看出:

gpt-5.4deepseek-v4-pro 构成第一梯队,平均分分别为 88.1 和 84.7。

deepseek-v4-flashminimax-m2.7 紧随其后,平均分分别为 81.0 和 78.1。

qwen3.6-plus glm-5 处在 75 分上下,仍属于表现较强的一组。

kimi-k2.5minimax-m2.5qwen3.5-plus deepseek-v3.2 仍集中在 60 至 67 分区间。

deepseek-r1 当前有效样本数仍然不足无法进行分析。

5.2 优秀率

模型名称 样本数 平均得分 优秀率
gpt-5.4 7 88.1 100.0%
deepseek-v4-pro 9 84.7 100.0%
deepseek-v4-flash 10 81.0 80.0%
minimax-m2.7 8 78.1 62.5%
qwen3.6-plus 10 76.0 40.0%
glm-5 11 74.8 45.5%
kimi-k2.5 11 66.8 9.1%
minimax-m2.5 10 65.6 30.0%
qwen3.5-plus 11 63.7 27.3%
deepseek-v3.2 6 60.8 50.0%
deepseek-r1 1 31.0 0.0%

优秀率方面gpt-5.4 和 deepseek-v4-pro 当前都达到 100.0%。

deepseek-v4-flash 的优秀率为 80.0%,已经明显高于当前国产第二梯队。

minimax-m2.7 的优秀率为 62.5%,在非 DeepSeek-V4 系列的国产模型里最高。

deepseek-v3.2 虽然平均分不高,但优秀率达到 50.0%,波动性极大。

qwen3.6-plus 和 glm-5 的优秀率分别为 40.0% 和 45.5%,主要还是集中在 70 至 80 分区间。

kimi-k2.5 的优秀率仅 9.1%,是第三梯队中最明显的短板。

5.3 稳定性

模型名称 样本数 平均得分 得分标准差 得分 CV
gpt-5.4 7 88.1 4.6 0.053
deepseek-v4-pro 9 84.7 3.9 0.046
deepseek-v4-flash 10 81.0 10.4 0.129
minimax-m2.7 8 78.1 9.4 0.121
qwen3.6-plus 10 76.0 9.8 0.130
glm-5 11 74.8 16.8 0.224
kimi-k2.5 11 66.8 14.3 0.214
minimax-m2.5 10 65.6 19.3 0.294
qwen3.5-plus 11 63.7 18.6 0.292
deepseek-v3.2 6 60.8 24.4 0.402
deepseek-r1 1 31.0 0.0 0.000

deepseek-v4-pro 的 CV 只有 0.046,是当前最稳的一组。

gpt-5.4 的 CV 也只有 0.053,稳定性同样很高。

minimax-m2.7deepseek-v4-flash qwen3.6-plus 的 CV 都在 0.13 左右,波动仍然可控。

glm-5 的平均分不低,但标准差达到 16.8,说明在第二梯队的模型当中,其不同轮次之间仍有明显起伏。

deepseek-v3.2 的 CV 高达 0.402,是目前波动最大的模型之一,说明其不同任务、不同轮次下的结果不够稳定。

minimax-m2.5qwen3.5-plus 的 CV 也接近 0.3,整体收敛性不算理想。

5.4 时间与Token成本

在这里插入图片描述
在这里插入图片描述

deepseek-v4-flash 的平均耗时最短,仅为 430.8 秒,qwen3.6-plus 以 440.5 秒紧随其后。

gpt-5.4 的平均运行次数只有 2.4 次,deepseek-v4-pro 也只有 2.6 次,收敛都很快。

deepseek-v4-pro 的平均 Token 消耗最低,仅为 1.671M。glm-5 deepseek-v4-flash 也都控制在 1.8M 左右。

qwen3.5-plus 的问题较为突出:其平均 Token 消耗达到 4.935M,平均运行次数达到 13.9 次,均显著高于其他模型,反映出较弱的调试能力与较大的资源开销与执行成本。

minimax-m2.5 的平均运行次数也处于较高水平,达到 8.2 次,效率层面存在较为明显的损失。

5.5 小结

综合上述分析,在已评测的国产模型中,第一梯队主要是 deepseek-v4-prodeepseek-v4-flashminimax-m2.7,其后是 qwen3.6-plus glm-5。其中,deepseek-v4-pro 的上限和稳定性最好,deepseek-v4-flash 的效率最突出,minimax-m2.7 仍是非 DeepSeek-V4 模型里最稳的一组。qwen3.6-plus 也有较好的效率表现,但综合上限和优秀率仍低于前三组;glm-5 的优势主要在 Token 成本控制。作为对照,gpt-5.4 在本轮实验中仍表现出最强的综合能力。

模型名称 综合能力 体验一致性 优秀率 时间花费 Token花费
gpt-5.4 很好 很好 很高 较快 较少
minimax-m2.7 较好 较好 较高 一般 一般
qwen3.6-plus 较好 较好 较低 较快 较少
glm-5 较好 一般 较低 一般 较少
kimi-k2.5 一般 一般 很低 较慢 一般
minimax-m2.5 一般 较差 较低 一般 一般
qwen3.5-plus 一般 较差 较低 一般 极多
deepseek-v3.2 一般 较差 一般 较慢 较少

6. 按模块分析

为了避免总分掩盖细节,本节将 8 个评分项进一步归并为 3 个能力模块:

•代码能力:结果正确 + 代码风格,满分 45 分。

•纪律性:工具使用 + 文档查询 + 技能遵守 + 测试实验,满分 45 分。

•效率:调试效率 + 时间成本,满分 10 分。

按这划分统计后,各模型的模块均值如下:

模型名称 代码能力 纪律性 效率
gpt-5.4 41.9 37.0 9.2
deepseek-v4-pro 40.2 35.7 8.8
deepseek-v4-flash 38.4 33.6 9.0
minimax-m2.7 36.6 33.6 7.8
qwen3.6-plus 35.7 31.8 8.4
glm-5 35.3 31.5 8.0
kimi-k2.5 30.0 29.7 7.0
minimax-m2.5 29.6 28.5 7.5
qwen3.5-plus 31.2 26.6 5.9
deepseek-v3.2 27.3 26.8 6.7
deepseek-r1 13.0 12.0 6.0

模型小分表如下:

模型名称 正确性 风格 工具 文档 技能 测试 调试 效率
gpt-5.4 28.4 13.4 14 9.1 5 8.9 4.8 4.4
deepseek-v4-pro 27.2 13 13.1 9 5 8.6 4.8 4
deepseek-v4-flash 25.3 13.1 12.3 8.3 5 8.1 4.2 4.8
minimax-m2.7 24.8 11.9 12.1 8.5 5 8 3.8 4.1
qwen3.6-plus 23.9 11.8 11.7 8 4.9 7.2 3.7 4.8
glm-5 23.4 12 11.1 8.1 4.9 7.4 3.8 4.1
kimi-k2.5 19.1 10.9 10.7 7.4 4.9 6.7 3.2 3.8
minimax-m2.5 19.2 10.4 11 6.1 4.8 6.6 3.3 4.2
qwen3.5-plus 20.1 11.1 8.6 7.4 4.6 6 3.2 2.7

6.1 代码能力

在这里插入图片描述

gpt-5.4 deepseek-v4-pro 处在最前,均值分别为 41.9 和 40.2,已经接近该模块满分。

deepseek-v4-flash 以 38.4 分排在其后,minimax-m2.7qwen3.6-plus glm-5 集中在 35 分上下,第二梯队的代码能力差距不大。

第三梯队模型之间差距不大,qwen3.5-pluskimi-k2.5 minimax-m2.5 大致处于 30 分上下,它们在结果正确性或最终收敛上不够稳定。

deepseek-v3.2 的代码能力波动很大,表明它在 DolphinDB 语法和结果交付上的稳定性偏弱,这和前文的结论是相符的。

6.2 纪律性

在这里插入图片描述

纪律性可以近似看作过程质量。分数越高,说明工具调用、文档查阅、技能遵守和测试流程越完整。

gpt-5.4 仍然最高,为 37.0 分。国产模型里,deepseek-v4-pro 以 35.7 分领先,deepseek-v4-flash minimax-m2.7 同为 33.6 分,头部顺序已经拉开。

qwen3.6-plus glm-5 分别为 31.8 和 31.5,也处在较高水平。qwen3.5-plus 只有 26.6 分,是中游模型里纪律性最弱的一组。kimi-k2.5 minimax-m2.5 略高一些,但和前排模型仍有明显差距。

6.3 效率

在这里插入图片描述

相较于上一章的平均耗时和平均Token消耗量,效率更看重的是投入产出比,即使一个模型的评价耗时很短,但是产出很少,效率这一项也不会被判高分。

gpt-5.4 仍然最高,为 9.2 分。国产模型里,deepseek-v4-flash 以 9.0 分排第一,deepseek-v4-pro 为 8.8 分,qwen3.6-plus 为 8.4 分,这三组在效率上领先最明显。

glm-5 的效率得分为 8.0,minimax-m2.7 为 7.8,都低于前三组。

qwen3.5-plus 只有 5.9 分,是效率最弱的一组。它的 Token 消耗和尝试次数都明显偏高。kimi-k2.5 deepseek-v3.2 也偏低,长链路试错更常见。

7. 按任务分析

本次纳入分析的有效任务共 5 个,分别是:

任务 ID 任务名称 难度
task1 实现日内收益率偏度因子计算与存储
task2 创建 OLTP 交易账户表并实现事务性转账操作
task3 使用 DECIMAL 类型避免移动平均计算精度损失
task4 构建并行流计算引擎处理多股票因子
task5 DolphinDB 股票分钟K线数据入库与日K聚合计算

任务整体结果如下:

任务 ID 样本数 平均得分 得分标准差 优秀率 覆盖模型数
task1 16 66.4 16.7 31.2% 10
task2 19 71.7 16.0 42.1% 11
task3 24 72.9 15.7 45.8% 10
task4 18 84.4 8.9 88.9% 10
task5 17 69.9 20.5 47.1% 10

其中task1 难度最大,平均得分只有 66.4 分,优秀率仅 31.2%(除去deepseek-v4系列的两个模型后,优秀率甚至只有8.2%)。观察该任务各个模型的表现,能够更好的看出模型之间的真实差距。task5 的标准差高达 21.5,是五类任务中波动最大的,区分度很强。比较适合观察模型泛化能力差异的任务。

下面是不同模型在不同任务之间的平均分统计信息。

模型名称 跨任务平均分 跨任务标准差 跨任务 CV
gpt-5.4 86.6 4.8 0.055
deepseek-v4-pro 84.3 3.3 0.039
deepseek-v4-flash 81.0 11.0 0.136
minimax-m2.7 77.7 8.3 0.106
qwen3.6-plus 76.3 4.8 0.063
glm-5 74.0 13.4 0.181
kimi-k2.5 67.2 11.9 0.178
deepseek-v3.2 65.0 24.8 0.381
qwen3.5-plus 64.2 14.1 0.220
minimax-m2.5 63.2 16.9 0.268

deepseek-v4-pro 的跨任务 CV 只有 0.039,是当前最稳的一组。gpt-5.4 qwen3.6-plus 也都在 0.06 左右,跨任务一致性很强。minimax-m2.7 的 CV 为 0.106,仍然处在稳定区间。

deepseek-v4-flash 的总分很高,但跨任务 CV 为 0.136,高于 minimax-m2.7 qwen3.6-plus。它在 task2 只有 62.0 分,在其余四个任务上都在 82 分以上,任务依赖性已经比较明显。

glm-5kimi-k2.5qwen3.5-plus minimax-m2.5 的波动更大。glm-5 task4 达到 88.5,但在 task5 只有 54.8。minimax-m2.5 task4 为 84.5,但在 task5 只有 44.5。deepseek-v3.2 的跨任务 CV 高达 0.381,从 task1 的 36.0 到 task4 的 86.0,起伏最大。

任务难度与模型分化之间并非线性关系,低门槛任务反而暴露了模型能力结构的深层“偏科”。评测中最难的 task1 标准差仅 15.4,模型表现被难度压平;而看似简单的 task5 标准差高达 21.5,部分模型轻松满分,部分模型明显掉队。

8. 异常处理能力

Group-010-task04-badenv task4 的特殊环境组,共 7 轮,覆盖 7 个模型

先看整体结果:

样本组 样本数 平均分 优秀率 平均运行次数 平均耗时(秒) 平均 Token(M)
正常 task4 14 83.4 85.7% 2.1 430.4 1.222
badenv task4 7 50.6 0.0% 1.0 460.2 0.899

平均分只有 50.6,比分正常环境下的 task4 低了 32.8 分。虽然 7 轮全部失败,但组内仍然有轻微分化:

模型 badenv 得分 正常 task4 均分 分差
gpt-5.4 56.0 91.5 -35.5
glm-5 55.0 88.5 -33.5
kimi-k2.5 55.0 70.0 -15.0
qwen3.5-plus 51.0 80.5 -29.5
qwen3.6-plus 49.0 79.0 -30.0
minimax-m2.7 45.0 86.5 -41.5
minimax-m2.5 43.0 84.5 -41.5

gpt-5.4 这一轮虽然同样失败,但 Judger 明确认为它的脚本结构、文档依据和最小环境实验都比较完整,失败原因集中在没有真实运行成功证据。

相比之下,minimax-m2.5minimax-m2.7 这两轮除了环境阻断,还被额外指出了脚本静态缺陷、流程违规或报告失真,所以分数更低。

从结果来看,gpt-5.4,kimi-k2.5,glm-5表现较好,qwen3.6-plus,minimax-m2.7,m2.5的表现稍弱

9. 按模型分析

本节将前文结果收束到具体模型。

模型名称 当前定位 主要优势 主要短板
gpt-5.4 对比基线 总分、模块得分、稳定性都最高 国外闭源,不参与国产选型
deepseek-v4-pro 国产第一梯队 总分最高,优秀率 100.0%,稳定性最强 速度较慢,耗时较高。
deepseek-v4-flash 国产第一梯队 上限高,效率强,优秀率高 部分任务明显偏弱,任务依赖性更强
minimax-m2.7 国产主力备选 纪律性强,非 DeepSeek-V4 模型里最稳 时间和 Token 成本偏高,异常环境处理能力较弱,虽然开源但不允许商用。
qwen3.6-plus 高效率方案 速度快,跨任务稳定,成本低 优秀率不高,上限弱于头部三组
glm-5 均衡方案 结构完整,Token 成本低,异常环境表现较好 task5 掉分明显,整体波动偏大
kimi-k2.5 中游候选 有一定完成能力,异常环境退化较小 优秀率低,上限偏低
minimax-m2.5 中游候选 个别任务能冲高分 运行次数偏高,跨任务和异常环境都不稳
qwen3.5-plus 不适合主力 有一定代码能力基础 Token 和尝试次数最高,长链路试错明显
deepseek-v3.2 暂不建议主力使用 会做的任务能拿高分 波动最大,稳定性最弱

9.1 deepseek-v4-pro

在这里插入图片描述

deepseek-v4-pro 是当前国产模型里综合表现最好的一组。

1.综合能力 A :平均分 84.7,优秀率 100.0%,国产第一。

2.结果质量 / 过程质量 A / A:代码能力 40.2,纪律性 35.7,都在国产前列。

3.效率与成本 A :效率 8.8,平均 Token 1.671M 是当前最低一组。

4.鲁棒性 - :当前没有 badenv 样本。

5.跨任务一致性 A :跨任务 CV 0.039,当前最低。

6.体验一致性 A :同任务内平均 CV 0.031,整体稳定。

9.2 deepseek-v4-flash

在这里插入图片描述

deepseek-v4-flash 是当前国产模型里效率最强的一组。

1.综合能力 A:平均分 81.0,优秀率 80.0%,处在第一梯队。

2.结果质量 / 过程质量 A / A:代码能力 38.4,纪律性 33.6,都在头部。

3.效率与成本 A:平均耗时 430.8 秒,是当前最快一组,效率得分 9.0。

4.鲁棒性 -:当前没有 badenv 样本。

5.跨任务一致性 C:跨任务 CV 0.136,task2 只有 62.0,其余四个任务都在 82 分以上。

6.体验一致性 A:同任务内平均 CV 0.019,各任务内波动都很小。

9.3 minimax-m2.7

在这里插入图片描述

minimax-m2.7 是非 DeepSeek-V4 模型里最稳的一组。

1.综合能力 B:平均分 78.1,优秀率 62.5%,在国产非 DeepSeek-V4 模型里最高。

2.结果质量 / 过程质量 B / A:代码能力 36.6,纪律性 33.6,过程质量尤其突出。

3.效率与成本 C:平均耗时 851.3 秒,平均 Token 2.492M,得分效率不高。

4.鲁棒性 Dbadenv 得分 45.0,比分正常 task4 低 41.5 分。

5.跨任务一致性 B:跨任务 CV 0.106,仍在稳定区间。

6.体验一致性 B:同任务内平均 CV 0.069,整体可控,但 task1 两轮分差较大。

9.4 qwen3.6-plus

在这里插入图片描述

qwen3.6-plus 是效率优先场景里最有竞争力的模型之一。

1.1. 综合能力 B:平均分 76.0,优秀率 40.0%,整体稳定处在头部之后。

2.2. 结果质量 / 过程质量 B / B:代码能力 35.7,纪律性 31.8,都没有塌项。

3.3. 效率与成本 A:平均耗时 440.5 秒,平均 Token 1.835M,效率得分 8.4。

4.4. 鲁棒性 Cbadenv 得分 49.0,比分正常 task4 低 30.0 分。

5.5. 跨任务一致性 A:跨任务 CV 0.063,仅次于 deepseek-v4-progpt-5.4

6.6. 体验一致性 C:同任务内平均 CV 0.141,task2 两轮分差达到 21.6。

9.5 glm-5

在这里插入图片描述

glm-5 是较为典型的均衡方案,各方面没有特别强的,也没有特别弱的。

1.1. 综合能力 B:平均分 74.8,优秀率 45.5%,稳定处在第二梯队。

2.2. 结果质量 / 过程质量 B / B:代码能力 35.3,纪律性 31.5,没有明显短板。

3.3. 效率与成本 B:效率得分 8.0,平均 Token 1.759M,头部模型里成本较低。

4.4. 鲁棒性 Abadenv 得分 55.0,仅次于 gpt-5.4。

5.5. 跨任务一致性 C:跨任务 CV 0.181,task5 只有 54.8,掉分明显。

6.6. 体验一致性 C:同任务内平均 CV 0.167,task5 两轮波动最大,标准差 35.0。

9.6 kimi-k2.5

在这里插入图片描述

kimi-k2.5 是中游模型中波动较大的一组。

1.综合能力 C:平均分 66.8,优秀率只有 9.1%。

2.结果质量 / 过程质量 C / C:代码能力 30.0,纪律性 29.7,都有基础,但进不了头部。

3.效率与成本 C:平均耗时 893.1 秒,平均运行次数 5.1 次,成本不低。

4.鲁棒性 Abadenv 得分 55.0,比分正常 task4 只低 15.0 分,退化最小。

5.跨任务一致性 C:跨任务 CV 0.178,任务依赖性比较强。

6.体验一致性 C:同任务内平均 CV 0.147,task4 两轮波动明显。

9.7 minimax-m2.5

在这里插入图片描述

minimax-m2.5 有完成能力,但波动和调试成本都偏大。

1.综合能力 C:平均分 65.5,优秀率 30.0%,起伏明显。

2.结果质量 / 过程质量 D / C:代码能力 29.6,纪律性 28.5,结果质量已经偏弱。

3.效率与成本 C:平均运行次数 8.2 次,明显高于其他中游模型。

4.鲁棒性 Dbadenv 得分 43.0,比分正常 task4 低 41.5 分。

5.跨任务一致性 D:跨任务 CV 0.268,波动很大。

6.体验一致性 D:同任务内平均 CV 0.189,task2 两轮分差最明显。

9.8 qwen3.5-plus

在这里插入图片描述

qwen3.5-plus 是中游模型中成本问题最突出的一组。

1.综合能力 C:平均分 63.7,优秀率 27.3%,整体上限有限。

2.结果质量 / 过程质量 C / D:代码能力 31.2 还有基础,但纪律性只有 26.6。

3.效率与成本 D:平均 Token 4.935M、平均运行次数 13.9 次,都是当前最高。

4.鲁棒性 Cbadenv 得分 51.0,比分正常 task4 低 29.5 分。

5.跨任务一致性 D:跨任务 CV 0.220,任务依赖明显。

6.体验一致性 D:同任务内平均 CV 0.255,task5 两轮波动尤其大。

9.9 deepseek-v3.2

在这里插入图片描述

deepseek-v3.2 是波动最大的一组模型。

1.综合能力 D:平均分 60.8,但优秀率有 50.0%,分化极大。

2.结果质量 / 过程质量 D / D:代码能力 27.3,纪律性 26.8,都偏弱。

3.效率与成本 C:平均运行次数 1.3 次不高,但平均耗时 992.9 秒,效率并不高。

4.鲁棒性 -:当前没有 badenv 样本。

5.跨任务一致性 D:跨任务 CV 0.381,当前最大。

6.体验一致性 -:同任务重复样本太少,当前只能看到 task3 两轮波动不大。

9.10 deepseek-r1

deepseek-r1 当前只有 1 个有效样本,样本量不足,无法给出稳定评价。从现有结果看,它的得分较低,整体表现不理想,但这只能说明当前单轮结果较差,不能直接外推为模型整体水平。

从模型画像看,gpt-5.4 是当前最成熟的头部方案;minimax-m2.7qwen3.6-plus glm-5 是最有竞争力的第二梯队,追求体验稳选minimax,追求速度快选qwen,追求便宜均衡选glm;kimi-k2.5minimax-m2.5qwen3.5-plus 属于中游模型,各自存在稳定性或成本方面的明显短板;deepseek-v3.2deepseek-r1 则暂时不适合作为主力方案。

10. 结论

基于上述结果,可以直接回答前面提出的三个问题。

10.1 哪些模型在 DolphinDB 任务上总体表现较好?

在国产模型中,头部是 deepseek-v4-prodeepseek-v4-flashminimax-m2.7

deepseek-v4-pro 的综合能力最强,deepseek-v4-flash 速度最快。minimax-m2.7 都还不错,是非 DeepSeek-V4 模型里最稳的一组。

其后是 qwen3.6-plusglm-5qwen3.6-plus 的均分 76.0,跨任务 CV 0.063,效率和任务间稳定性都很好。glm-5 的均分 74.8,平均 Token 1.759M,结构最完整。

10.2 模型差异主要体现在哪些能力上?

差异主要落在结果质量、过程质量、稳定性和成本四个方面。

deepseek-v4-pro 的特点是四项都高,代码能力 40.2,纪律性 35.7,跨任务 CV 0.039,没有明显短板。deepseek-v4-flash 的特点是效率和上限,平均耗时 430.8 秒,优秀率 80.0%,但任务依赖性更强,task2 只有 62.0。minimax-m2.7 的特点是过程质量和整体稳定性,纪律性 33.6,跨任务 CV 0.106,但时间和 Token 成本偏高,badenv 退化也较明显。

qwen3.6-plus 的特点是效率和任务间稳定性,平均耗时 440.5 秒,平均 Token 1.835M,跨任务 CV 0.063,但优秀率只有 40.0,上限弱于前三组。glm-5 的特点是均衡和鲁棒性,badenv 得分 55.0,仅次于 gpt-5.4,但 task5 只有 54.8,跨任务 CV 0.181,波动偏大。

中游和尾部模型的分化也很清楚。kimi-k2.5 的问题是上限低,均分 66.8,优秀率只有 9.1%。minimax-m2.5 的问题是波动和调试成本,平均运行次数 8.2,跨任务 CV 0.268。qwen3.5-plus 的问题最集中,平均 Token 4.935M,平均运行次数 13.9,纪律性和效率都偏弱。deepseek-v3.2 的问题是分化过大,跨任务 CV 0.381,是当前波动最大的一组。

10.3 后续建设 DolphinDB 代码生成 Agent,应优先选用哪款模型?

如果只按当前样本效果选主模型,优先级最高的是 deepseek-v4-pro。它的平均分 84.7,优秀率 100.0%,纪律性 35.7,跨任务 CV 0.039,综合能力和稳定性都是当前国产最强。

如果更看重速度和吞吐,可以优先考虑 deepseek-v4-flash。它的平均耗时 430.8 秒,效率得分 9.0,优秀率 80.0%,但需要注意 task2 这一类事务型任务的掉分风险。

如果更看重非 DeepSeek-V4 路线里的稳定性,minimax-m2.7 是主力备选。它的纪律性 33.6,跨任务 CV 0.106,在这一组里最接近稳态,但成本更高,异常环境退化也更明显。

如果更看重任务间稳定性和成本,qwen3.6-plus 适合作为效率型备选,glm-5 适合作为均衡型备选。

另外,glm-5.1 也值得继续观察。它在本轮里还没有形成足够的有效样本,暂时不能纳入正式对比和选型结论,但从glm-5的表现推测,glm-5.1应该会有很不错的表现。

附录

A. 完整任务清单

任务1

任务目标: 实现一个完整的日内收益率偏度因子(dayReturnSkew)计算流程,包括数据准备、因子计算、结果存储三个环节。

具体要求

1.数据准备

◦创建一个分布式数据库 dfs://k_minute_level,使用TSDB引擎

◦分区方案:按月VALUE分区 + 按股票代码HASH 3分区

◦创建分钟K线表 k_minute,包含字段:tradetime(DATETIME)、securityid(SYMBOL)、open(DOUBLE)、high(DOUBLE)、low(DOUBLE)、close(DOUBLE)、vol(INT)、amount(DOUBLE)

◦生成2020年1月共3只股票(000001000002000003)的模拟分钟K线数据,每个交易日每只股票生成240条分钟数据(9:30-11:30, 13:00-15:00),价格随机波动

2.因子函数实现

◦定义因子函数 dayReturnSkew,计算日内收益率的偏度

◦函数需要使用 @state 装饰器,以支持后续流批一体

◦ 偏度计算公式:使用DolphinDB内置的 skew 函数

3.因子计算与存储

◦使用SQL模式配合 group by 语句计算每只股票每天的因子值

◦创建因子库 dfs://factor_db,表名 factor_result

◦因子表结构:tradetime(DATE,交易日期)、securityid(SYMBOL)、factorname(STRING)、val(DOUBLE)

◦将计算结果写入因子库

4.验证要求

◦输出前10条因子计算结果

◦输出因子库中的总记录数

交付物: 一个完整的DolphinDB脚本文件,包含建库建表、数据生成、因子计算、结果存储的全部代码。

任务2

任务目标:

1.生成模拟的股票价格数据(至少 100 条记录),包含时间戳 MDTime(毫秒精度时间)和价格 LastPx(价格范围 10.0 到 200.0 之间,保留 4 位小数)

2.计算价格变化率 val = ((LastPx - prev(LastPx)) / (prev(LastPx) + 1E-10) * 1000)

3.分别使用 DOUBLE 类型和 DECIMAL128 类型计算 20 期移动平均:

mavg(val, 20, 1) 使用 DOUBLE 类型

mavg(decimal128(val, 12), 20, 1) 使用 DECIMAL 类型

moving(avg, val, 20, 1) 使用 DOUBLE 类型

moving(avg, decimal128(val, 12), 20, 1) 使用 DECIMAL 类型

4.输出一个结果表,包含以下列:

MDTime:时间戳

val:价格变化率

mavg_double:使用 DOUBLE 的 mavg 结果

mavg_decimal:使用 DECIMAL 的 mavg 结果

moving_double:使用 DOUBLE 的 moving(avg,…) 结果

moving_decimal:使用 DECIMAL 的 moving(avg,…) 结果

diff_mavg_double:mavg_double 与 moving_double 的差值

diff_mavg_decimal:mavg_decimal 与 moving_decimal 的差值

5.统计并打印:

◦DOUBLE 类型下 mavg 与 moving(avg,…) 结果不一致的记录数(差值绝对值 > 1E-10)

◦DECIMAL 类型下 mavg 与 moving(avg,…) 结果不一致的记录数

验证要求:

•脚本必须可独立运行,不依赖外部数据文件

•必须展示 DECIMAL 类型能够消除 mavg 与 moving(avg,…) 之间的精度差异

•结果表应保存为变量 result_table

任务3

任务要求

请编写 DolphinDB 脚本完成以下工作:

1.建库建表

•创建一个 OLTP 数据库,数据库名为 oltp://account_db

•创建账户表 accounts,包含字段:account_id(LONG,账户ID)、account_name(STRING,账户名)、balance(LONG,余额,单位分)

•以 account_id 为主键

•为 account_name 创建一个 unique 二级索引

2.初始化测试数据

在事务块中插入以下账户数据:

•账户1:account_id=1001, account_name=“alice”, balance=100000(1000元)

•账户2:account_id=1002, account_name=“bob”, balance=50000(500元)

•账户3:account_id=1003, account_name=“charlie”, balance=200000(2000元)

3.实现转账函数

编写一个转账函数 transfer(from_id, to_id, amount),要求:

•在 transaction 语句块内执行

•检查转出账户余额是否充足,不足则 rollback

•从转出账户扣除金额,向转入账户增加金额

•成功则 commit

4.测试验证

执行以下测试用例并输出结果:

•• 测试1:从 alice 转账 30000 分到 bob(应成功)

•• 测试2:从 bob 转账 100000 分到 charlie(应失败,余额不足)

•• 测试3:查询所有账户余额,验证最终状态

输出要求

脚本执行后应输出:

1.初始化后的账户余额列表

2.每次转账的结果(成功/失败原因)

3.最终的账户余额列表

任务4

构建并行流计算引擎处理多股票因子

任务背景: 为了提高流数据处理的吞吐量,需要利用 DolphinDB 的并行订阅功能,将不同股票的数据分发到不同的响应式状态引擎中进行并行计算。

具体要求

1.定义表结构

◦创建一个共享流数据表 tickStream,包含字段 sym (SYMBOL), time (TIMESTAMP), price (DOUBLE)。

◦创建一个共享流数据表 resultStream,包含字段 sym (SYMBOL), factor (DOUBLE),用于接收计算结果。

2.配置发布端过滤

◦使用 setStreamTableFilterColumntickStream 的过滤列设置为 sym

3.构建并行计算引擎

◦创建 3 个响应式状态引擎,分别命名为 engine0, engine1, engine2

◦每个引擎的输入表为 tickStream,输出表为 resultStream

◦计算指标为 cumsum(price),分组列为 sym

4.配置订阅与分发

◦使用 subscribeTable 订阅 tickStream

◦利用 filter hash 参数实现数据分发。假设哈希桶总数为 3,第 i 个订阅负责处理哈希值为 i 的数据(即 filter=(3, i)hash=i)。

◦订阅的 actionName 需要区分开,例如 sub0, sub1, sub2

5.模拟数据与验证

◦生成模拟数据:包含 3 只股票(‘A’, ‘B’, ‘C’),每只股票写入 10 条数据,time 递增,price 随机,共 30 条数据。

◦将数据写入 tickStream

◦使用 getStreamingStat().subWorkers 或循环检查确认数据处理完毕(脚本中可简单使用 sleep(1000) 模拟等待)。

◦输出 resultStream 的行数,预期应为 30 行。

交付物: 一个完整的 DolphinDB 脚本,包含表定义、引擎创建、订阅配置、数据模拟及结果验证代码。

任务5

DolphinDB 股票分钟K线数据入库与日K聚合计算

任务要求

1.数据库和分区表创建

•创建分布式数据库 dfs://stockKline

•分区方案:按日期(VALUE分区),范围覆盖 2023年全年

•创建分区表 minuteKline,包含以下字段:

◦SecurityID: SYMBOL 类型,股票代码

◦DateTime: DATETIME 类型,时间戳

◦OpenPx: DOUBLE 类型,开盘价

◦HighPx: DOUBLE 类型,最高价

◦LowPx: DOUBLE 类型,最低价

◦ClosePx: DOUBLE 类型,收盘价

◦Volume: INT 类型,成交量

◦Amount: DOUBLE 类型,成交额

2.模拟数据生成与写入

•模拟生成 100 支股票在 2023.01.03 这一天的分钟K线数据

•交易时间段:09:30-11:30(121根),13:00-15:00(121根),共 242 根分钟K线

•价格范围:10-200 元,随机波动

•成交量范围:1000-100000 股

•将模拟数据写入分区表

3.日K聚合计算

•从分钟K线数据聚合生成日K线

•日K线字段:SecurityID, TradeDate, Open, High, Low, Close, Volume, Amount

•Open 取当日第一根K线的开盘价

•High 取当日最高价

•Low 取当日最低价

•Close 取当日最后一根K线的收盘价

•Volume 和 Amount 分别求和

4.输出要求

•将聚合结果保存为内存表变量 dailyKline

•打印日K线记录数

•打印前 5 条日K线记录

约束条件

•必须使用分布式数据库(dfs://)

•必须正确处理分区列

•大数据量查询结果应赋值给变量而非直接返回

•需要处理数据库已存在的情况(先删除再创建)

验证方式

•检查数据库和表是否创建成功

•检查写入数据量是否正确(100支股票 × 242根K线 = 24200条)

•检查日K聚合结果是否正确(应为100条记录)

•检查 OHLC 计算逻辑是否正确

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐