知识库
Key Takeaway
- 本地大模型和知识库可以通过ngrok实现外网访问,兼顾数据隐私安全和使用便捷。
- ngrok是一种内网穿透工具,能建立安全的内部和外部通道,实现外网访问内网。
- 部署ngrok需要安装ngrok、添加认证token,并通过命令将本地端口映射到外网。
- 通过外网访问本地知识库,用户可以随时随地与私人知识库交互,获取信息或生成内容。
- 文章强调了本地部署AI的趋势和ngrok在实现这一趋势中的价值。
Full Content
本地大模型和本地知识库,通过外部网络也可以访问。
简单来说就是,你用家里的电脑跑着大模型,然后到了外边,用手机也能访问。我先快速演示一下,然后再告诉你:1、这么做有什么价值;2、具体怎么操作。
我先把本地大模型跑起来。运行Ollama,让它在后端呆着。然后运行Docker,把Open WebUI这个镜像启动起来。
这时通过本地链接,我们就可以在这个ChatGPT风格的网页上使用本地大模型了。而且,不仅仅只是跟大模型聊天,你还可以把文档导进去,构建自己的本地知识库。
如果想知道具体怎么安装和使用,看我上一个视频。如果有什么疑问,或者想进一步交流,可以到知识星球来找我。我每天都会在星球里分享内容,以及回答问题。
截至目前,我们都是在本地运行。在这个基础上,要想实现外部访问,只需要在终端里多运行这一条命令。然后把这条链接发到手机上。
我把手机的Wi-Fi关了,在5G状态下打开链接。可以看到,同样的界面,同样的大模型列表,同样的文档,说明我们连接成功了。
所以,折腾这么一出,到底为了啥?
对我来说,最有价值的地方在于,我可以随时随地接入我私人的本地知识库。
其实这个思路就跟NAS一样。
你在家里的电脑上存了很多私人的文档。你不可能把这些文档在每个电脑上都备份一遍,更不可能传到云端。那到了外边,比如在公司的时候,或者出差的时候,想要使用,就可以通过外网访问家里的NAS。
那么,通过外网访问本地知识库也是一个道理。唯一不同的是,我们不是直接访问这些文档,而是与本地大模型交互,让大模型告诉我们文档里的内容,或者让大模型基于文档去生成新的内容。
所以,我这么多年积累的资料,我整个知识体系,都可以喂给大模型。它们都留在我家里的电脑上,很安全。然后,我走到哪儿都可以访问。这是最最吸引我的地方。
要实现这个,只需要安装一个东西:ngrok。
如果你是开发者的话,对ngrok应该很熟悉。它既是一种内网穿透工具,一种反向代理服务。简单来说就是,ngrok在内部和外部建立了一条安全的通道,让你通过外网也能访问内网。
安装和配置ngrok,只需要在终端里运行三条命令。我这边以Windows为例。如果你是MacOS的话,只有第一步的安装命令不一样。
第一条:choco install ngrok。
这个choco install是专门用来在Windows系统上安装、更新软件包的命令,有点类似pip install。只不过pip install是专门针对Python环境。
我估计大家在这一步都会报错,因为系统里没有安装Chocolatey。一般遇到报错,我都会让GitHub Copilot帮我分析。你用ChatGPT也可以,把一大堆看不懂的报错信息全部复制粘贴过去。然后根据提示操作就搞定了。
你看,GitHub Copilot就教我,先用系统管理员身份打开PowerShell,然后那一行命令,就会自动下载安装Chocolatey,最后重启PowerShell就行。
所以,完全没难度。大家看到报错千万别怕,直接问大模型就好了。
第二条:ngrok config add-authtoken
在ngrok官网注册之后,就会给你一个专门的身份验证令牌。那这条命令就是把你的令牌添加进配置里。
第三条:ngrok http http://localhost:3000
这个localhost:3000就是Ollama在本地使用的端口。你可以简单理解为,这条命令就是告诉ngrok,帮我把3000这个端口跟外部打通。
当你把第三条命令也成功执行,在终端里就会看到,ngrok给了你一个链接——这个就是咱们能在外部使用的链接。就像刚才我演示的那样,把它发给自己,在外边也可以使用了。
如果你觉得每次都要把链接发给自己太麻烦,还可以在后台创建一条固定的链接,然后通过一行命令配置起来。这样每一次启动,ngrok都会使用相同的链接。然后你可以把那个网页发送到手机桌面,每次一点开就行。
OK,以上就是ngrok的基本用法。这期视频我就是想给大家打开一个思路。就像我在知识星球里分享的:
从今年开始,AI会加速普及。两条路线:1、上终端;2、应用爆发。
那么,在端侧跑大模型、建立知识库之后,如果还能通过外网访问,那么就能同时兼顾数据隐私安全和使用便捷。这是ngrok的价值。
大家如果有什么建议或者疑问,可以到星球里交流。咱们下期见。
Key Takeaway
- AI分身和AI客服的普及是AI技术落地和应用爆发的重要代表,云厂商的加入加速了这一进程。
- 腾讯云大模型知识引擎通过提供精调知识大模型、灵活的知识库设置(如语义切块)和搜索增强功能,驱动AI分身和AI客服。
- 知识库设置支持文档和问答集,并强调评测和效果调优的重要性。
- 腾讯云知识引擎的“工作流管理”功能,能将复杂流程转化为AI可执行的任务,实现高度定制化。
- 知识库和工作流是智能体的核心能力,分别对应知识和经验。
- 腾讯云知识引擎还提供多轮改写、Embedding、Rerank和文档解析等原子能力,方便开发者集成。
Full Content
每个IP都需要AI分身,每家企业都需要AI客服。大家可以记住我这句话,半年之后来考古。
我很确信,这一轮AI技术落地、AI应用爆发,一个代表就是AI分身、AI客服的普及。前者对应超级个体,后者对应超级组织。这个进程正在加速,因为云厂商已经加入进来了。市场格局肯定会变,不再是模型厂商占主导的局面。
你看,我就给自己的公众号加了个AI分身。这个智能体应用的背后,是腾讯云大模型知识引擎在驱动。
我记得一年前刚开始做视频介绍AI的时候,市面上的RAG工具特别稀少,而且还得靠自己各种组合、调试,才能实现一些定制需求。我甚至一度都想自己手搓一套系统了。
你再对比现在就会发现,这一年的发展实在太快了,出现了RAG as Service,出现了一大堆开箱即用的产品。就拿我刚才提到的智能体应用来说吧:
大模型我用的是“精调知识大模型高级版”,打开了“上下文改写”,把记忆轮数加到10轮。这个模型你可以理解为就是专门为RAG特训过的模型。当然,如果你觉得上下文长度不够的话,可以选别的,比如256K长文本版的混元大模型,这长度绝对够用了。
看这一串的列表你就知道,为什么大厂都要搞基础模型研发了。那么多的业务场景等着特定的大模型开锅呢。这种战略主动权不抓自己手里,脑子真就坏掉了。
在知识库设置方面,我选的是“文档”,因为都是现成的视频脚本。如果你本来就有人工客服,想转成AI客服,那肯定会有QA,对吧?这时就可以选择“问答”。
一般来说,问答类型的资料,对提升检索的精确度会更有帮助。之后我也会慢慢积累一批关于AI的问答,根据我的知识储备、我对AI的理解来调整。目的是让这个AI分身尽可能接近我的认知。
召回设置方面,一个是召回数量,也就是召回多少个切块给到模型;另一个是检索匹配度,也就是相似度达到一定数值之后才会被纳入。
至于切块的大小,并不需要用户设置。腾讯云知识引擎会根据语义、根据整篇文章的意思,自己决定该从哪里切割,这样才不会把上下文的意思给硬生生截断。这一点我特别喜欢。如果你之前有用过RAG工具的话,就知道要决定切块大小有多麻烦了。
最后,我把“搜索增强”打开了。也就是说,模型在回答的时候,除了会参考我给的知识库,还会去调用微信搜一搜和搜狗搜索的能力,从微信生态内,比如海量的公众号文章,补充更多信息进来。
之所以打开“搜索增强”,主要是因为我不想要一个只会鹦鹉学舌的AI分身。如果你的需求是AI客服的话,那可以不打开,这样更可控、更保险一些。
当这些基本设置都搞定之后,大家别着急上线,记得做评测。
先导入样本集,然后去创建评测任务。评测的目的是看看模型回答的准确率能到多少。如果准确率不达标,要么回去改设置,要么去改资料。
说实话,我之前见过太多人搞了RAG之后大骂没效果、AI胡说八道了。其实绝大多数都是因为想当然地认为,把资料全喂进去就可以。在真实世界里,现有的技术还没到这么傻瓜的程度,还是需要你做评测、做调试的。
不仅如此,正式上线之后,还会遇到用户对回答不满意的情况。这时就会用到“效果调优”。在这个页面,我们会看到所有用户不满意的回答。
刚才说的评测只是模拟情况,而这边是实际业务场景。两个加起来,才能把这个AI分身、AI客服调到最佳状态。腾讯云能想到这一点,并且把它产品化,真的是功德无量。
哈喽大家好,欢迎来到我的频道。谦虚地说,我是国内少数几个能把关于AI的Why和How讲明白的博主。我提供的东西比教程更值钱。记得点一波关注。如果想链接我,就来newtype社群。已经有600多位小伙伴付费加入啦!
回到今天的主题:腾讯云大模型知识引擎。
很多人都在关注C端市场的AI应用。我其实更多是在看B端,两个原因:
第一,现阶段的AI能力距离市场的期待还挺有距离的,C端很难出现现象级的、能解决大问题的产品。
第二,B端对AI有明确需求,赛道非常清晰,回报也很可观。所以这边更有可能出现好东西。
对我这种“个体户”来说,用上企业级的产品,那就是降维打击。这是我看上云厂商产品的原因,也是我推荐给大家的原因。
腾讯云大模型知识引擎是一款PaaS产品。刚才我介绍的只是RAG的基础功能。如果你理解原理的话,那这部分的操作应该非常容易。快的话,十分钟搞定。
更进一步,如果你想对这个智能体应用有更清晰的指导,如果想把你的SOP教给AI,那一定要试试工作流管理功能。
举个典型的例子:图书馆客服服务。用户找图书馆一般会需要三种服务:要么借书,要么还书,要么咨询相关规则。于是,在这个画布上,大家可以看到三条路径,对应三种服务。
在工作流的开端,AI会先根据用户的询问做一个条件判断,决定是要进入哪条路径。我以借书为例。整个过程,AI会主动引导用户提供相应的信息。
首先是要借什么书,以及借多久。因为涉及到时间,很多用户表述会很不一致,比如两周、一个月等等,所以需要做个参数归一,把所有表述都统一成天数。
接着,AI会根据书名和要借的时长去调用接口、查询能不能借。
如果能借,那就走上边的分支,要求用户提供账号ID。如果不能借,那就走下边的分支,问用户要不要换一本书。
我在调试页面演示一下对话的效果,大家感受一下。
任何涉及到流程的交互,都可以变成工作流。比如很多人问我怎么学AI,如果用我的AI分身来处理的话,就可以把工作流给用上。根据我本人的回复和理解,设计一系列的条件判断、各种分支路径,然后全部教给AI。所以大家一定要把思路打开,别觉得这一大套东西只能用到客服上边。
另外,一个智能体应用可以挂上N个工作流。也就是说,你可以设想多种场景,创建多个工作流。AI会根据对话内容,自主判断需要进入哪一个工作流。这一点非常有用,可玩性太高了!
知识库加工作流,就是目前智能体的所有能力。前者对应知识,后者对应经验。腾讯云知识引擎把这些都打包好了。所以,用户只需要把精力放在设计、调试和调用上。
设计和调试刚才都介绍过了。那么在调用方面,这个知识引擎以API为主,毕竟是PaaS。如果你有比较强的开发能力和需求,只需要引擎的其中一部分能力的话,可以选择“原子能力”,包括:
多轮改写,其实就是针对用户可能提问不完整的情况。模型会结合上下文语义去完整还原。这个挺有用的。
Embedding和Rerank,一个是把文本进行向量化,一个是把召回的切块进行重排序,都是RAG必备能力。
文档解析,很基础、很重要,也很容易被大家忽略。好的解析是一切RAG的出发点。腾讯云在这方面很有优势。市面上很多知名的AI产品都在调用他们的文档解析技术。他们可以把各种文档转成Markdown格式。而且还可以解析表格、图片,以及页眉、页脚、标题等等内容元素。这个真就帮了大忙了,省去了我们大量处理文档的时间。
这四个“原子能力”的调用,腾讯云知识引擎都有很详细的文档介绍,我这边就不演示了。
我这个频道算是介绍RAG起家的。从本地大模型的使用,到RAG引擎的部署,过去一年我分享了好多这方面的内容。到了年底,终于有厂商推出开箱即用的综合型产品了。大家看完视频记得去试试腾讯云知识引擎。
OK,以上就是本期内容。想讨论AI,来我们newtype社群。那咱们下期见!
Key Takeaway
- 秘塔AI搜索的专题功能是其核心更新,提供了知识库功能,支持多人协作和API调用。
- 知识库的创建和分享加速了知识的流动,实现了“RAG as Service”。
- AI要变得有用,需补充领域知识和领域经验,秘塔通过专题和工作流来解决。
- 专题功能通过整合搜索结果、文档、网址和文章,强化了AI的输入能力。
- 秘塔通过概念图、术语表等功能强化了AI的输出,提升了知识库的可用性。
- 问答引擎的未来形态将是更精细化的知识流动和用户与AI的深度协作。
Full Content
我给自己的博客加了一个AI客服。现在,你有任何关于AI相关的问题都可以问它。比如,什么是过度拟合?大模型是如何预测下一个Token的?或者,大模型能像人类一样思考吗?
在这个AI客服的背后,是一个超大的知识库,有将近2000篇专业论文和文章。而知识库的后边,是秘塔的RAG技术。
前些天秘塔AI搜索上线了专题功能,其实就是大家非常需要的知识库功能。
用户可以把文档、网页、文章,甚至秘塔的搜索结果全都保存进知识库。秘塔会对这些资料做数据清洗、解析等等。然后大模型再根据资料回答用户的问题。
秘塔的这次更新,我个人最最喜欢的,是分享和API两大功能。
在专题分享设置中,如果你把“可编辑”权限打开,那么被分享的人也可以上传资料到专题的知识库当中。这意味着可以多人运营同一个专题。
比如,办公场景,团队里的每个人都可以及时更新专题知识库,让AI跟上你们的业务进度。在学术场景,一起搞研究的小伙伴,不管是谁发现了有价值的论文,都可以上传,特别方便且有用。
至于API功能,它让专题内沉淀的大量宝贵资料可以被应用到更多地方。比如,我开头说的那个包含2000篇专业论文的专题,就是秘塔官方做的。我拿到API信息之后,在Cursor的帮助下,没写一行代码,就是纯对话,不到半小时就把AI客服给做出来了。
这个其实就是国外特别火的RAG as Service。如果你只是一些轻量化的需求,那真的没必要去本地部署那些消耗特别大、调试起来特别复杂的RAG,性价比太低太低了。真的,我自己折腾过之后发现,用人家现成的就挺好。
回过头来再看专题这个功能:创建知识库是把知识引入——Input;分享和API是让知识流出——Output。整个加起来,秘塔其实在做一件事:加速知识的流动。
哈喽大家好,欢迎来到我的频道。谦虚地说,我是国内少数几个能把关于AI的Why和How讲明白的博主。我提供的东西比教程更值钱。记得点一波关注。如果想链接我,就来newtype社群。已经有600位小伙伴付费加入啦!
回到今天的主题:秘塔AI搜索的专题功能。
秘塔是一款问答引擎产品。但是我觉得,它应该不会止步于问答引擎,或者说,问答引擎不应该是它的终极形态。
我之前在社群专属视频里说过,AI要变得有用起来,一定要补上两点:领域知识,和领域经验。
很多知识是非公开的,只在特定领域内流通 ,AI获取不到。或者,它虽然公开,虽然也上网了,但是网上压根搜不着。如果AI接触不到这些领域知识,那么,它就无法在知识层面、信息层面上跟用户同步和对齐,这就没法协作了。
所以,AI需要RAG,需要知识库,把领域知识补上。
再来看领域经验。经验是比知识更加非标准化、私密化的东西。比如你是开足疗店的或者开美容院的,从客户一进门的问候,到引导他选择套餐,所有环节加起来得有几十项的经验,这些都装在老板的脑子里,是最佳处理方式。如果AI接触不到领域经验,那它就只能以一个新人身份、硬着头皮往上顶了。
所以,AI需要Prompt,需要Agent Workflow去对接SOP,把领域经验补上。
从知识和经验的视角看问答引擎,我们会发现,在输出方面,问答引擎已经做得很好了——它给你的不是网页,而是答案。但是在输入端,互联网上的信息只是补充和更新了它原本就具备的通用知识。领域知识和领域经验还是欠缺的。
所以,秘塔做了两件事:
在搜索范围之外,秘塔增加工作流。比如市场营销分析、股票分析等等。这个就是把领域经验传授给AI的初级方式。后续还有很大的迭代空间。
另一个就是最近上线的专题功能。它给AI添加了一个外挂知识库。这个知识库包含四种内容。
一是搜索结果。直接点击问题右边的加号按钮就可以保存进专题。这样一来,很多我们觉得有用的搜索结果就可以分类存起来,以文章的形式进入知识库。这一点秘塔做得很赞。
二是文档。比如PDF、Word。我最经常做法是,先大致扫一遍论文,有个初步的概念,不然都不知道该问啥、聊啥。然后再给到AI,做进一步交流。
三是网址。比如,一些公司的官网上有大量的新闻稿和产品信息。这时候就可以让AI爬取里边的内容作为参考。这算是一种强指向型的指令——让AI别到处瞎搜索了,就看这个网站。
四是文章。通过新建文章,我们可以直接贴文本进去。省去了还得创建一个文档,然后再把文档上传的麻烦。
通过包含这四种内容的外挂知识库,秘塔给AI补充了它原本不具备的领域知识或者说是来自私域的信息,以及需要AI重点关注的来自公域的信息。
上面这些都属于强化输入。而在强化输出方面,秘塔解决了一个头大的问题:
当知识库里的信息越来越多之后、时间久了之后,我们可能会有点懵,拿不准里边都有什么、该问什么。这个时候,概念图、术语表、学习建议、内容概要、建议问题这五个东西就很重要了。
只要你知识库里的资料超过5份,秘塔就会自动帮你生成这些。
它会读取所有资料,把作者和对应的主题建立关联,以概念图的形式呈现。这个对于论文之类的内容特别有用。
如果你有很强的学习需求的话,那么术语表、学习建议和内容概要肯定能帮到你。知识库的体量越大,效果越显著。
如果说原本的搜索加AI是问答引擎1.0形态的话,那么,强化了输入和输出之后的专题就是问答引擎2.0形态。从原来那个更大、更泛的漏斗进阶到了一个更小、更精的漏斗。
那么,问答引擎3.0形态会是什么样子呢?我建议秘塔可以考虑把Perplexity的Page功能加到专题里边。
因为从1.0到2.0,里边的信息经过用户的主动提纯,更加接近生产需求。用户在专题里边进行多轮对话、进行思考的动力会更强。这时候,像Page这种工具就非常适合,因为它是把是把我们习惯的边搜索、边构思的过程具像化了、产品化了。
在类似Page功能的帮助下,用户和AI互相配合,又对信息或者说知识做了一道提纯,形成新的、下一层级的漏斗。这是我觉得问答引擎3.0形态该有的样子,以及背后的逻辑。
从1.0、2.0到3.0,我有一个感觉:知识的流动就像水流一样,从主干分成无数的支流,最终又汇总回主干,完成循环。在这个流动的过程中,像秘塔这样的产品,它们的价值就在于疏导和加速。
OK,以上就是本期视频。大家看完了记得去试试产品。那咱们下期见!
Key Takeaway
- “全局记忆”对于提升AI对话连贯性、实现个人助理功能以及构建全球知识共享工具至关重要。
- OpenMemory项目通过独立存储聊天记录并利用MCP协议,实现了跨客户端和跨对话的AI记忆共享。
- OpenMemory的功能实现依赖于大模型(用于语义理解和检索)、本地化存储(确保隐私、数据可移植性和扩展性)以及MCP协议(实现不同客户端间的内存共享)。
- 作者强调了上下文对于AI创造价值的重要性,并指出“全局记忆”领域为创业者提供了开放和发展的机会。
- 建议将知识库的存储与调用分离,本地存储数据,通过MCP调用,从而获得更自由的模型选择。
- 智能是吸引用户的手段,而数据才是长期留住用户的关键。
Full Content
虽然我经常喷OpenAI,不过他们关于“全局记忆”的判断和观点我是非常认同的。
往小了说,“全局记忆”关系到对话的连贯性。这是今天AI在体验上的一大痛点。
你回想一下,今天大多数的AI客户端,你每开一个新的对话,是不是就好像在跟一个陌生人对话。因为你们过去交流的,它都不知道,你又得重新聊一遍。
这么搞,效率很低,而且工具感很强,你不会觉得这是个有智能的生命。
往大了说,“全局记忆”不只覆盖所有的历史对话,还可以、也应该包括用户的各种资料,甚至包括更广的知识库。
一旦技术成熟,把AI打造成为一个全面的个人助理、一个全球知识共享工具是很有可能的。这个就是OpenAI的野心。
当然啦,这个愿景有点远。不过站在今天,我们还是可以先体验一下的——通过OpenMemory这个项目。
简单来说,OpenMemory的作用就是把聊天记录单独存储。任意一个客户端里聊的东西都可以存进去。然后通过MCP进行调用。任意一个客户端都可以调用任何记录。我给你们演示一下就明白了。
我已经安装OpenMemory,并且通过SSE的连接方式与客户端ChatWise连上了。可以看到,这个MCP一共有四个tools,分别是添加、查询、检索、删除。
我这边准备了一段话,让AI把这些关于Prompt House的内容保存。LLM接到请求后,通过MCP调用add_memories这个tool,成功把那一段话保存起来了。
这时,在同一个对话框,我提出问题:记忆中都有哪些内容?可以看到,LLM很顺利把刚才保存的那条记录调出来了。
接下来,我们打开一个新的对话框,看看AI是否还“记得”刚才的内容。问题很简单:Prompt House主要解决哪两个问题?通过list_memories和search_memories两个tools,LLM把刚才存进去的内容调出,并基于内容完成回答。
同一个客户端的不同对话框,LLM能够自由存储和调用记忆。那么,跨应用呢?我这边打开Cursor,同样的问题:Prompt House主要解决哪两个问题?Claude Sonnet 4也是使用search_memories这个tool,把记忆取回。
你看,无论是跨对话框还是跨客户端,OpenMemory MCP都能实现记忆的存储和调取。
为了实现这些功能,OpenMemory做了三点:
第一,调用大模型。
要把用户的对话存储起来,首先要做的就是“理解”——先理解语义,才能区分哪些是噪音,哪些是重要信息。
不仅如此,在存储的时候,还需要大模型去区分记忆当中的冲突,完成更新。在检索的时候,也需要大模型在语义层面进行检索,而不只是关键词检索。
默认情况下,OpenMemory用的是OpenAI的模型,需要我们输入OpenAI API Key。不过它也支持别家的模型,包括开源大模型。如果你对隐私安全非常非常重视的话,可以连接Ollama。
第二,本地化存储。
为了让用户放心,OpenMemory把所有信息都存在本地。它采用双数据库架构,一个负责存储记忆的向量嵌入,一个存储结构化元数据。
这么设计的好处,一是完全本地化,敏感信息不会上传到云端;二是数据可移植,可以轻松备份和迁移整个数据目录;三是扩展性高,可以切换不同的大模型提供商,或者用本地模型。
第三,MCP。
任何支持MCP协议的客户端都可以通过SSE连上OpenMemory。它的MCP提供四个工具:添加,检索,查看,删除。
有了这四个工具,不同客户端就可以共享同一个内存。上下文就可以在不同客户端之间无缝传递。
我非常看好“全局记忆”这个方向。虽然巨头在做,但是,创业者也有很大机会。
因为,既然是“全局”,那就不能一家独大,就必须开放。在现阶段,有哪家能做到?这不就给了创业者生存、发育的窗口吗?
而且,现在巨头的主要精力还是放在提升模型能力上。所以,几个月前我就在社群里分享了一个思路:
把知识库的存储和调用分开。存储就放在本地,用Cursor创建一个Milvus向量数据库。调用就通过Milvus MCP。当时看大家挺感兴趣的,我还特意出了一期社群专属视频,介绍怎么搭建。
站在用户的角度看,这套思路的好处是,模型的选择会更加自由。谁的模型牛逼,我就对接过去。
站在做产品的角度看,最终留住用户的,不是智能,而是数据。智能只是一个钩子,把用户吸引过来,完成数据的迁移。
而且,智能要发挥作用、要创造价值,一定离不开上下文。这个就是我之前在社群内说的:Context Matters。
回过头来看,过去几个月我分享的那些零散的思路,还有我最近的尝试,全都串起来了。
OK,不多说了。我要继续做产品去了。想了解AI,想成为超级个体,想找到志同道合的人,就来我们newtype社群。我所有的感悟和认知,都会在社群内分享。那咱们下期见!
Key Takeaway
- Ollama是本地运行开源大模型的最佳工具,支持多平台,且易于安装和使用。
- Open WebUI提供ChatGPT风格的Web界面,支持本地大模型交互和RAG能力,可处理网页和文档。
- Anything LLM是更高级的本地知识库管理工具,支持多种大模型、嵌入模型和向量数据库,并提供Workspace概念和对话/查询模式。
- 本地部署大模型和知识库能实现数据安全、隐私保护和更灵活的定制化。
- 文章强调了Ollama的服务器模式,使其能开放端口供其他软件调用大模型能力。
Full Content
在本地跑开源大模型,目前最好的软件肯定是Ollama。
不管你用的是PC、Mac,甚至是树莓派,都能通过Ollama运行大大小小的模型。而且扩展性极强。
我准备分几期详细介绍Ollama的用法。今天这期,先介绍三点:
- 怎么用Ollama在本地运行大模型。
- 在跑本地大模型的同时,使用像ChatGPT那样的Web UI。
- 打造完全本地化的知识库。
大家如果有更好的建议,或者在安装和使用过程中有什么问题,可以到newtype知识星球来找我。
Ollama
安装Ollama超级简单。到官网ollama.com或者.ai下载对应版本就行。
安装完成之后,在终端里输入ollama run,后边接想要运行的大模型名称就行。比如:ollama run llama2。这时系统会自动下载对应的大模型文件。
如果你不确定大模型的名称,到官网的model子页面就能找到目前所有支持的大模型。每一款大模型都有不同的版本,根据你的需求、机器的内存大小,选择对应版本,然后复制命令就行。
一般来说,7b的模型至少需要8G内存,13b需要16G,70b需要64G。大家量力而为,不然跑起来真的非常卡顿。
在默认情况下,你需要在终端里与大模型做交互。不过这种搞法真的太古老了。我们肯定是希望在一个现代的、图形化的界面里操作。这时候就要用到Open WebUI了。
Open WebUI
要安装Open WebUI,需要先安装Docker。
你可以把Docker简单理解为就是一个虚拟的容器。所有应用和依赖都打包成一个容器,然后再在系统上运行。
Docker搞定之后,复制GitHub里的这行命令到终端里执行。一切顺利的话,打开一个本地链接,就能看到非常眼熟的界面了。
这个WebUI,除了具备基本的聊天功能之外,还包含了RAG能力。不管是网页还是文档,都可以作为参考资料给到大模型。
你如果想让大模型读取网页内容的话,在链接前面加个#就行。
你如果想让大模型读取文档的话,可以在对话框的位置导入,也可以在专门的Documents页面导入。
在对话框里输入#,会出现已经导入的所有文档。你可以选中一个,或者干脆让大模型把所有文档都作为参考资料。
如果你的要求不是太高,那么做到这一步就OK了。如果你想对知识库有更多的掌控,就下载这个软件:Anything LLM。
Anything LLM
Ollama其实有两种模式:
- 聊天模式
- 服务器模式
所谓服务器模式,你可以简单理解为,Ollama在后端运行大模型,然后开放一个端口给到别的软件,让那些软件可以调用大模型的能力。
要开启服务器模式非常简单。在终端里输入两个单词:ollama serve。
启动之后,把这个默认链接填到Anything LLM里。这时,软件会通过链接读取可以加载的模型。这些模型是用来生成内容的模型。
除此之外,搭建一个知识库,会涉及到另外两个关键:
- Embedding Model,嵌入模型。它负责把高维度的数据转化为低维度的嵌入空间。这个数据处理过程在RAG中非常重要。
- Vector Store,向量数据库,专门用来高效处理大规模向量数据。
这两个我们都用默认的。这样一来,整套系统都跑在你的电脑上。当然,你也可以选择全部跑在云端,比如,大模型和嵌入模型都用OpenAI的,向量数据库用Pinecone,都可以。
完成最基础的三个设置之后,就可以进入主界面了。这款软件的逻辑我挺喜欢的,它有一个Workspace的概念。在每一个Workspace内部,可以创建各种聊天窗口,可以导入各种文档。
所以,你可以根据项目来创建Workspace,一个项目建一个。然后,把关于这个项目的所有文档、所有网页都导入Workspace。最后,聊天模式还有两种可以设置:
- 对话模式:大模型会根据你给的文档,以及它本来就有的知识储备,综合起来回答。
- 查询模式:大模型只是简单地针对文档进行回答。
这个就是我前边说的,Anything LLM比Open WebUI更进阶的地方,完全可以满足个人对知识库的需求。我已经把它作为我在桌面端Workflow的核心。等这两期视频做完,我专门出一期,讲讲我目前在用的AI工具和工作流吧。
Key Takeaway
- MCP(Model Control Protocol)是模型的超级外挂,能显著提升AI生产力,例如通过结合Claude和MCP实现低配版Deep Research。
- Sequential Thinking MCP有助于模型进行多步骤推理,保持逻辑性和连贯性;Tavily MCP则提供优化过的搜索引擎功能。
- MCP.so是寻找和托管MCP服务器的首选平台,其核心竞争力在于MCP Server Hosting。
- 推荐关注三类MCP服务器:搜索相关(如Perplexity, Tavily)、数据相关(如Filesystem, GitHub)和工具相关(与特定应用打通)。
- MCP的通信方式取决于服务器部署位置:本地运行使用stdio(标准输入输出流),云端运行使用SSE(基于HTTP的远程通信)。
- 即使MCP服务器在本地运行,也可以通过调用远程API实现联网功能。
- 建议新手通过实践Tavily(SSE方式)和Filesystem(stdio方式)来理解和掌握MCP的使用。
Full Content
MCP就是模型的超级外挂。装上之后,你会发现,原来AI生产力可以这么高。
举个例子,我给Claude-3.7 Sonnet配上两个MCP,它就成了一个低配版的Deep Research应用。
一个MCP是Sequential Thinking。它是一种标准化的思考模式,可以让模型在处理多步骤推理任务的时候,保持逻辑性和连贯性。比如,把复杂任务分解成清晰的步骤。当有新的信息出现时,还能灵活调整思考路径。
另一个MCP是Tavily。这个之前介绍过,就是一个对模型优化过的搜索引擎。
有了它俩之后,你看,Claude就会边搜索、边思考;根据搜到的内容,调整思考的路径,然后进行下一轮搜索;当它觉得信息足够了,逻辑也完整了,就会输出最终的报告。
这么一大套流程下来,我用1美元的成本,换来了更高质量的回答。这说明了两点:
第一,OpenAI的Deep Research真的是贵有贵的道理。你看刚才那个思考和搜集的过程就知道,太费Token了。OpenAI那边肯定更复杂。
第二,MCP真的有用。我可以给你们看看对比。我把Sequential Thinking拿掉,只留联网搜索。同样的问题,模型给出的答案简单许多。
这个就是我最近一直在推MCP的原因。那么,我们要去哪里找MCP?找到之后又怎么使用呢?本期视频,我给大家做一个详细解答。
哈喽大家好,欢迎来到我的频道。谦虚地说啊,我是国内少数几个能把关于AI的Why和How讲明白的博主。我提供的东西比教程更值钱。记得点一波关注。如果想链接我,就来newtype社群。已经超过1000人付费加入啦!
回到今天的主题:MCP实用指南。
咱们先说第一个问题:MCP哪里找?
如果你想用现成的MCP的话,那么,MCP导航网站就是你的首选。在这个领域,目前排名第一的,就是MCP.so。
MCP.so是国内明星开发者idoubi的项目。他之前做了好多项目,比如AI搜索引擎ThinkAny。我上期视频说,有人已经开始做MCP基础设施,指的就是他。
在MCP.so,已经有超过3000个服务器被收录。其实,它的核心竞争力不是导航——导航谁都能做,技术含量不高,它的核心竞争力是MCP Server Hosting。
对咱们用户来说,面对这么多服务器,该怎么挑呢?我建议,有这三种类型的服务器大家可以留意一下:
第一,搜索相关的。比如,Perplexity、Tavily都是搜索。Fetch、Firecrawl都是爬虫。
第二,数据相关的。比如,Filesystem能让模型调用本地文件,GitHub能让模型接入代码仓库。
第三,工具相关的。比如,Blender、Figma、Slack这些,你看名字就知道是跟什么应用打通了。
OK,现在大家知道去哪找,以及怎么挑MCP了。那么,如何接入、使用?
这个其实很好理解。你想嘛,既然它叫“服务器”,那么,这个服务器放在哪里,就决定了通信方式。
如果放在本地,跑在你自己的机子上,就用stdio;如果是跑在云端,比如MCP.so上边,就用SSE。
stdio就是标准输入输出流,通常用于本地通信。比如,Cursor、Claude、ChatWise之类的MCP客户端跟跑在同一台机子上的MCP服务器之间,通过标准输入(stdin)和标准输出(stdout)进行通信。
SSE则是一种基于HTTP的远程通信方式。MCP服务器远程托管。你本地的客户端通过SSE实现跨机器通信。
不太理解也没关系。我给你们看看实际的样子。
以ChatWise为例。在设置里的“工具”页面,点左下角的加号按钮,可以添加MCP服务器。在“类型”中,咱们可以选择stdio和SSE两种通信方式。
比如Sequential thinking,我是用stdio的方式。命令中的这一串其实就是GitHub上要求写的参数。因为它不需要API Key之类的东西,所以下边的环境变量就空着。
对于一些需要填写环境变量的MCP,比如Tavily,那就把API Key填进去。点击“查看工具”,ChatWise会尝试连接,然后把这个MCP下所有的工具都列出来。
那么,SSE是什么样的呢?
比如Firecrawl,我就是用SSE的方式。这个就简单多了,只需要把链接填进去。那么,链接哪来的?
还记得我刚才说的吗?如果MCP服务器跑在云端,那就通过SSE的方式连接。MCP.so就提供了这样的云端服务。
来到这个网站的Firecrawl页面,在右边填入你的API Key,点击“Connect”,它就会生成一个专属的链接。把这个链接复制下来,贴到ChatWise里边就搞定。
Key Takeaway
- MCP(Model Control Protocol)被比作AI的USB-C,旨在统一AI与各种软件的接口,实现AI按需调用工具。
- MCP的快速发展可能受Agent概念影响,因为它为AI提供了“手脚”,是当前阶段解锁Agent的最佳途径。
- 相较于通用Agent和复杂的工作流搭建,MCP的配置方法更简单,模型(如Claude-3.7 Sonnet)能自主选择和调用工具。
- MCP的配置方式有两种:AI自动创建(如Cline的Marketplace)和手动编辑(如Cursor的配置文件)。
- 通过
cursorrules
文档,用户可以自定义Cursor的行为,使其在处理任务时优先检索本地文档、联网搜索,并调用特定MCPs。 - MCP服务器的通信方式分为本地的stdio和云端的SSE,即使本地运行的MCP也能通过调用远程API实现联网。
- 掌握MCP能显著提升AI生产力,因为模型在拥有更多工具时,其能力会更强。
Full Content
我的AI比你的强,不是因为它更聪明,而是因为它手里有更多工具。
比如,你的Cursor只能编程,而我的Cursor可以用Blender进行3D建模。
你的Cursor只能编程,而我的Cursor可以把英文网页扒下来,然后翻译成中文,并且存到本地文档里。
所有这一切的实现,都是因为有了MCP。我在上上期视频介绍过这个非常非常火的协议,还没看的小伙伴抓紧看,很重要!
简单来说,MCP就是AI的USB-C。不管你是什么软件,都给我统一用这个接口协议。这样AI才能自由接入各种软件,按需调用。
就像USB-C一样,电脑、手机、键盘、鼠标等等,全都支持。一根线,既能充电,也能传输数据,非常方便。
MCP出来有一段时间了。最近一个月,我突然感觉到它在加速发展。可能是受到Agent影响。大家发现,要搞Agent,没工具不行——没工具,AI就没有手脚。看了一圈,就这个最靠谱。于是支持的人越来越多。已经有不少开发者在做基建类项目了。这个领域一定能跑出黑马来,VC的小伙伴可得盯紧了。
对用户来说,MCP是你在现阶段解锁Agent的最佳途径。
第一,像Manus那种通用Agent还没到能大规模落地的阶段。还得等一段时间。
第二,像Dify那种搭建垂类Agent Workflow的方式,其实不适合普通用户。它说是“无代码”,好像在画布上拖几下就可以。但是,你要真没编程思维、编程经验的话,肯定搞不定。
相比之下,MCP这条路就靠谱多了。
第一,像Claude-3.7 Sonnet这种模型已经非常强大了。你把各种MCP配置好,它自己知道什么时候该用啥,不用你操心。
第二,MCP的配置方法也足够简单。目前就两种方法:要么AI自动创建,要么你手动编辑。
前一种方法主要针对Cline。它在内部搭建了一个Marketplace,把主流的MCP都抓了过来。你只要点击Install,它会搞定剩下的一切。配置过程中遇到Bug的话,它也会自己想办法解决。真的太贴心了!
后一种方法也很简单。我用Cursor演示一下。
在正式开始之前,你得先去Beta里,把Standard改为Early Access。然后去左上角点击Check for Updates。这样就能把Cursor更新到0.47版本。
相比0.46版本,0.47版本给MCP添加了配置文件功能。我们可以直接在里边改动,非常方便。
比如,我想添加File System这个MCP。它的作用是,让模型能够操作指定路径下的文件,比如读和写、创建和删除等等。所有这些功能,都在工具列表下,写得清清楚楚。
大家记住,每一个MCP里都有若干个 tool。模型会根据你的请求决定用哪个MCP、用哪个tool。所以你挑选MCP的时候,记得看一下它的tool list,然后你就心里有数了。
OK,我们继续配置。把页面往下拉到NPX这边,中间这几行就是咱们要复制的。我来解释一下,很好理解:
npx就是一个命令行工具,可以执行npm包中的命令。下边的arguments就是参数的意思,它包含了三个参数:
y就是yes的意思,跳过确认提示;
@modelcontextprotocal这一串就是需要执行的npm包的名称;
下边这两行都是地址参数,告诉MCP可以访问哪里的文件。
所以,咱们接下来要做的就是,把这几行复制一下。然后打开Cursor里的配置文件,贴进去。最后把地址改一下,比如我这边就指定了可以访问桌面的文件。
保存之后,回到MCP服务器页面,就会看到filesystem这个MCP已经亮起绿灯,表示已经配置好了。它所包含的每一个工具也都列出来了。
如果你理解了我刚才演示的这些,那其它MCP基本也是同样的操作。最大的区别就是参数、环境的设置不一样。
比如Firecrawl这个爬虫MCP,它就要求咱们填写API Key。其它都不用管,就是复制、粘贴。
当你理解了Cursor的设置,其它软件也都是一样的。比如Cline、Claude那边也是这么操作的。你只要打开那个配置文件,看一眼就全明白了。
你看,这就是MCP牛逼的地方。它不是一上来就牛逼哄哄地要颠覆一切,而是尽可能降低各方的成本。所以大家才会有动力去支持你,完成接口的统一。
如果你是开发者,一定要把握这个MCP这个机会。如果你是用户,一定要亲自上手用起来。记住我这句话:
模型一样的情况下,谁可以调用更多工具,谁的生产力就更高。
OK,以上就是本期内容。想交流AI,就来我们newtype社群。那咱们下期见!
Key Takeaway
- 作者开发了一个Obsidian MCP,提供搜索、读取、创建、移动笔记和管理文件夹等功能。
- 该MCP支持多种安装方式,包括Claude桌面版的DXT方式、远程NPM包安装和本地安装。
- 使用该MCP可以摆脱Obsidian内置AI插件的限制,通过熟悉的AI客户端(如Claude、ChatGPT)直接访问和管理笔记。
- 结合Prompt House等工具,可以实现更智能的笔记管理和AI调用。
- 作者强调了上下文对于AI创造价值的重要性,认为机会在于为AI提供充分恰当的上下文。
Full Content
作为Obsidian重度用户,我给这款软件做了个MCP。大概率啊,它是目前市面上最全面的Obsidian MCP服务器。
在功能方面,它可以搜索仓库,可以读取、创建、移动笔记,还可以管理里边的文件夹。
在安装方式方面,它支持三种:
如果你用的是Claude桌面版,那么我强烈建议你用DXT的方式。这是Anthropic最新推出的方法。你只需要把DXT文件下载到本地,双击它,就能完成安装。
或者,你可以使用远程安装。我已经把NPM包发布了。所以你只需要在配置文件里把这些填上就OK。
如果你动手能力强,也可以采用本地安装。你可以使用npm install把整个包下载到本地,也可以整个仓库下载下来再安装,或者用Docker也可以。
那为什么需要这个MCP?
因为有了它,你就不需要用Obsidian里的AI插件了——说实话,那些插件做得总是差点意思。你可以继续使用你熟悉的、世界上最好的AI客户端,比如Claude、ChatGPT等等,然后把客户端和笔记仓库对接,让AI能够访问你的所有笔记,帮你管理那些笔记。
更进一步,如果你能搭配使用我开发的Prompt House,在提示词里设置好检索规则等等。当遇到特定情况,AI先使用Prompt House MCP获取特定的提示词,然后自动去你的仓库里查找特定的笔记,一环套一环,不需要你下复杂的命令。
目前我只开发出了Obsidian MCP的基础功能。所以它在现阶段跟File System MCP有很多重叠的地方。因为笔记仓库本质上就是一个本地文件夹,笔记本质上就是一个Markdown文件。下一步,我会开发进阶功能,比如自动添加反向链接功能等等。大家可以期待一下。
那么,这个MCP该如何安装呢?我来演示一下前三种安装方法,因为它们是最简单的,适合所有人。
在开始之前,你需要做两个准备工作。
第一,你得知道你笔记仓库的地址。比如我在桌面上创建了一个用于演示的仓库,那么它的地址就是这一串。
第二,你需要安装Local REST API这个插件。在Obsidian社区插件里搜一下就有。然后Install、Enable。在设置里边,把非加密这个选项打开,因为我们后边要使用这个27123的端口。这个 API Key之后也会用到。
先来看DXT的安装方式。
来到GitHub页面,下载DXT文件。你可以把它理解为就是一个全部都打包好的安装文件。双击之后,它会帮你自动打开Claude桌面版。然后,点击Intall,把刚才准备好的仓库地址和API Key填进去,把这个MCP服务器启动起来,就全部搞定了。
接着是NPM包的安装方式。
我这边用的客户端是Cherry Studio。新建一个MCP服务器,类型选stdio,命令填npx,参数填@huangyihe/obsidian-mcp——这是我发布的npm包的名字,环境变量这么填,然后保存就搞定了。
最后是本地安装的方法。
先在终端里运行这一行命令。接着打开客户端,我这边用的是ChatWise。照样新建一个MCP服务器,类型选stdio,命令填obsidian-mcp,环境变量还是这两行。最后点击“查看工具”,能刷出这些工具就说明安装成功了。
刚才这三种方法,总有一个适合你。至于效果,我到Claude里给你看看。
我问Claude:Obsidian都有哪些笔记?这个是看它的检索能力。你看,它调用工具、很快就列出来了。
再来个难一点的:帮我在笔记仓库里创建一个名为123的文件夹,把Welcome笔记移动到里边。然后在123文件夹内创建一个名为MCP的笔记,内容是关于模型上下文协议的介绍。
你看,Claude 4的工具调用能力确实是目前最强的,轻松且准确地完成了任务。
说实话,这么多客户端,目前我用得最舒服的,还是Claude桌面版。尤其是MCP的调用方面,它的体验和效果是最好的。
最后,One more thing:我为什么要开发这个MCP,以及之前做的Prompt House。
就像我在社群内说的:Context matters!
模型的能力已经足够强了。接下来,要让模型创造价值,需要给它充分的、恰当的上下文。对于我们这些不是做模型研发的开发者、创业者来说,机会就藏在上下文里边。
OK,以上就是本期内容。想交流AI,想成为超级个体,想找到志同道合的人,就来我们newtype社群。那咱们下期见!