王树义
如何安装和设置 Go 版本的 fabric AI 工作流框架?
2024-9-27 09:58
阅读:1045

痛点

今年 6 月份,我给你介绍了 fabric 这款 AI 工作流工具

它包裹了大量的优秀提示词,可以处理各种你日常工作、学习和科研中的事务性工作。包括但不限于:

  • 从视频当中提取要点

  • 撰写博客

  • 给研究评分

  • ……

不少读者看过之后,大呼有用,然后亲手测试。有的测试成功,真正应用到了工作中,各种开心。

但很多小伙伴都遇到了一个问题 ——fabric 的 Python 版本,安装起来实在是不方便。

好在开发者有承诺,说两个月之内,就要整体从 Python 切换到 Go 语言。作者解释说这样一来,安装过程将是无比简单顺滑的。

于是大伙儿就等啊,等啊……

到了 8 月 17 日,Go 版本可算是来了。但是按照官方提供的安装方式,却发现没有办法使用 OpenAI, Google, Anthropic 等少数几家供应商之外的 API Key 。因为缺乏一个关键设定 ——API base url,也就是 OpenAI 兼容模式的地址。

打个比方,你拿房间 A 的钥匙,去开房间 B 的锁,自然打不开。但是这个设置根本不让你设定到底想要打开哪间房子 —— 默认只能去房间 B 那里尝试。

fabric 的 Github issues 里面,好多小伙伴都提了需求,人家似乎也在积极修复。但是你就盯着它的 release 看好了,那是一动不动啊。一直停留在 fabric Go 版本发布的那一刻。

看着「最新 release 的发布日期」从「一周前」变成「两周前」,又变成了「上个月」…… 我几乎已经放弃了。但是星球的小伙伴不肯放弃,一直在崔更。

前两天,我偶然打开官网,发现好消息终于来了。

最近两周之内,fabric 实际上已经进行了一系列的密集更新。

应星友的邀请,我写下这篇教程,给你讲讲开发者口中的这个「配置起来丝般顺滑」的 fabric 该如何安装和使用。

安装

转换到 Go 版本之后,安装 fabric 这个事儿着实变得异常简单,你只需要一条命令:

go install github.com/danielmiessler/fabric@latest

对,这就算搞定了。

所有的依赖,都完全不需要你来处理,这次 fabric 自行解决。

不过这里我建议你安装一个附加命令,就是 yt,它可以从 Youtube 视频中获取信息,方便你后续进一步处理加工。你需要执行

go install github.com/danielmiessler/yt@latest

好,这里需要下载安装的内容,就算是完事儿了。

设置

下面咱们来做一下设置。

如果你跟我一样使用 M 版本的 MacOS 系统,那么你需要在 .zshrc 或者 .bashrc (具体看你用的是 zsh 还是 bash 了)的最后加上这几句:

# Golang environment variablesexport GOROOT=/opt/homebrew/bin/goexport GOPATH=$HOME/goexport PATH=$GOPATH/bin:$GOROOT/bin:$HOME/.local/bin:$PATH:

注意如果你使用其他版本的系统,需要添加的命令有些不同。你可以 参考这个网址查看

之后,请你在终端执行:

fabric --setup

整个儿的设置,全都改成了交互式。

每一个步骤,几乎都给你设置用户自定义 API base url 的机会。这样可定制的灵活性大大增强。当然了,如果你使用的就是官方提供的 API key,也可以丝毫不用理会它。

为了方便,咱们直接设置 OpenRouter API key 就好。毕竟有了这样一个 key ,你几乎可以访问全部主流的大模型。具体介绍,请参考这篇文章

甚至,你连本地模型都能设置。这里是 fabric 的设定流程,在询问你是否有 Ollama 服务。如果有,把 Ollama 提供给你的地址填入,你就可以直接调用本地大模型了。最近 Llama 3.2 小模型来了,视觉能力不错,不妨试试看。

fabric 还非常贴心提供了 SiliconCloud (硅基流动) 的 API key 输入位置。

这个网站,囊括了目前主流的开源大模型。例如 Llama 3.1 405B,Qwen 2.5 和 Deepseek 2.5 等。

目前注册就送 14 块钱。

别觉得 14 块钱不够多。如果你用其中的主流国产模型,这钱对应的是 2000 万 tokens,够你用一气了。

你还可以在注册时,使用我的优惠链接 (https://cloud.siliconflow.cn/i/XyPl6jj4) 或者优惠码(XyPl6jj4),可以获得额外的赠送金额。

走完这个对话,fabric 会帮你总结可用模型数量。

你看, 其中光是 Openrouter,就提供了 190 多个模型。

这里你可以选择某个模型作为默认模型。后续如果不加以特殊指定,fabric 就直接调用默认模型进行处理。

我选择的是 GPT-4o mini。原因是特别便宜,快,而且能力还成。具体介绍,可以参考我的这篇文章

后续的设定,如果你没有特殊需求,一路回车就搞定了。

不过如果你想使用 yt 命令 (下文有样例),这里记得需要填写自己的 Youtube API key 哦。

测试

咱们来测试一个「端到端」命令,把一个苹果 WWDC 2024 发布会视频 (时长 100 多分钟),先转化成一系列的要点。然后根据要点,让 fabric 自动转换成一篇博客。博客是英文的,所以还需要它帮助把内容翻译成中文。原本你跟大模型对话,这需要几次来回。但是现在有了 fabric ,你只需要这一条命令:

yt https://www.youtube.com/watch?v=RXeOiIDNNek | fabric -p extract_wisdom | fabric -p write_essay | fabric -sp translate_cn

这里命令的使用和组合方式,请你参考我这篇文章的介绍

这是使用咱们的默认模型 GPT-4o mini 运行的效果:

02714ece03982489ee53894431a1b9f399bd050e.gif如果你对结果不满意,还可以改变模型。在前面管道 | 隔开的每一次 fabric 调用,你都可以用 -m 命令来修改模型调用。或者,你可以干脆改变默认模型。例如我这里是把默认模型修改成为了一个 405B 的开源大模型 nousresearch/hermes-3-llama-3.1-405b: free

注意这个 free,它意味着免费。这样一来,执行起来比 GPT-4o mini 还要便宜,哈哈。

运行的结果,是这样的:f0bf92fdcb540209167eb5b38c99d7a5e7f05a9c.2024-09-27 09_49_23.gif

你感觉如何?我觉得至少从生动性和细节描摹角度,hermes-3-llama-3.1-405b 这个免费模型要比 GPT-4o mini 好很多。

小结

Fabric 的 Go 版本发布,确实让普通用户的安装和设置成本大幅降低。参考官网的样例,结合你自己的需求加以组装和改动,你也能让一系列大语言模型成为你的参谋和助手,帮你高效工作和学习新知。

不过临渊羡鱼不如退而结网,希望你还是自己动手安装尝试。毕竟「实践出真知」嘛。也欢迎你把自己的使用心得分享到留言区,咱们一起交流讨论。

如果你觉得本文有用,请点赞

如果本文可能对你的朋友有帮助,请转发给他们。

欢迎关注我的专栏,以便及时收到后续的更新内容。

延伸阅读

转载本文请联系原作者获取授权,同时请注明本文来自王树义科学网博客。

链接地址:https://wap.sciencenet.cn/blog-377709-1452892.html?mobile=1

收藏

分享到:

当前推荐数:3
推荐到博客首页
网友评论0 条评论
确定删除指定的回复吗?
确定删除本博文吗?