OpenCode进阶探索-利用模型进行文献情报检索但不要让模型替代人判断

前面写了一篇怎么从零创作技能的文,这回再写一个新技能的构思过程:帮人学习的技能。

学习这件事的第一步,其实不是学,是找到靠谱的东西来学。信息源不靠谱,后面全是白费。这不是什么高深的道理,但很多人着急的时候往往跳过这一步。

从博士论文入手

博士学位论文有一个好处:要过盲审。不是谁都能随便写一篇就毕业的。这就给了它一个基本的质量底线。另一个好处是博士论文通常有章是导论性质的,把某个领域的来龙去脉讲一遍,比教材新,比期刊深入浅出。要了解一个自己不熟的领域,从一篇好的博士论文看起,效率往往很高。

但博士论文不全免费。有的数据库可以免费下,有的只能看摘要。如果让模型来帮忙,它可以去搜哪些数据库是免费的、哪些可以通过学校图书馆访问、哪些有开放获取的政策。这比自己一个一个试快得多。

各学科的专业站点

搜索引擎搜出来的东西良莠不齐。百科类网站谁都能编辑,有的是广告,有的是粉丝维护的。不是说全不能用,是得留个心眼。

但每个学科总有一些大家默认靠谱的地方。计算机的 Stack Overflow、医学的丁香园、物理的 arXiv,这些站点在各自圈子里是经过时间检验的。让模型做一个列表,把不同领域对应的专业站点整理出来,再根据你具体要查的东西去定向搜索,比泛泛地搜好很多。

引用必须能验证

用模型查东西最怕一件事:它编了一个看上去很真的引用,你去查,根本不存在。这在学术上是非常严重的问题。有人因为这个被取消了学位——这不是玩笑。

所以这个技能里有一条死要求:引用的每一个地方,都必须有可点击的超链接。而且要去验证那个链接是不是真的能打开,打开后的内容和引用的是不是一致。做完之后,还要脱离前面的上下文,单独把参考文献列表和正文中的引用位置核对一遍。宁愿少引几条,也不要混进去一条假的。

自己不熟悉的领域要查东西,让模型来检索是好的,让它来替你做判断是不好的。

为什么不能完全交给模型

有个现象得说一下。现在的模型是概率生成,它偏向于给出最常见、最中庸的答案。这在很多日常场景下是优点,但在需要前沿、需要严谨的专业领域就可能是问题。最高概率的往往只是最平庸的老生常谈。

有的人,包括一些老师,习惯什么事都拿模型来问,然后让模型帮自己做决定。这样久了容易产生一种心态,觉得模型说的都对。但到了你自己熟悉的专业领域,你一看就会发现问题——很多地方不靠谱,甚至干脆是错的。你熟悉的领域能看出来,那不熟悉的呢。

以前有一次和一个师兄聊这个事。他坚持用某个模型来给自己提供医疗和健康方面的建议。我劝过他,说不太靠谱。他说有很多什么专家也在这么用,所以可靠。后来有研究团队发了文章,指出多模态模型在诊断场景下存在一个效应:它根本不认真看图,而是直接输出迎合评分标准的答案。你说它答对了,其实是它在做应试,不是真的在看图分析。我把文章发给他,他还是不改变看法。

这件事让我想了很久。不是想模型的问题,是想人为什么在一些事情上会那么难以改变。

认知茧房和永远对的人

有一种情况,我观察过不少次。有的人从来不认为自己需要修正任何看法。支撑他自信的东西,不是对事实的核对,而是他有一套自洽的叙事能解释他看到的东西。只要说得通,就够了。至于事实到底是什么,他没有兴趣去核对。

这不是年龄的问题。有的人年纪轻轻就已经是这种状态了,反过来有的老人保持着旺盛的好奇心和纠正自己的勇气。区别不在年龄,在是否愿意接受自己可能是错的。

遇到这样的人,没必要去辩论。他在自己的叙事里是永远赢的——逻辑自洽、经验丰富、引经据典,你怎么可能辩得过他。但辩论赢了又怎样呢,和自己以为的对错没有关系。

人的时间是有限的。心跳有数,清醒的时刻有限,每一次分心都是不可逆的消耗。把时间花在自己关心的事情上,花在值得深入的东西上,比什么都强。


怎么把这个做成技能

和上一篇视频萃取的思路一样,把刚才说的这些整理成一段话,直接喂给 opencode。下面是我准备好的提示词样本——大家也可以用自己的风格来写,不必照着我的格式来。


要帮我创建一个技能,中文名叫学术导览,英文名叫 AcademicGuide,用来帮人入门一个新的学科领域。

第一步,找博士论文。 搜索和这个领域相关的博士论文,优先找近三年内的。整理出论文标题、作者、学校、年份、下载链接。标注哪些是免费可获取的、哪些需要机构访问、哪些完全封闭。如果是需要机构访问的,也查一下有没有作者发的预印本或者开放获取版本。

第二步,整理专业站点。 针对这个学科,搜索领域内公认靠谱的专业网站、论坛、数据库。不要用泛泛的百科类站点,要找圈子里公认的。比如计算机领域的 Stack Overflow、GitHub,数学和物理的 arXiv、MathOverflow,医学的 PubMed、UpToDate。把地址、简介、更新频率列一个表出来。

第三步,搜索和记录。 每一次搜索的结果都必须保留原始记录。搜到了什么、从哪个网站来的、什么时候搜的,全部记录下来。最终输出的时候,每一条引用都要有一个可点击验证的超链接,还有一个完整的参考文献列表。

第四步,验证引用。 这步最重要。把参考文献列表单独拿出来,脱离前文的语境,逐条打开链接,确认链接能访问、内容和引用的说法一致。没有经过验证的引用一律不能用。引用格式要规范。

后续如果要使用这个技能,直接通过 /学术导览 <领域名称> 来调用。


上面这段话给了模型它需要的所有约束:信息源的选择标准、验证引用的硬性要求、输出格式的规范。自己先想清楚每一步要做什么、做到什么程度才算合格,再把这段话说给 opencode,它就能帮你做出一个可以反复用的技能来。关键是先想清楚再开口,想不清楚的不要交给它替你想。

给出提示词让 opencode 创造技能

技能初步创作完成

制作成功

案例测试

结果参考

说回到技能本身。这个技能的思路并不复杂:找一个方向,搜博士论文和专业站点,把信息源做成列表,每一条都验证引用。模型负责做检索和整理这些费时间的事,人负责判断哪些靠谱、哪些需要再确认、哪些方向值得往下走。分工清楚,各干各擅长的。