入选理由查文献不让模型自己写引文:只读开放获取全文,候选引文与原文逐字比对达 95% 才采用,再由代码粘贴已验证原文。
我做了一个自动化的学术 AI 研究员,它能杜绝幻觉
I made an Automated Academic AI researcher which is hallucination proof.
补充说明:很高兴宣布我现在也有演示视频了,请大家看看视频,并给 GitHub 点个星,每一份支持都能让更多人知道这个很棒的资源,我为此投入了数百小时,谢谢大家的支持!
https://youtu.be/Nc1L2j8ZuCg?si=QLvPuGmVriYhJQB1
前一阵子我发布了 Automated-AI-Web-Researcher-Ollama,它能把本地模型变成一个自动研究员,自己上网搜索、抓取站点并汇总发现。它得到的反响比我预想的好得多。
但它有个我绕不过去的问题:网上到处是言之凿凿的胡说八道,而 LLM 去总结这些言之凿凿的胡说八道,产出的就是带着引用出处的、言之凿凿的胡说八道。
所以我做了它的升级版。它压根不搜网页,而是直接去查真正的科学文献。
Academic-AI-Literature-Reviewer-Ollama 👉 https://github.com/TheBlewish/Academic-AI-Literature-Reviewer-Ollama
你给它一个研究问题,它接下来会:
- 检索六个学术数据库(OpenAlex、Semantic Scholar、CORE、Europe PMC、Crossref、Unpaywall)
- 下载开放获取论文的完整正文,而不只是摘要
- 逐篇阅读,提取研究方法与结论,权重上按元分析高于随机对照试验、随机对照试验高于病例报告来排序
- 做差距分析,改进自己的检索策略,再回头重跑——一个能自我迭代的研究循环
- 顺着参考文献列表往回追溯引文,找到原始研究
- 评估自身证据基础在方法学上的强度,并针对其发现的缺口开展定向检索
- 撰写完整的 APA 第 7 版文献综述,随后自我审阅、自我修正,并逐条核验每一处引用
我真正在意的一点是:它没法编造引文。
不是「不太可能」——是根本不能。模型永远不允许自己敲出一句引文。每一句候选引文都要跟源论文逐字比对,相似度要达到 95%,只有通过比对的引文才会拿到一个类似 [[Q7]] 的标记。模型只负责放置标记,代码在编译时把核验过的原文贴进去。如果一句引文并不真的在论文里,那对这份文档来说它就不存在。研究简介用的是同一套机制,所以一条发现也不会被挂到错误的研究上。
这个限制决定了大部分架构设计,也让整套东西变得远比它本该有的样子复杂。但它也是这份输出唯一值得一读的原因。
作为参照:原版大约 1,500 行。这一版超过 14,000 行,分布在 11 个模块里——一条 LangGraph 流水线,包含 25 个节点和 12 个阶段。这无疑是我搭过的最复杂的东西。
100% 完全本地跑在 Ollama 上,采用 MIT 许可,不调用任何付费 API。对配置不高的机器也友好——有一个低配模式,会把吃资源的阶段分块处理,这样整套流水线在小机器上也能跑完,而且不会削弱校验环节。
欢迎提问,也非常欢迎提交 PR。