Ngrok
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的价值。
大家如果有什么建议或者疑问,可以到星球里交流。咱们下期见。