LLMs之Prompt:Fabric的简介、安装和使用方法、案例应用之详细攻略

LLMs之Prompt:Fabric的简介、安装和使用方法、案例应用之详细攻略

目录

Fabric的简介

1、特点

Fabric的安装和使用方法

1、安装

[一键安装 (One-Line Install - Recommended):](#一键安装 (One-Line Install - Recommended):)

[手动二进制下载 (Manual Binary Downloads):](#手动二进制下载 (Manual Binary Downloads):)

[使用包管理器 (Using Package Managers):](#使用包管理器 (Using Package Managers):)

[从源代码安装 (From Source):](#从源代码安装 (From Source):)

[Docker 安装 (Docker):](#Docker 安装 (Docker):)

[环境变量设置 (Environment Variables):](#环境变量设置 (Environment Variables):)

[首次设置 (Setup):](#首次设置 (Setup):)

[升级 (Upgrading):](#升级 (Upgrading):)

[Shell 自动补全 (Shell Completions):](#Shell 自动补全 (Shell Completions):)

2、使用方法

[查看帮助 (Help):](#查看帮助 (Help):)

[调试级别 (Debug Levels):](#调试级别 (Debug Levels):)

[扩展 (Extensions):](#扩展 (Extensions):)

[REST API 服务器 (REST API Server):](#REST API 服务器 (REST API Server):)

[按模式模型映射 (Per-Pattern Model Mapping):](#按模式模型映射 (Per-Pattern Model Mapping):)

[为所有模式添加别名 (Add Aliases for All Patterns):](#为所有模式添加别名 (Add Aliases for All Patterns):)

[使用别名将输出保存为Markdown (Save Files in Markdown Using Aliases):](#使用别名将输出保存为Markdown (Save Files in Markdown Using Aliases):)

Fabric的案例应用

[1、运行模式 (Running Patterns):](#1、运行模式 (Running Patterns):)

[2、直接使用Patterns (Just Use the Patterns):](#2、直接使用Patterns (Just Use the Patterns):)

[3、创建自定义模式 (Custom Patterns):](#3、创建自定义模式 (Custom Patterns):)

[4、辅助应用 (Helper Apps):](#4、辅助应用 (Helper Apps):)

[5、Web界面 (Web Interface):](#5、Web界面 (Web Interface):)


Fabric的简介

Fabric 是一个开源框架,旨在通过人工智能增强人类能力。它提供了一个模块化系统,用于解决特定问题,并使用一套众包的AI提示(称为"Patterns"),这些提示可以在任何地方使用。该项目的核心理念是,AI的真正问题不在于其能力,而在于其"整合"问题------即如何将AI功能无缝融入我们的日常生活和工作中。

Fabric 通过创建和组织AI的基本单元------即提示本身------来解决这一问题。它将提示按实际任务进行组织,允许用户在一个地方创建、收集和组织他们最重要的AI解决方案,以便在他们喜欢的工具中使用,或者直接通过命令行界面使用Fabric本身。

GitHub地址https://github.com/danielmiessler/Fabric

1、特点

  1. 开源框架 (Open-Source Framework): Fabric 是一个开源项目,致力于通过AI增强人类能力。
  2. 模块化系统 (Modular System): 提供模块化设计,用于解决特定问题。
  3. 众包AI提示 (Crowdsourced AI Prompts): 核心是其"Patterns"------一套众包的AI提示,可在任何地方使用。
  4. 解决AI整合问题 (Addresses AI Integration Problem): 旨在解决AI功能难以融入日常生活的挑战,而非AI能力问题。
  5. 模式组织 (Pattern Organization): 将提示按实际任务进行组织,便于创建、收集和管理AI解决方案。
  6. 多平台可用(Cross-Platform Availability): 可在命令行界面使用,也支持Web界面。
  7. 快速发展与更新(Rapid Development and Updates): 项目更新频繁,不断增加新功能和能力。

Fabric的安装和使用方法

1、安装

Fabric 的安装方式多样,推荐使用一键安装或包管理器。

一键安装 (One-Line Install - Recommended):

Unix/Linux/macOS:

curl -fsSL https://raw.githubusercontent.com/danielmiessler/fabric/main/scripts/installer/install.sh |

Windows PowerShell:

powershell

iwr -useb https://raw.githubusercontent.com/danielmiessler/fabric/main/scripts/installer/install.ps1 | iex

更多自定义安装选项和故障排除,请参阅 scripts/installer/README.md。

手动二进制下载 (Manual Binary Downloads):

可从 https://github.com/danielmiessler/fabric/releases/latest 下载最新发布版本的二进制文件及其SHA256哈希。

使用包管理器 (Using Package Managers):

注意: 使用Homebrew或Arch Linux包管理器安装时,Fabric会被命名为 fabric-ai。建议在shell启动文件中添加 alias fabric='fabric-ai'。

macOS (Homebrew):

bash

brew install fabric-ai

Arch Linux (AUR):

bash

yay -S fabric-ai

Windows (Winget):

bash

winget install danielmiessler.Fabric

从源代码安装 (From Source):

确保已安装Go语言环境。

运行以下命令:

go install github.com/danielmiessler/fabric/cmd/fabric@latest

Docker 安装 (Docker):

使用最新镜像:

docker run --rm -it kayvan/fabric:latest --version

使用特定版本 (GHCR):

docker run --rm -it ghcr.io/ksylvan/fabric:v1.4.305 --version

首次运行设置:

mkdir -p $HOME/.fabric-config

docker run --rm -it -v $HOME/.fabric-config:/root/.config/fabric kayvan/fabric:latest --setup

使用Fabric运行模式:

docker run --rm -it -v $HOME/.fabric-config:/root/.config/fabric kayvan/fabric:latest -p summarize

运行REST API服务器:

docker run --rm -it -p 8080:8080 -v $HOME/.fabric-config:/root/.config/fabric kayvan/fabric:latest --serve

镜像可在Docker Hub (kayvan/fabric) 和GHCR (ksylvan/fabric) 获取。

环境变量设置 (Environment Variables):

根据您的操作系统(Intel Mac/Linux 或 Apple Silicon Mac),在 ~/.bashrc 或 ~/.zshrc 中设置Go相关的 GOROOT、GOPATH 和 PATH 环境变量。

首次设置 (Setup):

安装完成后,运行 fabric --setup 来设置目录和密钥。

升级 (Upgrading):

只需再次运行安装时使用的 go install github.com/danielmiessler/fabric/cmd/fabric@latest 命令即可获取最新版本。

Shell 自动补全 (Shell Completions):

快速安装 (无需克隆):

curl -fsSL https://raw.githubusercontent.com/danielmiessler/Fabric/refs/heads/main/completions/setup-completions.sh | sh

Zsh 补全: 复制 _fabric 文件到 ~/.zsh/completions/ 并配置 fpath。

Bash 补全: 源文件 fabric.bash 到 ~/.bashrc 或复制到系统范围的 bash_completion.d 目录。

Fish 补全: 复制 fabric.fish 文件到 ~/.config/fish/completions/。

2、使用方法

安装并设置完成后,可以通过命令行使用Fabric。

查看帮助 (Help):

fabric -h

这将显示所有可用的选项,包括:

-p, --pattern: 选择一个模式。

-v, --variable: 为模式变量赋值。

-C, --context: 选择一个上下文。

--session: 选择一个会话。

-a, --attachment: 附件路径或URL。

-S, --setup: 运行Fabric的可重新配置部分的设置。

-t, --temperature: 设置温度。

-s, --stream: 启用流式输出。

-l, --listpatterns: 列出所有模式。

-L, --listmodels: 列出所有可用模型。

-U, --updatepatterns: 更新模式。

-c, --copy: 复制到剪贴板。

-m, --model: 选择模型。

-V, --vendor: 指定所选模型的供应商。

-o, --output: 输出到文件。

-y, --youtube: YouTube视频或播放列表URL,用于获取转录、评论等。

--transcript, --transcript-with-timestamps, --comments, --metadata: YouTube相关选项。

-g, --language: 指定聊天语言代码。

-u, --scrape_url: 使用Jina AI抓取网站URL到Markdown。

--serve: 启动Fabric REST API服务器。

--search: 启用Web搜索工具。

--image-file, --image-size, --image-quality, --image-compression, --image-background: 图像生成相关选项。

--voice, --list-gemini-voices: TTS语音相关选项。

--notification: 发送桌面通知。

--thinking: 设置推理/思维级别。

--debug: 设置调试级别 (0: 关闭, 1: 基本, 2: 详细, 3: 跟踪)。

调试级别 (Debug Levels):

使用 --debug 标志控制运行时日志:

0: 关闭 (默认)

1: 基本调试信息

2: 详细调试

3: 跟踪级别

扩展 (Extensions):

Fabric 支持在模式文件中调用扩展。扩展仅在模式文件内部工作,不支持直接通过标准输入调用。

REST API 服务器 (REST API Server):

通过 fabric --serve 启动内置的REST API服务器。

提供端点用于聊天完成、模式管理、上下文和会话管理、模型和供应商列表、YouTube转录提取以及配置管理。

按模式模型映射 (Per-Pattern Model Mapping):

可以使用环境变量为单个模式配置特定模型,例如 FABRIC_MODEL_PATTERN_NAME=vendor|model。

为所有模式添加别名 (Add Aliases for All Patterns):

在 .zshrc 或 .bashrc 文件中添加脚本,为每个模式创建别名,例如 summarize 代替 fabric --pattern summarize。

可以设置 FABRIC_ALIAS_PREFIX 环境变量来为所有别名添加前缀。

还提供了 yt 别名函数,用于方便地获取YouTube视频转录。

使用别名将输出保存为Markdown (Save Files in Markdown Using Aliases):

通过修改别名脚本,可以将模式的输出保存到指定的Markdown笔记库(如Obsidian),文件名格式为 YYYY-MM-DD-my_article_title.md。

Fabric的案例应用

Fabric 的核心应用在于其"Patterns",即预定义的AI提示,以及如何通过命令行工具和辅助应用来利用它们。

1、运行模式 (Running Patterns):

从标准输入运行 summarize 模式:

pbpaste | fabric --pattern summarize

(pbpaste 用于macOS,Windows/Linux有替代方案如 Get-Clipboard 或 xclip)

运行 analyze_claims 模式并启用流式输出:

pbpaste | fabric --stream --pattern analyze_claims

从YouTube视频中提取智慧 (extract_wisdom) 模式并流式输出:

fabric -y "https://youtube.com/watch?v=uXs-zPc63kM" --stream --pattern extract_wisdom

在网站上运行 analyze_claims 模式: Fabric 会使用Jina AI抓取URL并转换为Markdown。

fabric -u https://github.com/danielmiessler/fabric/ -p analyze_claims

2、直接使用Patterns (Just Use the Patterns):

Fabric项目中的 /patterns 目录包含了大量有用的AI提示。用户可以直接浏览这些模式,并在任何AI应用(如ChatGPT或其他应用/网站)中使用它们,即使不使用Fabric的命令行工具。

3、创建自定义模式 (Custom Patterns):

用户可以创建自己的私有模式,这些模式不会被Fabric的内置模式更新所覆盖。

设置自定义模式目录: 运行 fabric --setup,选择"Custom Patterns"选项并指定目录路径(例如 ~/my-custom-patterns)。

创建自定义模式文件: 例如,创建一个名为 my-analyzer 的模式:

mkdir -p ~/my-custom-patterns/my-analyzer

echo "You are an expert analyzer of ..." > ~/my-custom-patterns/my-analyzer/system.md

使用自定义模式:

fabric --pattern my-analyzer "analyze this text"

工作原理:

优先级系统: 自定义模式优先于同名的内置模式。

无缝集成: 自定义模式会显示在 fabric --listpatterns 中。

更新安全: 不受 fabric --updatepatterns 影响。

默认私有: 除非明确共享,否则自定义模式保持私有。

4、辅助应用 (Helper Apps):

to_pdf: 将LaTeX文件转换为PDF。

安装: go install github.com/danielmiessler/fabric/cmd/to_pdf@latest

使用示例 (结合 write_latex 模式):

bash

echo "ai security primer" | fabric --pattern write_latex | to_pdf

这将创建一个名为 output.pdf 的PDF文件。

code_helper: 生成代码目录的JSON表示,可用于AI模型创建新功能或编辑代码。

安装: go install github.com/danielmiessler/fabric/cmd/code_helper@latest

配合 create_coding_feature 模式使用。

5、Web界面 (Web Interface):

Fabric 包含一个内置的Web界面,提供GUI替代命令行界面。

相关推荐
Biehmltym2 小时前
【AI】07 AI Agent可控风格LLM 问答(含FastAPI 求/返回/路由、跨域访问CORS、System Prompt)
人工智能·prompt·fastapi
gentle coder3 小时前
【Prompt】 提示词工程(持续更新中~)
ai·prompt·agent·提示词工程·#广告顾问
Baihai_IDP4 小时前
大家都可以调用LLM API,AI套壳产品的护城河在哪里?
人工智能·llm·ai编程
Joy T17 小时前
【PE 最终章】思维链、自洽性与 Prompt 安全防御指南
网络·prompt·prompt engineer·提示词工程
mubei-12320 小时前
DPR:用于开放域问答的密集段落检索
人工智能·llm·检索增强生成·文本检索算法
亚里随笔21 小时前
激活被遗忘的训练信号:ERPO框架如何让大模型在数学推理中更进一步
深度学习·llm·rl·agentic·grpo
智泊AI21 小时前
一文讲清:AI大模型的并行训练方式:DP、PP、TP、EP
llm
夏日白云1 天前
《PDF解析工程实录》第 8 章|融合策略:不是兜底,而是信息利用率最大化
pdf·llm·大语言模型·rag·文档解析
阿正的梦工坊1 天前
WebArena:一个真实的网页环境,用于构建更强大的自主智能体
人工智能·深度学习·机器学习·大模型·llm