Skip to content

OpenFicM 0.7.6

Choose a tag to compare

@tioners tioners released this 21 Aug 15:45
· 19 commits to main since this release

OpenFicM 0.7.6

本版集中修复三个用户实测发现的问题,并补上三处易用性改进。

修复:文风蒸馏卡在“正在汇总文风指南”

现象是走到汇总步骤后固定报错“模型返回的文风指南不能为空”,两台设备都能复现。

真实原因不是模型没返回,而是输出被截断,但代码把截断当成了空。OpenAI 兼容分支此前完全没有检查 finish_reason,模型因为撞上 max_tokens 而返回 content: null 时被静默降级成空串。思考型模型的推理 Token 同样计入这个上限,而默认上限只有 4,096——批次分析输出短能过,汇总要输出一份完整指南就会在正文出来前把预算耗尽。

  • 三个供应商分支现在都检查截断状态(OpenAI 的 finish_reason=length、Gemini 的 finishReason=MAX_TOKENS、Anthropic 的 stop_reason=max_tokens),并直接告诉你该去哪里调高上限,而不是报“内容为空”。
  • 蒸馏的两个步骤有了独立的输出预算下限:批次分析 8,192,汇总 16,384。这个下限不会低于你自己配置的上限,只是保证结构上需要长输出的步骤不会被默认值卡死。
  • 供应商返回非 JSON、返回非对象 JSON 或空响应体时,报错会带上实际返回内容的前 300 个字符。此前这些情况只报一句“无法解析的非 JSON 响应”,把唯一的诊断线索丢掉了。

修复:换模型后重试仍然打旧模型

助手里模型选到失效的那个之后,即使切回可用模型,点“重试”或重新提问仍然报同样的错,只有新建对话才正常。

原因是重试优先使用失败消息里记录的模型,用户当前的选择被忽略。现在反过来:当前选中的模型优先,消息里记录的只在当前没有可用模型时作兜底。

修复:文风指南预览看不全

文风详情面板的 ScrollView 缺少收缩约束,父层只有 maxHeight,内容超出后会被裁掉且滚不动。参考书详情面板是同样的写法,一并修掉。

改进

  • 参考书详情页显示蒸馏实际使用的模型名。蒸馏一直跟随“设置 → 模型与供应商”里的默认模型,此前界面上看不出是哪一个。
  • 获取模型列表后新增“查找模型”过滤框,按名称或模型 ID 做子串匹配。中转站动辄返回几百个模型,翻找很费时。
  • “设置 → 高级”新增应用版本检查,可查询本项目 GitHub 最新 Release 并跳转下载。版本号按段做数值比较,不会把 0.10.0 判成小于 0.7.5。

兼容性

  • 沿用 0.7.0 起的正式签名证书,可直接覆盖升级。
  • applicationId com.openfic.mobile,versionCode 13,minSdk 28,仅 arm64-v8a。
  • 未新增任何运行时依赖;版本号读自 app.json,与构建配置同源。