Mac 与 Windows · 端侧 AI · 照片与视频 · 离线 · 命令行
Frame-Find:用一句话搜到你的照片和视频
输入「街上过马路的行人」或「海边的自行车」,Frame-Find 就会列出对应的照片,以及视频里出现这个画面的那一刻。不用打标签、不用建相册、不用记文件名;想加几个文件夹就加几个,索引和搜索都在你自己的电脑上完成。
US$6.99 一次性授权 · 含免费版
版本 4.1.0 · Mac:macOS 13 Ventura(13.3)或更新,Apple 芯片与 Intel 均可,下载 285 MB
Windows:Windows 10(2004 版)或更新,64 位,从 Microsoft Store 免费安装
一次性购买 · 一份授权 Mac 与 Windows 通用 · 4.x 所有更新免费 · 14 天无理由退款

你的授权码
打开 Frame-Find →设置 → 授权 → 输入授权码,把整行粘贴进去。请另存一份:授权码离线可用,你自己的所有 Mac 和 Windows 电脑都能用,覆盖所有 4.x 版本。
它能做什么
把一个文件夹添加为媒体库,Frame-Find 会看一遍里面的每张照片,以及每段视频里每秒一帧的画面,记住它们拍的是什么。之后你就像跟朋友描述那张照片一样去搜:
- 「在沙发上睡觉的狗」:哪怕文件名叫
IMG_4031.HEIC也能找到。 - 「河面上的烟花」:在 40 分钟的旅行视频里找到那一段,并给出时间点。
- 「老式黑白全家福」:从几千个文件里把扫描的老照片挑出来。
- 「画着示意图的白板」:找到三个月前开会时随手拍的那张。
搜索词可以用中文、English、日本語、한국어、Deutsch、Français、Español 七种语言,搜的是同一份索引:一张照片索引一次,用七种语言里任何一种都能搜到。


一个文件夹一个媒体库,想加几个加几个
在媒体库页面点 +,选一个文件夹:相机导出的照片、客户交付的素材、一整块装着旧录像的硬盘。每个文件夹都是一个独立的媒体库,有自己的索引和自己保存下来的搜索。不用打开任何开关,也不用重建。每个媒体库都监视着自己的文件夹,新增、修改、删除的文件会随时被收进索引,Frame-Find 缩在菜单栏里时也一样。点卡片就进入这个媒体库的搜索页,文件夹路径一直显示在标题栏里。移除媒体库只删除 Frame-Find 的索引,文件夹本身不会动。
勾选结果,直接送出去
勾选想要的结果,点标题栏上的共享按钮,就会打开 macOS 标准的共享菜单:隔空投送、邮件、信息、照片,或者任何能接收图片和视频的 App。单个文件的预览面板里也有同一个按钮,就在「在 Finder 中显示」旁边。Windows 上,这个按钮会打开文件资源管理器并选中这些文件,方便复制、作为附件或上传。


用条件树一层层缩小范围
多数时候一句话就够了。不够的时候,在某个搜索上点右键加一个子条件:「海滩」→「日落时」→「有狗」,只留下每一层都符合的文件,每一步都显示还剩多少个。每个媒体库有自己的条件树,而且会自动保存,每周都要用的搜索点一下就到。
命令行与 AI 助手
4.1 新增:Frame-Find 自带命令行工具 framefind,操作的就是 App 里的媒体库。可以在 Mac 的终端、Windows 的命令提示符、PowerShell 或 Windows 终端里添加、移除媒体库,更新索引,搜索;也可以把活儿交给能运行终端命令的 AI 助手,比如 Claude Code、Codex。跟它说「找出狗在海边的照片,复制到桌面上的新文件夹里」,它就会替你调用 framefind。一般的照片搜索软件只能在自己的窗口里用;Frame-Find 可以接进你的脚本和 AI 助手的工具箱,而且照样完全在你自己的电脑上运行。
--json。framefind library add ~/Pictures/旅行
framefind search "在沙发上睡觉的狗"
framefind search "河面上的烟花" --type video --limit 5
framefind search "海滩" --and "日落" --json
framefind library list
- 为脚本而做。
--json每条结果输出一行(文件路径、相关度,视频还有匹配画面所在的秒数),最后一行是汇总,退出码固定。--paths只输出文件路径,可以直接接给下一条命令。 - App 同步跟上。从命令行添加、移除或索引的媒体库,打开着的 App 会立刻显示出来;App 照常监视这些文件夹。
- 不用额外安装。工具就在 App 里。Mac 上,在设置 → 命令行与 AI 助手里点复制安装命令,粘贴到终端运行一次即可,也可以直接用
/Applications/Frame-Find.app/Contents/Resources/framefind;第一次添加某个文件夹时,macOS 会请你允许访问一次。Windows 上,从 Microsoft Store 装好 Frame-Find 之后,任何命令提示符、PowerShell 或 Windows 终端窗口里都能直接用framefind。 - 依旧离线。和 App 用同一个端侧模型、同一份索引,什么都不上传;AI 助手拿到的只有文件路径和分数,看不到你的照片。
给 AI 助手的提示词
把下面这段粘贴给 Claude Code、Codex 或其他能用终端的助手,再写上你要做的事。App 里的设置 → 命令行与 AI 助手也能复制(App 里是英文版,效果一样)。Windows 上请从 App 里复制:Windows 版提示词直接调用 PATH 里的 framefind,而不是下面的 Mac 路径。
我的 Mac 上装了 Frame-Find,它能离线地按描述找照片和视频里的画面,并带一个命令行工具: "/Applications/Frame-Find.app/Contents/Resources/framefind" (如果我装过,PATH 里也有 framefind。)先运行它的 --help。主要命令: framefind library list 我的媒体库:已索引的文件夹及编号 framefind library add <文件夹> 添加文件夹并建立索引(第一次 macOS 可能弹出对话框请我允许访问,请等我点) framefind library remove <媒体库> 移除媒体库(只删索引,绝不动我的文件) framefind sync 补上 App 上次运行之后新增或改动的文件 framefind search "<描述>" [--and "<补充条件>"] [--type image|video] [--library <媒体库>] [--limit N] --json 描述可以用中文、英文、日文、韩文、德文、法文或西班牙文。加 --json 时,stdout 每条结果一行 JSON(path、media、relevance 0-1、weak,视频还有匹配画面的秒数 "time"),最后一行是汇总;提示信息在 stderr。--paths 只输出文件路径。 退出码:0 找到,1 没找到,2 参数错误,3 需要 Frame-Find 授权,4 App 或模型出错,5 没有获得文件夹访问权限。 如果得到退出码 3,请告诉我,不要绕过去。除非我要求,不要移动、改名或删除我的文件。 我的任务:
命令行是授权版的功能。没有授权时,framefind 只显示帮助和状态,其他命令会在碰任何媒体库之前以退出码 3 停下,AI 助手可以直接告诉你原因。Mac 和 Windows(Microsoft Store 版 4.1.1 起)都有命令行,命令相同,授权通用。
免费版与授权
下载的就是完整的 App。没有授权时,所有媒体库合计最多索引 500 个照片和视频,足够你用自己的文件确认它能找到想要的东西。购买授权后不限数量。
| 免费版 | 授权版 | |
|---|---|---|
| 可索引的照片和视频 | 所有媒体库合计 500 个 | 不限 |
| 用一句话搜索,七种语言 | ✓ | ✓ |
| 搜索视频内部画面(每秒一帧) | ✓ | ✓ |
| 媒体库数量不限,各自自动保持同步 | ✓ | ✓ |
| 每个媒体库一棵条件树;共享菜单(Mac)或文件资源管理器(Windows);菜单栏或托盘图标 | ✓ | ✓ |
| 供脚本和 AI 助手使用的命令行工具(Mac 与 Windows) | — | ✓ |
| 更新 | ✓ | 4.x 所有更新 |
| 价格 | 免费 | US$6.99,一次性 |
模型,以及它怎么在你的电脑上运行
- Google 的 SigLIP 2(base,256 px,Apache-2.0),一个把图片和文字对应起来的多语言模型。模型随 App 一起安装,装好之后不用再下载任何东西。
- 图像部分跑在 Core ML 上,在 Apple 芯片上会用到神经网络引擎。我们在 M2 Max 上实测,500 张一百万像素左右的照片大约 15 秒索引完。Intel Mac 也能用,只是慢一些。Windows 上图像部分跑在 ONNX Runtime 上(CPU)。
- 文字部分跑在 ONNX Runtime 上,分词器内置,搜索从不离开这个 App。
- 视频用系统自带的视频解码器每秒取一帧(Mac 上是 AVFoundation,Windows 上是 Media Foundation)。索引存在 App 自己数据文件夹里的一个小数据库中,不会写到你的文件旁边。读不了的文件会被跳过,媒体库里其余的文件照常索引。
支持的文件:JPEG、PNG、HEIC、WebP、GIF、BMP、TIFF 照片,以及 MP4、MOV、M4V 视频。
照片只留在你的电脑上
不上传、不用注册、不是订阅。Frame-Find 从不发送你的照片、视频、文件名或搜索词。它唯一的网络请求是检查更新:每天一次,从 swordfishsoft.org 下载新版本列表和已退款订单列表(所有人拿到的是同一个文件),可以在设置里关掉。Windows 版的更新由 Microsoft Store 负责。详见隐私政策。
怎么购买
- 先下载免费版试用。Mac 上打开磁盘映像,把 Frame-Find 拖进「应用程序」;Windows 上从 Microsoft Store 安装。然后添加一个文件夹,搜几次看看。
- 在本页购买授权。结账由我们的经销商 Paddle 处理,可以用银行卡、PayPal 或结账页显示的其他方式付款,按当地规定加收税费。
- 复制授权码。付款成功后授权码会立刻显示在本页,同时发到你付款用的邮箱。粘贴到 Frame-Find →设置 → 授权,各个媒体库里剩下的文件会马上开始索引。
授权码丢了?用付款时的邮箱发邮件到 [email protected],我们会重新发给你。
常见问题
和「照片」App 里的搜索有什么不同?
「照片」只搜它自己图库里的照片,主要按它认得出的物体和地点。Frame-Find 能搜 Mac 或外接硬盘上的任意文件夹,包括「照片」从来看不到的文件夹;它理解整句描述而不只是单个关键词;它还能逐帧搜视频文件里面的内容。
ChatGPT 之类的聊天机器人能帮我做这件事吗?
除非你把照片和视频一批批上传给它,而且它也没法为你的整个文件库保存一份索引。Frame-Find 把索引留在你的 Mac 上,就地搜索,什么都不发出去。如果你用的是在自己电脑上运行的助手(比如 Claude Code、Codex),它可以改用 Frame-Find 的命令行:拿到的只是文件路径,从来不是照片本身。
不会用终端,能用 Frame-Find 吗?
能。所有功能都在 App 窗口里;命令行是额外给写脚本的人和 AI 助手用的。把上面的提示词复制给你的助手,用大白话说你要什么就行。
这是 Mac App Store 上的那个版本吗?
不是。Frame-Find 在 Mac App Store 上也有一个单独的 App。本页的版本由我们直接发行,两边的购买不互通。如果你已经买了 App Store 版,就不需要再买这个。
哪些电脑能用?
macOS 13.3 Ventura 或更新的 Mac,Apple 芯片和 Intel 都可以,在 Apple 芯片上索引最快。Windows 上,Windows 10(2004 版)或更新、以及 Windows 11 的 64 位电脑都可以,从 Microsoft Store 安装。
一份授权能同时用在 Mac 和 Windows 上吗?
可以。同一个授权码能解锁你自己所有 Mac 和 Windows 电脑上的 Frame-Find,在每台电脑的设置 → 授权里粘贴即可。
为什么 Windows 版要从 Microsoft Store 安装?
Microsoft Store 会用 Microsoft 的签名安装 Frame-Find,并自动保持更新。商店版和 Mac 版下载一样免费,用本页购买的授权解锁。
第一次打开时 macOS 问我是否确定要打开,正常吗?
正常。从网站下载的 App 第一次打开时,macOS 都会问一次。确认提示里写着 Apple 已检查过、未发现恶意软件,再点「打开」即可。这说明 App 用我们的 Apple Developer ID 签名、并经过 Apple 公证。如果提示是 Apple 无法验证这个 App、而且没有「打开」按钮,请不要打开,从本页重新下载;如果还是这样,请发邮件告诉我们。
可以添加多个文件夹吗?
可以。每个添加的文件夹都是一个媒体库,有自己的索引、自己保存的搜索,在媒体库页面上有自己的卡片。外接硬盘上的文件夹也可以加:硬盘没接上时卡片只显示「文件夹未找到」,索引保留着,硬盘接回来就接着用。
Frame-Find 会移动、改名或修改我的文件吗?
不会,它只读取文件。移除媒体库只删除 Frame-Find 为这个文件夹建的索引,文件夹和里面的文件不会有任何改动。
用着不合适怎么办?
每笔购买都享有 14 天无理由退款。
销售方:重庆剑鱼科技有限公司(Chongqing Swordfish Technology Co., Ltd.,品牌 SwordFishSoft)。订单由我们的在线经销商 Paddle.com 处理,Paddle.com 是所有订单的记录商户(Merchant of Record)。服务条款 · 退款政策 · 隐私政策。SigLIP 2 © Google LLC,依 Apache License 2.0 使用。截图里的照片是公有领域(CC0)示例图片。