GangDan 五月中的集中更新:精准选文、知识库分析、学习模块全面修复

前情提要:

我写了一个完全离线的 AI 编程助手-纲担(GangDan),聊聊背后的设计思路

完全离线本地运行的参考文献重命名、格式转换、知识库构建与问答工作流-Chou+NuoYi+Gangdan 三个工具联合使用

GangDan(纲担)升级:开源本地知识库 + 支持本地模型和在线模型的深度研究助手

GangDan 的知识库是怎么炼成的

GangDan 更新:可用在线模型+从写综述到写完整文章

GangDan(纲担)升级:给知识库加了个 Wiki,顺便聊聊为什么 RAG 不够用

GangDan(纲担)重构-几乎重做了一遍

GangDan 继续更新:知识库分析全面升级,精准文献综述一键生成

GangDan 上次更新是基础的知识库管理和文献搜索功能。这几天又做了不少改进,主要围绕几个方向:精准选文、知识库深度分析、学习模块的彻底修复。

精准选文:想用哪篇用哪篇

之前聊天的时候,知识库里的文章是全部拉进来用的,没办法挑。现在聊天框侧边栏加了一个选择文章的下拉按钮,选了知识库之后自动加载里面所有的文档,按 markdown 原始文件名显示——文件名里通常就有作者、年份这些信息,比光看标题直观得多。

勾选你要的文章就行。不选的话默认用全部,选了就严格只用选中的。不管是直接聊天、写综述还是写论文,都按这个规则来。这个功能对文献综述写作特别有用——你只想用其中三五篇写综述,以前没办法,现在勾上就行。

知识库分析面板

知识库页面新增了第六个标签 Analytics,里面有六个子功能:

话题聚类能把文档按关键词自动分组。没有预计算的向量也能跑,会自动切换到快速关键词聚类,始终可用。

点云可视化是我觉得最有趣的。它不像之前那样随机撒点,而是算一篇文章和另一篇文章的关键词重叠率——重叠越多,离得越近。然后用力导向布局跑两百轮迭代,最终呈现出来的图确实是内容相关的文章自然聚在一起。点击任意一个点会弹出标题和内容摘要,选3D模式后还能拖鼠标旋转,不同颜色代表不同聚类。

观点聚类以前用的是情感分析那套,把文章分成支持、反对、中立。对学术论文来说基本没用,大量文章都被塞进 neutral 里。现在改了,按关键词重叠来分组,按主题聚,有意义多了。

严格引用和综述写作都支持按选中的文章来生成,参考文献列表用的是完整文件名(含作者年份),而且文章已经按年份排好序,写出来自然有时间演进的脉络。综述还支持文献综述和学术论文两种模式。

学习模块全面修复

之前出题器、引导学习、考试生成、讲义生成、深度研究这些功能经常报错或者不出结果。排查下来发现根因很简单:这些模块的代码里硬编码了 Ollama 的 API 地址 localhost:11434,但如果你的聊天模型配的是别的服务,比如 MiniMax、OpenAI 等,这些调用全部失败。

修复方案是给 OLLAMA 对象打了个 monkey-patch,当 Ollama 不可用时——不管是没启动还是模型不存在——自动回退到设置里配置的聊天客户端。同时改进了 JSON 解析,MiniMax 这类推理模型输出的响应里带有 think 标签,增加了自动剥离逻辑。

深度研究也改了,现在直接用设置里配好的聊天模型,不再需要单独配一套研究专用模型。

翻译补全和界面修复

105个翻译键补全,覆盖了中英日韩法俄德意西葡十种语言。之前初始加载时很多文字不跟着语言设置变,现在一打开就能正确显示。

知识库子标签页之前有段时间全部白屏打不开,查下来是 HTML 结构嵌套的问题,修复后文献搜索、Wiki、Analytics 都恢复正常了。

写在最后

基本上把学习模块的稳定性问题根治了——不再绑死 Ollama,不管你用什么聊天服务,所有功能都能正常工作。知识库分析也从无到有搭起来了,点云和聚类这些对知识库里的文章做快速概览还是挺有用的。

代码和文档都在 GitHub 上持续更新。

预览时标签不可点