ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

MemPalace 小模型评估报告全解:75 组本地矩阵跑分、云模型上限测量与幻觉率评分伪影

MemPalace 小模型评估报告全解:75 组本地矩阵跑分、云模型上限测量与幻觉率评分伪影 MemPalace 小模型评估报告全解75 组本地矩阵跑分、云模型上限测量与幻觉率评分伪影【免费下载链接】mempalaceThe best-benchmarked open-source AI memory system. And its free.项目地址: https://gitcode.com/GitHub_Trending/me/mempalace本文解读 MemPalace 仓库中 2026-05-10 小模型评估分析报告 的完整结论15 个候选模型在 5 个任务/模式组合下的 75 组本地跑分、两轮云模型上限测量、开放集发现功能的不发布裁定以及一次基于源码核验的幻觉率是评分伪影调查。读完后你能掌握 MemPalace 如何为生产分类器做数据驱动的模型选型如何用 benchmarks/model_eval 工具链在自己的硬件上复现全部数字并理解各指标的统计含义与适用边界。实验背景与测试矩阵这轮评估在z690-ex-glacialIntel i9-12900KF RTX 3090 24GB Ollama 0.23.2上完成首轮全矩阵15 个候选模型 × 5 个任务/模式组合 75 次运行耗时 61.8 分钟仅出现 1 次瞬态预热超时。原始数据见 2026-05-10-z690-ex-glacial.csv自动渲染的表格见 2026-05-10-z690-ex-glacial.md而该分析报告是人写成的对数字的解读。评估矩阵的候选模型与分层定义都集中在 candidates.yaml 中Tier 1必须评估的均衡集合q4_K_M 量化、跨家族各 3~4B例如qwen3:4b-instruct-2507-q4_K_M、gemma3:4b-it-q4_K_M、llama3.2:3b-instruct-q4_K_MTier 2显存受限用户的小规格qwen3:1.7b、qwen2.5:1.5b等Tier 3FP16 上限等特殊情况qwen3:4b-instruct-2507-fp16cloudOllama 托管的参考上限模型20B~1T 参数用于测量本地最优与大 100 倍模型能做到的水平之间的差距modern / community首轮搜索遗漏的新一代模型Gemma 4、Granite 4.1、Ministral 3、Qwen 3.5与第三方微调。配置文件里还写明了两条方法论约束纯推理变体按策略排除MemPalace 分类任务一律关闭 thinking云模型仅用于测量上限不代表生产推荐——隐私与成本权衡下本地模型仍是默认。评测的四类任务与指标根据 benchmarks/model_eval/README.md每个(model, task, mode)三元组记录任务相关准确率、TTFT首 token 时间、TPS每秒 token 数、e2e 延迟p50/p95、VRAM resident从 Ollama/api/ps读取的模型常驻显存与 VRAM peaknvidia-smi每 500ms 轮询的峰值。每个模型的第一次运行被丢弃缓存 GPU 升频保证统计干净。任务评分方式样本量room_classificationclosed闭集房间分类模型从给定房间列表中选一个精确匹配101原 100后补 1 条真实格式样本 rc_101room_classificationopen开放集发现模型自创 slug与人工选定preferred标签做余弦相似度101entity_extractionJSON 实体列表F1/Precision/Recall50 样本247 个标注实体memory_extraction结构化记忆项coverage / hallucination_rate / type_accuracy40 样本55 条标注记忆、5 种类型calibration5 类句子类型精确匹配harness 自检用20数据集全部为合成数据不含真实个人信息生成一次后冻结保证跨次运行数字可比。一个值得注意的实现细节harness 走的是生产同款代码路径——mempalace.llm_client.get_provider(ollama, modeltag)provider.classify(...)没有任何重新实现的 HTTP 层。在 runner.py 中可以看到_classify_with_timing()对每次调用都强制thinkFalse让带混合推理能力的 Qwen 3 模型保持快速分类模式open 集与记忆抽取两个语义评分任务则依赖 embedding 模型计算相似度runner 在缺模型时会自动ollama pull。复现命令报告给出了完整的复现流程# 拉取所有候选模型100 Mbit 连接约 7 分钟 for m in $(grep -E ^ - tag: benchmarks/model_eval/candidates.yaml | awk {print $3}); do ollama pull $m done ollama pull nomic-embed-text # 跑矩阵RTX 3090 约 60 分钟 python -m benchmarks.model_eval.orchestrator \ --candidates all --tasks all \ --dataset-dir benchmarks/model_eval/datasets \ --output benchmarks/model_eval/results/$(date -u %Y-%m-%d)-$(hostname).csv # 渲染报告 python -m benchmarks.model_eval.summarize \ --csv benchmarks/model_eval/results/$(date -u %Y-%m-%d)-$(hostname).csv \ --output benchmarks/model_eval/reports/$(date -u %Y-%m-%d)-$(hostname).mdorchestrator 支持--candidates tier1|local|cloud|modern|精确 tag等分层过滤--n 30可截断样本数控制云成本CSV 是增量写入中途 Ctrl-C 安全。README 给出的验收基线准确率应在基线 ±1% 内速度数字因 GPU、驱动、热状态不可跨机比较VRAM resident 在同 Ollama 版本下应基本一致。头号结论qwen3:4b-instruct-2507 是最优小模型原始 CSV 中的关键行可以印证报告的头条结论qwen3:4b-instruct-2507-q4_K_M一行闭集房间分类 0.61、开放集相似度 0.586、实体 F1 0.778、记忆覆盖 0.95、calibration 0.95闭集 e2e p50 仅 109 ms常驻显存 7481 MB。qwen3:4b-instruct-2507-q4_K_M在我们测量的每个任务上都是最好的小模型——calibration、闭集房间分类、实体抽取、记忆抽取全部第一或并列第一代价是 7.5 GB 常驻显存、calibration 亚 100ms p50、最重的实体抽取任务 624 ms p50。量化维度上q4_K_M 扛住了与 q8_0 乃至 fp16 的对比实体 F1 上 q4_K_M 以 0.778 对 0.772 微胜 fp16噪声范围内其余任务与 fp16 上限差距都在 0.01~0.02。结论是只有当任务把模型逼到极限时才值得为 VRAM 付费q4_K_M 是正确的默认。各任务冠军一览任务最佳模型得分备注Calibration句子类型精确6 模型并列 0.9500.950≥1.5B 的模型都够用闭集房间分类精确qwen3:4b-instruct-2507-fp160.650q4_K_M 以 0.610 紧随其后开放集房间余弦相似度gemma3:4b-it-q4_K_M0.612低于 0.70 的发布阈值实体抽取F1qwen3:4b-instruct-2507-q4_K_M0.778q4 在噪声范围内击败 fp16记忆抽取coverageqwen3:4b-instruct-2507-q4_K_M0.950但伴随 0.36 的幻觉率见下文伪影分析报告推荐的生产分层清单报告给出的核心落地建议是更新MODEL_TIERS报告写作时指向mempalace/local_model.py当前仓库树中无此文件名最接近的功能模块是零网络房间检测 room_detector_local.py 与 llm_client.py 中的 provider 抽象。报告建议替换为MODEL_TIERS [ # Tier 1 — Best balance of speed/quality (instruct-tuned) (rqwen3:4b-instruct-2507, 100), (rgemma3:4b-it-q4_K_M, 88), (rgemma3:4b-it-qat, 87), (rqwen2\.5:3b-instruct, 82), # Tier 2 — Fast but lower accuracy on hard tasks (rllama3\.2:3b-instruct, 70), (rphi3\.5:3\.8b-mini-instruct, 68), (rqwen2\.5:1\.5b-instruct, 55), # Tier 3 — Fallback only (rgemma3:1b-it, 45), (rllama3\.2:1b-instruct, 40), (rqwen2\.5:0\.5b-instruct, 30), # Reasoning-default tags below dedicated instruct variants. Picked # only as a last resort. The runner forces thinkFalse on every # call, so even when these match they run in fast-classification # mode rather than reasoning mode. (rqwen3:4b, 25), ]相对旧清单的四处改动及依据删掉qwen3\.5:4b和qwen3:3b模式Ollama 上不存在这两个精确 tag属于永远不会命中的臆测条目后续 modern 轮用真实存在的qwen3.5:4b验证了这一点——新版并未赢过旧版见下节删掉 Tier 2 的qwen3:1\.7b与qwen3:0\.6b实体抽取 F1 分别只有 0.31 和 0.48CSV 可查1.7b 的 mean_precision 0.67 / mean_recall 0.23纯靠低召回撑高分精确率记忆覆盖尚可0.84/0.74但小号的类型精度差不值得推荐删掉 Tier 3 的gemma2:2b、phi3:mini、tinyllama不在本轮测试矩阵里没测过就先下架qwen3:4b通用 tag 从 30 降到 25runner 端thinkFalse让它即使被匹配到也跑在快速分类模式但它在每个任务上仍输于显式 instruct 版本理应垫底。第二轮与第三轮现代模型与云上限首轮落地后做了两次追加检查可复现性抽查重跑qwen3:4b-instruct-2507-q4_K_M全任务集各指标偏差 ≤0.7%——room-closed 0.610→0.604、room-open 0.586→0.584、实体 F1 0.778→0.771、记忆覆盖 0.950→0.950、calibration 0.950→0.950确认 harness 可靠、单轮精度数字可信幻觉率调查见评分伪影一节云上限测量n30原始数据 2026-05-10-cloud-z690-ex-glacial.csv 为 v1、2026-05-11-cloud-z690-ex-glacial.csv 为 v2全部数字均可在 CSV 中逐行核对。第三轮2026-05-11补测了首轮搜索遗漏的五个本地家族granite4.1:3b、gemma4:e2b、gemma4:e4b、ministral-3:3b、qwen3.5:4b数据见 2026-05-11-modern-z690-ex-glacial.csv有三个值得单独提出的发现gemma4:e4b-it-q4_K_M成为新的本地房间分类冠军闭集 0.624超过 qwen3:4b 的 0.610开放集0.653——所有被测模型本地与云中的最高分云模型开放集上限是 0.61。一个 4B 本地模型超过了 1T 参数的云参考。代价是 230 ms p50qwen3:4b 为 109 ms2.1 倍慢和 10.6 GB 常驻7.5 GB 的 1.4 倍ministral-3:3b记忆覆盖 0.99实测 0.9875接近云的 1.00但闭集只有 0.49、实体 F1 0.63——只适合记忆是主任务的场景qwen3.5:4b-q4_K_M打不过qwen3:4b-instruct-2507实体 F1 略好0.79 vs 0.78记忆覆盖差0.85 vs 0.95、闭集差0.59 vs 0.61。版本号升级在这个负载上没有收益——这也印证了newer ≠ better的选型原则。对生产清单的净影响房间分类主用例新推荐默认是gemma4:e4b-it-q4_K_M紧显存硬件的通用抽取仍选qwen3:4b-instruct-2507-q4_K_M开放集发现功能从无限期搁置放宽为先用 gemma4:e4b 提示词调优重测再下死刑——距 0.70 发布阈值的差距从 0.09 缩到 0.05。云模型两轮结果v2 完整表v1 五个候选kimi-k2:1t-cloud全任务 HTTP 500v2 更新阵容kimi-k2:1t-cloud已被kimi-k2.6:cloud取代并加入 DeepSeek V4 Flash/Pro7 个候选全部成功模型room-closedroom-open实体 F1记忆覆盖calibratione2e p50闭集gpt-oss:20b-cloud0.8970.5550.7481.0000.9001149 msgpt-oss:120b-cloud0.7670.5280.8311.0000.9501732 msqwen3-coder:480b-cloud0.9000.5790.8030.9670.950753 msdeepseek-v3.1:671b-cloud0.8000.5590.8300.9670.950708 msdeepseek-v4-flash:cloud0.6330.6070.8370.9500.950723 msdeepseek-v4-pro:cloud0.8330.6050.8271.0000.9502426 mskimi-k2.6:cloud0.8000.5930.770(n/a)0.9001042 ms本地冠军4B q40.6100.5860.7780.9500.950109 ms闭集房间分类真实的天花板差距云模型明显更强qwen3-coder:480b 与 gpt-oss:20b 达到 0.897~0.900对本地 0.610绝对差约 30 分、相对差 47%。这是目前支持提供mempalace mine --classifier cloud选项的最强论据——面向能接受隐私与成本权衡的高价值归档用户。对默认场景隐私优先、无需 API key本地仍是正确选择。一个有趣观察gpt-oss:20b 在该任务上追平 qwen3-coder:480b尽管参数只有 1/24——从结果推断qwen3-coder 的代码特化对自然语言分类既不是优势也不是拖累。开放集发现上限被两轮云测量证伪第一轮云上限 0.587qwen3-coder:480bDeepSeek V4 略微抬高v4-flash 0.607、v4-pro 0.605。仍低于本地最佳 0.612gemma3:4b-it仍远低于 0.70 发布阈值。两轮合计所有云候选开放集都在 0.55~0.61本地候选 0.46~0.61同一个区间。模型类别整体进入平台期4B、284B、480B、671B、1T MoE 全部收敛到相同的 0.55~0.61 余弦相似度区间。这不是模型规模问题而是任务表述问题模型必须自创一个与人工选定preferred标签语义对齐的开放词表标签本质是风格对齐问题加算力跨不过去。结论--mode discover功能搁置用户自定义房间列表的闭集分类仍是唯一路径。值得探索的两条路都是研究项目而非调参更好的提示词few-shot 示例或约束词表两遍聚类小模型先标注、再聚类合并近义项。在此之前闭集要求不变——但如前所述gemma4:e4b 的 0.65 已把差距缩到 0.05重测优先。实体抽取与记忆抽取云略优但无决定性gpt-oss:120b0.829与 deepseek-v3.1:671b0.828领先本地 qwen3:4b 0.778——差距真实但温和常规使用本地够用。记忆覆盖上 gpt-oss:20b 与 120b 在 n30 都打出 1.000qwen3-coder 与 DeepSeek 0.967本地 0.950云帮助有限。calibration 任务在所有强模型间已饱和0.90~0.95只剩 sanity check 价值。延迟与成本观察推理基础设施效率因模型而异不只因规模qwen3-coder:480b 是云端最快选项闭集 599 ms p50尽管比 gpt-oss:120b1656 ms大 4 倍deepseek-v3.1:671b 735 ms 同样快于 gpt-oss:120b。对本地 4B 的 109 ms云慢 5~15 倍含网络 RTT——交互场景要命批量挖掘历史归档无所谓gpt-oss 系列即使请求体里think: false仍持续生成推理 token作者用 curl 直接验证过。harness 只提取干净的content字段但云推理时长与配额消耗包含被要求跳过的推理生成。作者建议对 Ollama Cloud 的上游think: false支持提 issue在此之前云延迟数字应视为上界Ollama Cloud 不强制结构化输出这是真实发现依据 Ollama 官方文档harness 发送的format: json在云请求上被静默忽略。云模型恰好输出合法 JSON 是因为其默认行为恰好是 JSON 形状而非平台强制。这解释了 K2.6 记忆抽取valid_json_rate: 0.367——其余 63% 的响应是 markdown 代码围栏、散文前言或别的 schema那个 0.367覆盖率实际是JSON 解析率 × 单样本覆盖不能与其他模型的质量分直接比较。其他六个云候选 100% valid_json_rate 属于运气好默认输出就是 JSON 形状同样脆弱云可复现性差于本地v1→v2 重跑 4 个共有候选出现漂移——gpt-oss:20b 闭集 0.833→0.8970.064gpt-oss:120b 0.800→0.767-0.033qwen3-coder 与 deepseek-v3.1 稳定为 0。6.4 分跳变远超本地 temperature0.1 的 ±0.7% 噪声底可能原因是云端模型权重静默轮换、服务端负载影响非确定性、或 n30 切片受模型侧缓存状态影响。方法论结论本地数字报点估计±0.7% 可复现云数字必须报区间——cloud-best 闭集 0.83~0.90local-best 0.61。意外发现与异常分析q4_K_M 在实体 F1 上击败 fp160.778 vs 0.772远在轮次噪声之内但该任务上量化没有任何质量悬崖q4_K_M 下载 2.5 GB、常驻 7.5 GBfp16 是 8.1 GB / 13.2 GB——同等精度一半内存。0.36幻觉率是评分方法伪影不是模型弱点初读数据qwen3:4b 记忆覆盖 0.95 却有 0.36 的预测不匹配任何标注记忆qwen2.5:3b 为 0.00gemma3:4b 0.19看起来模型过于热衷。作者对 5 个代表性样本做了人工并列核查预测 vs 源文本 vs 标注结论反转把捆绑记忆拆成原子项mem_006的标注是一条捆绑记忆不再用 NPK 改用堆肥 今年秋天开始qwen3:4b 输出两条决策 时间承诺两者都在源文本里。标注时合、模型时拆两边都没错抓到标注遗漏的承诺mem_001标注只列了 cosine-to-Jaccard 决策qwen3:4b 还抽出了明天重跑基准——字面就在源文本中。是标注遗漏不是幻觉把捆绑事实拆成原子事实mem_013两条标注记忆被拆成三条原子项全部可回溯到源文本。对照组更有说服力qwen2.5:3b 在同样样本上是欠抽取——它0.00 幻觉是因为每条样本只出一条记忆经常整条漏掉第二条真值mem_021漏重构大纲承诺、mem_031漏AR 查询走邮件决策。指标本身在说谎。回看 score.py 的实现可以精确定位机制scorer 把预测与真值逐条嵌入后做贪心一对一匹配similarity_threshold0.6先占先得然后coverage len(matched_truth_indices) / len(truth) hallucination_rate (len(pred) - len(matched_pred_indices)) / max(1, len(pred))当模型产出比真值更细粒度的抽取对记忆抽取而言是正确行为时多出来的预测项找不到可配对的真值全被计为幻觉。作者把 0.36 拆解开看真幻觉预测但源文本没有估计 5%需独立 scorer 确认粒度分歧约占一半一条真值捆绑拆成 N 条预测标注遗漏约 30%预测在源文本里标注者漏了。对选型的净效应qwen3:4b-instruct-2507-q4_K_M维持推荐——0.95 覆盖才是真信号模型选型的临时准则是信mean_coverage忽略mean_hallucination_rate。后续修复方案跟进 PR(a) 把预测与源文本也做嵌入匹配匹配源但不匹配真值改判为标注遗漏而非幻觉或 (b) 把coverage、granularity_factor预测/真值数量比、source_traceability拆成三个独立指标不再合并。速度冠军 phi3.5:3.8b 与 VRAM 异常phi3.5:3.8b-mini-instructcalibration p50 仅 30 ms比 qwen3:4b 快 2.8 倍推测与其量化布局激进的批处理有关但代价写在 CSV 里常驻 16.6 GB4B 级最高、闭集房间 0.47、实体 F1 0.64。适合延迟主导、精度宽容的利基场景不适合做默认。其余异常gemma3:4b-it 家族赢开放集q4_K_M 与 qat 都是 0.612超过 qwen3 家族。推测 Gemma 训练语料含更多按约定命名的样本自创 slug 时更守常规。若开放集功能某天发布起点应是 gemma3:4b-it 而非 qwen3小参数 Qwen 3 低于同尺寸级qwen3:1.7b/qwen3:0.6b实体 F1 0.31/0.48高精确率低召回P/R 0.67/0.23 与 0.57/0.47——抽得不够多。同参数量的 Qwen 2.5 1.5B 反而 F1 0.37 更高。可能是 JSON 模式提示词 thinkFalse 与微型混合模型的交互伪影建议任何 sub-3B Qwen 3 变体先调查再推荐llama3.2:3b 的 p95 悬崖calibration p50 92 msp95 5050 ms55 倍离群CSV 中 ttft_p95 5029 ms、e2e_p95 5050 ms 可查——单个样本冷启动或被中途重新调度。不改变分层它本来不在 Tier 1但标记待重跑确认gemma3:270m 基本不可用calibration 5%5 类里比随机还差、闭集 12%、开放集 38%、记忆覆盖 2.5%。指令遵循不够任何任务都撑不住——应从分层清单移到文档勿用行。VRAM 观察峰值 VRAM 列波动剧烈因为它反映测量瞬间 GPU 上发生的一切包括 Ollama 正在拉起下一个模型resident 才是可靠数字。按常驻显存分档270m/0.5B~1B 级 1~4 GB1.5B~3B 级 2.5~7 GB4B 级 q4_K_M 4.7~7.5 GB、q8_0 9.3 GB、fp16 13.2 GB。由此得出部署指引24 GB 卡单跑任何 4B 模型都从容16 GB 卡上 q4_K_M 是唯一务实的 4B 选项8 GB 卡落在 1.5B~3B 区间。Phi-3.5 的 16.6 GB 常驻对 3.8B 模型明显异常可能是不同的 KV cache 策略值得为紧显存用户单独写进部署文档。后续计划与方法论要点报告按优先级列出后续动作值得作为评估如何驱动产品决策的案例阅读把MODEL_TIERS更新为推荐清单数据已支持注释指向本报告在第二台机器如 16 GB 卡上跑 Tier 1 子集确认精度数字可跨硬件迁移——速度不可迁移精度应在 1~2% 内用更大的参考模型qwen3:30b-cloud或gpt-oss:20b-cloud探索开放集发现小模型的 0.612 上限不排除大模型可发布 discover调查 qwen3:4b q4_K_M 的记忆幻觉率收紧提示词或加抽取后过滤重跑 llama3.2:3b calibration 确认 p95 悬崖条件允许时补测phi-4-mini、nemotron-mini两者带函数调用调优可能利好实体/记忆任务。最后把整份报告的方法论约束浓缩为三条这也是 benchmarks/model_eval/README.md 中维护者须知的原文要旨format: json本地强制、云端忽略云模型输出 JSON 是默认行为使然K2.6 的valid_json_rate: 0.37就是文档化的表现记忆抽取的hallucination_rate指标过度惩罚细致模型见上文源码分析模型选型期信mean_coverage云可复现性差于本地gpt-oss:20b 单次漂移约 6 分云数字报区间、本地数字报点估计。这套 harness 用真实生产代码路径llm_client.py 的get_providerclassify、冻结的合成数据集与逐行留存的 CSV把选哪个小模型从凭感觉变成了可复现的数据问题——而分析报告中每一次反直觉数字幻觉率、云漂移、p95 悬崖都指向了评分器或基础设施的可定位原因这正是它作为工程评估范本的价值所在。【免费下载链接】mempalaceThe best-benchmarked open-source AI memory system. And its free.项目地址: https://gitcode.com/GitHub_Trending/me/mempalace创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表