本地部署
Key Takeaway
- Cohere及其Command R+模型是专注于RAG和Agent的“业界清流”,其创始人是Transformer论文作者之一。
- Cohere提供生成模型(Command R+)、嵌入模型(Embed)和重排序模型(Rerank),特别适合复杂RAG工作流和多步骤工具使用。
- Command R+在某些方面性能达到GPT-4级别,且有量化版本可本地运行。
- 文章介绍了通过AnythingLLM和OpenRouter调用Command R+的API方法,以及本地部署的硬件要求。
- 强调了开源模型和开放权重模型的重要性,鼓励用户尝试GPT之外的优秀模型。
Full Content
我最感兴趣的AI公司、最喜欢的大模型,不是OpenAI和他们的GPT,而是Cohere,以及他们的Command R+。
这家公司在国内是没啥名气——大部分人只知道OpenAI,甚至连Anthropic这种级别都很少被关注。但是在业内,Cohere绝对是不容忽视的存在。
别看这家公司的创始人非常年轻,要知道,人家可是《Attention is All You Need》的作者之一。正是这篇论文,开启了这一轮大模型技术的爆发。
在创业之初,他们本来是准备面向C端市场的。后来发现C端产品比想象中的难搞多了,于是果断转向B端市场,帮助企业把大模型落地业务里。Cohere目前提供三类模型:
1、生成模型。Command系列。支持接收用户的指令,也具备对话能力。最新的Command R+非常适合复杂的RAG工作流,以及多步骤的工具使用。它在某些方面的性能甚至达到GPT-4级别。 2、嵌入模型。Embed系列。其中支持多语种的嵌入模型,长长的列表中就包含中文。 3、重排序模型。Rerank系列。对文本块进行相关性重新排序,是提升检索精确度的关键。
这么说吧,Cohere的专精方向,正好就是我长期关注的方向——RAG和Agent。
之前我做了好多期关于个人知识库的视频,因为我有一个判断:
今天最重要的两个技术,Crypto解决的是生产关系问题,AI解决的是生产力的问题。所以,大模型技术的应用落地,肯定是先落在生产力工具层面,需要RAG和Agent的带动。
一直以来,只有少数公司愿意针对RAG和Agent做大模型的优化——大多数还是蒙头搞通用大模型。所以当我了解到还有Cohere这样的“业界清流”存在时,我就对他们保持高度关注。
Cohere最新一批模型推出有一段时间了。我最近看了一下,我平时在用的、也是我之前一直在推荐的工具,都支持他们的API调用了。而且Command R+也有了量化版本,可以跑在本地。于是,就有了这一期视频。
先说API的调用。
大家如果使用AnythingLLM的话,记得看看右上角的版本号。如果版本号是橙色的,说明有新版本。下载、覆盖安装之后,在模型下拉列表中就能看到对Cohere的支持。
至于Obsidian的AI插件Copilot,它的模型列表中并没有Cohere,但是有OpenRouter。这是一个第三方平台,通过它,你可以调用各种大模型,包括Command R+。
所以咱们要做的,就是把OpenRouter的API Key填进来,然后把Command R+的名称复制粘贴过来就OK。之后每次使用,模式选Vault QA,模型选OpenRouter,就可以使用Command R+生成内容了。
通过API调用是最简单的方法。如果你的电脑配置比较给力的话,还可以试试本地运行。
Command R+有1040亿参数,算是很大的模型了。即使是量化版,文件都超过20G。要下载的话,通过LM Studio就可以。
我的PC是32G内存,显卡是3060。根据LM Studio的提示,只有三个版本可以在我的机子上跑。而且即使能跑,也只能把一部分模型放到显存里。看来还是太吃力了。我估计用64G内存加4090显卡应该能顺畅跑起来。
Anyway,不管云端还是本地,我都强烈建议大家都试试。我这几天用下来的体感是,Command R+的生成效果挺好的,我非常满意。
以后知识库的应用,如果要用云端的大模型的话,我肯定就用Command R+。至于本地,我还是选择Qwen,感觉比Llama3的量化版更好一些。
最后多说一句,大家别只盯着GPT一个模型。开源的模型、开放权重的模型当中,也有很多非常优秀的模型。多试试,没准就有惊喜了。
OK以上就是本期内容。咱们下期见!
Key Takeaway
- Llamafile是一个创新的本地大模型运行项目,只需一个文件即可运行,无需安装,极大降低了本地部署门槛。
- Llamafile通过整合llama.cpp(模型推理优化)和Cosmopolitan Libc(跨平台可执行文件),实现了单文件运行大模型。
- Llamafile支持多模态(如Llava模型),可进行文字生成和图片描述。
- Llamafile的免安装特性使其便于分享和在各种终端设备上运行,有助于大模型的普及和应用。
- 文章强调了Llamafile的便捷性和对本地大模型生态的积极影响。
Full Content
在本地跑大模型,只需要一个文件,而且免安装。
今天给大家介绍的这个项目叫Llamafile,它是我近期看到的最有意思的项目。
想快速体验Llamafile的话,非常容易,有手就行。
第一步,去GitHub下载官方准备好的大模型文件。
第二步,如果像我一样是Windows系统的话,就在文件后边加上.exe的后缀,把它变成可执行文件。如果是macOS的话,就在终端里运行这一行命令,给系统一个运行权限。
第三步,用cd命令进入大模型文件所在的文件夹,然后复制这条命令去运行。
这个时候,系统会自动打开一个本地页面,这样就可以跟大模型做交互了。
目前这个界面看起来是挺简陋的,不过该有的功能都齐了,之后项目组腾出手来做美化很容易。我们来简单做个测试。
如果是生成文字的话,速度飞快,比ChatGPT肉眼可见的快。
Llava这个大模型支持多模态,所以我们可以上传图片,让它描述图片上的内容。
Llamafile的基本用法就这些。这应该是我介绍过上手最容易的项目了。它让我想起来90年代刚接触互联网那会儿,当时特别流行的绿色版软件。因为都是在网吧玩儿,这种绿色软件不需要碰注册表,特别方便。
Llamafile也是这个思路。
目前本地跑大模型的方法,怎么都得安装一个软件,比如我之前介绍的Ollama。装完之后,还要下载大模型文件。
那么,为什么不能把模型的部分和运行的部分整合起来呢?
模型的部分,就是llama.cpp。它可以把模型参数降低,这样一来,模型推理需要的资源就少了,可以在配置不那么高的电脑上运行。
运行的部分,就是Cosmopolitan Libc。它是一个开源的C语言库,允许开发者编写的C程序高性能、小体积,而且能够随处运行。
把这两部分整合进一个架构里,在本地跑大模型就只需要一个文件。这意味着,大模型的门槛降低非常多。
反正只有一个文件,还不要安装。你可以放在U盘里或者网盘里。愿意的话,你可以把你喜欢的模型转成Llamafile,然后可以分享给同事。国内已经有人这么做了。
在ModelScope社区,有人做了Llamafile合集,包括千问、零一这些国内开源的大模型。大家可以去下载试试。
最后,Llamafile还支持多种系统、多种CPU架构,也支持GPU运行。咱们可以想象一下,把一个小模型转成Llamafile,就可以在各种形态的终端上跑。大模型的普及、应用一下就容易多了。
等这期视频做完,我打算也上手试试。感觉我的AI工具库又可以升级了。
#Flux #Lora #微调 #图像生成 #本地部署 #ComfyUI
Key Takeaway
- Fluxgym是一个简单易用的本地微调Flux LoRA工具,支持12G-24G显存GPU,能以假乱真地生成虚拟模特。
- LoRA(Low-Rank Adaptation)是一种微调技术,通过添加“便签纸”式技能包,让大模型适应特定任务和风格。
- Fluxgym结合了AI-toolkit的前端和Kohya Sripts的后端,提供直观的用户界面和丰富的进阶调整选项。
- 文章详细介绍了Fluxgym的手动安装步骤,并强调了训练素材质量和模型选择对LoRA效果的影响。
- 尽管云端微调速度快,但本地微调在拥有闲置算力或需大量训练时更具优势,且成本低廉。
Full Content
只需要12G显存,你就可以在自己的电脑上微调Flux LoRA,打造完全可以以假乱真的虚拟模特。
Fluxgym这个项目支持从12G显存到24G显存的GPU,对配置的要求挺宽容的。操作起来非常简单,就三步:
根据你的需求填写参数、设定触发关键词,然后上传训练用的素材图片,最后点击开始,等着就可以了。
LoRA训练好之后,把它放到ComfyUI对应的文件夹里边,在工作流里加一个LoRA节点就可以使用了。是不是超级简单?
Fluxgym前端fork了AI- toolkit这个项目,所以才会这么直观、好用。而它后端用的是Kohya Sripts这个项目,可以做非常多进阶的调整。如果你懂的话,点开Advanced Tab就会看到一大堆选项。
这就是我为什么说Fluxgym是微调LoRA最简单也是最好的方法。
哈喽大家好,欢迎来到我的频道。谦虚地说,我是国内少数几个能把关于AI的Why和How讲明白的博主。记得点一波关注,只要有一个视频你看进去了,就赚大了。如果想链接我,就来newtype社群。已经有500多位小伙伴付费加入啦!
回到今天的主题:Fluxgym。
我在上上上期视频介绍过微调Flux LoRA的基本概念和方法。在视频中,当时我用的是部署在云端的项目。在H100的帮助下,只花20分钟就把LoRA训练出来。成本大概是两三美元。
说真的,我觉得这个价格其实很OK了。不过,如果你有闲置的本地算力的话,不用白不用,以及要训练的数量比较大的话,可以使用我今天要介绍的方法。
Fluxgym的安装有三种方式。你可以一键安装,可以通过Docker安装,也可以完全手动安装。我这边演示一下手动安装。其实超级简单,就无脑按照官方流程操作就好。
第一步,把项目下载到本地。记得要用cd命令进入Fluxgym文件夹,把sd-scripts也下载下来。
第二步,在根目录下,创建环境,并且启动。
第三步,下载、安装需要的各种依赖。大家注意,这里其实有两个部分:一是进入sd-scripts文件夹,通过pip install、按照requirements这个txt安装;二是返回上一级目录,同样通过pip install安装。
第四步也是最后一步,安装Pytorch。
我在家里和公司的PC上都安装了Fluxgym,没遇到任何问题。大家如果安装过程中遇到什么报错,记住:别问我,问ChatGPT——这一定是最有效的方法。你问我,我要么问GPT,要么Google一下,看看别人是怎么解决的。你有问我的功夫,还不如直接上手呢,对吧?
要启动Fluxgym,记得是在环境启动的状态下,在根目录下边执行这行命令。这时我们打开这个本地链接,就能看到UI了。
作为演示,在参数配置这边,我不做任何调整,就用默认参数。
在模型选择上,Fluxgym提供了三个模型:dev、schnell,以及一个他们微调后的dev模型。我这边就用官方的dev模型。
在训练素材方面,我还是用上次的图片,这样咱们一会儿可以对比不同项目训练出来的LoRA的效果。
都配置完毕后,咱们点击开始。
第一次使用,Fluxgym会下载模型文件,包括unet、clip、vae,一共有四个文件,加起来得有30G。如果你之前已经下载过了,那就把文件拷过来,放到对应的文件夹里。
整个训练过程咱们等着就好。我演示用的是公司的PC,4090显卡,64G内存,i9的CPU。即使是这种消费级的顶配,我都能明显感觉到,放在脚边的机箱发热多了非常多。
等训练完成,可以看到,这次一共花了70分钟。具体需要花多久,除了看配置,也取决于你前边的配置,比如你的步数需求。
把这个LoRA文件拷到ComfyUI的LoRA文件夹里,就可以在工作流里使用了。咱们来做个测试,提示词很简单。从生成结果来看,这个微调挺成功的,跟素材图片基本一致。
作为对比,咱们再来看看之前我在云端用AI-Toolkit训练的LoRA。还是同样的提示词。这次生成结果和刚才的基本一样。
前边我提到,Fluxgym默认支持三个模型,其中一个是微调后的。他们建议,最好是用这个微调后的模型来训练。原因在于:
dev模型是从pro模型蒸馏过来的。在蒸馏的过程中,某些能力或输入条件被削弱或去掉了。比如,可能会有一些美学嵌入条件在简化过程中被限制,或者模型在训练过程中只使用了更小的数据集。这就导致用dev模型训练LoRA,效果有可能不太好。
为了把丢失的能力补回来,开发者使用大规模、高质量的数据对dev进行微调。这样一来,用这个定制版的dev模型再去微调,就能避免模型崩溃或输出质量下降的情况。大家使用的时候,我建议还是优先用它。
通过LoRA,咱们可以达到直接生成指定外观的人物或者物品的目的。我知道肯定会有人说,不用LoRA也可以。确实,比如你用PuLID,让模型根据参考图,也可以生成指定长相的人物。
但是,这是有限制的。比如,生成人物的朝向会受到参考图像的限制。还有,你经常会发现,一张图作为参考不够,还得多加几张。然后还需要对图像做个裁切,把脸的位置给单独拎出来。
所以,在我看来,图生图或者换脸都只是权宜之计。如果你要长期、稳定生成虚拟模特或者物品的话,还是搞个LoRA吧。训练成本和使用成本都很低,挺划算的。
OK,以上就是本期内容。想进一步交流AI就来newtype社群。那咱们下期见!
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
- 在本地运行大模型具有运行稳定、速度快、免费、模型选择丰富和使用自由等优势。
- 本地运行大模型需要一定的硬件配置,最低建议16G内存和4G显存,理想配置为32G内存和24G显存(或更高)。
- 不同的AI任务(图片、音频、文字生成)对硬件配置有不同的要求。
- LM Studio等工具可以帮助用户直观地了解本地硬件对大模型的支持情况。
- 随着AI普及,端侧AI将成为趋势,AI PC和AI手机将上市。
Full Content
在自己的电脑上跑大模型,到底需要多高的配置?
很多小伙伴私信问我这个问题。本期视频我就统一给大家一个答案。不过在此之前,有个问题先得回答一下:
ChatGPT用得好好的,为什么要在本地电脑上折腾这些开源大模型或者开源项目?
很简单,三个原因:
第一、运行更稳,速度更快,还不花钱。
过去一年,订阅ChatGPT Plus,以及使用API的费用加在一起,我应该给OpenAI贡献了大几百美金。但是,我对他们的服务器是非常不满意的,经常掉链子。
开始我还以为是我的代码有问题,或者是我网络有问题。后来我换个时间段测试,居然跑通了。其实就是全球用户涌入,服务器根本扛不住——这个就是云端的难题。
随着AI越来越普及,不管是哪一家巨头,他们的云端算力都不可能接得住这种规模的需求。从云端走向本地,一定是趋势。所以大家今年就会看到,越来越多的AI PC、AI手机开始上市。
因为我自己有这个趋势判断,所以才一直在视频里、在知识星球里分享端侧AI的内容。作为用户,我的实际体验是:
在自己电脑上跑大模型和AI应用,真的太舒服了。不会有服务器连不上之类的闹心事儿,速度飞起——这才是自然语言交互该有的感觉。而且,我再也不用心疼token的费用了。
第二、模型更丰富,选择更多。
像OpenAI这种巨头的思路是,造出最牛的大模型,足够通用,然后去满足各个垂直领域和场景的需求。
但是站在实用的角度,其实我们并不需要那么大的模型。比如,我就想让AI帮我写写代码,或者上网搜点资料,犯不着拿大炮打蚊子,而且还消耗那么多的能源。
开源的好处就在这里。你去Hugging Face、GitHub看看,真的是百花齐放,什么项目都有。不等那些巨头和上市公司,大家自己动手、丰衣足食。
我有一种回到互联网初期的感觉。
第三、特别自由。
我的电脑平时都挂着Ollama,前端开着AnythingLLM。想到什么了,就随时问AI。
我还储备了各种Python脚本,有需要的时候,运行一下就搞定。
本地跑开源大模型,不需要联网,但不代表它不能联网。我完全可以让它接入网络,把资料都拿回本地来处理。
我现在都是在台式机上跑大模型,感觉还不够自由。下半年,我应该会搞一台搭载英特尔最新CPU的笔记本。这种新的CPU架构里边包含了NPU,可以加速AI本地推理。我特别好奇它到底能起到多少作用。
OK,以上就是我作为一个重度用户所认为的,在本地跑大模型的好处。回到本期主题:硬件配置。
根据用途来分的话,大概有这几种:
第一、生成图片。比如跑Stable Diffusion。最低配置,要求16G内存和4G显存。建议你最好是有32G内存、12G显存,否则真的很难受。
第二、生成音频。比如语音克隆、生成音乐,至少需要8G显存。理想情况下,有个24G显存就能跑比较大的模型了。
第三、生成文字。也就是各种Chatbot。最少需要8G内存和4G显存。如果你想运行跟GPT-3.5差不多性能的开源大模型的话,最好准备32G内存和24G显存。
为了方便大家理解,我来简单总结一下:
最低配置:3060显卡,16G内存。比这个还低的话,我真就不建议你在本地跑大模型了。
理想配置:4090显卡,32G内存。我公司的PC就是这样的配置,专门给创意同事生成各种图片用的。
CPU的话,英特尔i5-12600K起步吧。
至于我每次给大家演示用的PC,我之前在知识星球里说过,都是好几年前的配置了:
CPU是i7-9700K,内存是两根8G的DDR4。
最开始是用核显,用了一段时间发现,用OBS直播不太行。实不相瞒,那时我还是B站游戏区的UP主,攒了台机子就是为了直播和剪视频。实际用起来发现,还是得上GPU推流。当时显卡特别贵,只能买得起3060。
最近为了更好地跑大模型,我又花了不到500块钱买了两根同样的内存条,把容量扩展到了32G。终于可以跑更大一个级别的模型了。
最后,告诉大家一个最直观的方法。你去下载一个LM Studio。这款软件集成度非常高,可以直接在软件内下载大模型,以及运行和对话。
在下载的时候,软件会根据你机子的配置给出建议。比如,哪些模型可以跑,哪些模型肯定没戏。这样你心里就有数了。
那到了使用阶段,你可以拖动右边这个滑块,调整GPU的参与程度。默认设置的话,更多依赖内存,跑起来有点慢。如果把滑块拉到头,把GPU全用起来,速度快了非常多。所以英伟达赚那么多钱,真的是人家的本事,没什么好说的。
OK,以上就是本期内容,关于为什么要在本地跑大模型,以及配置推荐。大家如果想进一步交流,或者有什么问题想问我的话,来知识星球找我。咱们下期见!
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
- 问答引擎是搜索引擎的下一个形态,能直接提供组织好的内容而非网页链接。
- LLocalSearch是一个开源项目,允许用户在本地部署问答引擎,并可联网搜索。
- LLocalSearch的基本逻辑是:本地大模型理解问题 -> 转换为搜索关键词 -> 搜索相关资料并存入本地向量数据库 -> 结合问题和资料推理并输出答案。
- 部署LLocalSearch需要Ollama和Docker,并下载Function Calling模型和嵌入模型。
- LLocalSearch目前仍处于早期阶段,但提供了本地化问答引擎的潜力。
Full Content
搜索引擎的下一个形态,肯定是问答引擎。
因为我们要的不是网页,而是网页里的内容。
要把网页这个壳剥开,把里边的一部分内容提取出来,反馈给用户,只有AI能办到。
我在年初就订阅了Perplexity,它是目前最好的问答引擎。年度订阅是200美金,有点肉痛,但是真的能完全替代Google。不过最近我还是把它给退订了。因为这家公司宣布,要在搜索结果中植入广告。
我对他们真挺失望的:以为能走出一条不一样的路,结果还是回去卖广告。而且这次有AI的帮助,鬼知道会搞出什么套路来。
不过,幸运的是,咱们很快就会有替代品了。
LLocalSearch是一个开源项目。目前可以用,但还不完善。如果你想尝鲜的话,可以来试试。
就像名字里说的那样,LLocalSearch能让你把一整套问答引擎都部署在自己的电脑上。
这边有一个概念我得先澄清一下:在本地运行,不代表不能联网。
这个开源项目,它完全是用我PC的算力,用我在PC上安装的大模型。但同时它具备联网的能力,这样才能帮咱们查资料,对吧?所以这是不矛盾的。
我先给你看一下效果,再说怎么安装。
左边是产品的样子,右边是资源的使用情况。
因为我开着OBS在录制,所以GPU的使用会比较高。如果没OBS影响的话,主要消耗的是内存。
LLocalSearch的基本逻辑是:
当你提出一个问题,本地大模型会先理解你的意思,然后把问题转换成适合拿去搜索的一组关键词。
接着,它会帮你去网上搜索所有相关资料,把找到的资料都放到本地向量数据库里,这边用的是Chroma DB。
最后,再把问题和资料结合起来做推理,输出最终答案。
在前一个问题的基础上,你可以继续追问。
如果你对整个处理过程不放心,可以点击右上角的按钮,把每个步骤都展开。
如果你也想安装,去GitHub上搜这个名字就能找到:LLocalSearch。我在知识星球里也发过链接,已经加入的小伙伴可以自取。
在安装项目之前,确保你已经安装好Ollama和Docker这两款软件——跑大模型需要Ollama,运行这个项目需要Docker。
安装好之后,通过Ollama去下载这两个模型:
一个是knoopx / hermes-2-pro-mistral,它会负责Function Calling。你可以简单理解为就是调用各种工具、帮你干活的。
一个是nomic-embed-text,嵌入模型,拥有比较大的上下文窗口。
当软件和模型都下载、安装好了,就可以去把项目克隆到本地。然后通过cd命令进入项目的文件夹,运行docker-compose up这行命令,就会自动安装了。
最后,如果一切顺利的话,打开localhost:3000这个本地链接,就可以正常使用了。
目前LLocalSearch还比较糙,不过大体的框架是有了。我看作者就一个人,是个德国小哥。你如果想支持这个项目的话,可以到GitHub上Sponsor他。一个月5美金、15美金都行。如果你是大佬、愿意赞助800美金的话,德国小哥就能买一块新显卡了——这不比你给那些女主播刷火箭有功德多了。
最后,如果你还没用过问答引擎,也不想搞这么麻烦去本地部署一个的话,可以试试国产的,比如360AI搜索和秘塔AI搜索。还是那句话:
先用起来,比什么都重要。
OK,以上就是本期内容。有什么问题想问我的话,来知识星球找我。那咱们下期见!
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
- 作者开发了一个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社群。那咱们下期见!