01打开它
facetmark serve它会打印一个网址——默认是 http://127.0.0.1:8765——然后一直跑着。打开这个网址。终端别动,关掉终端服务就停了。
服务只绑在你自己这台机器上,页面在能证明两头都是本机的时候会自己给自己发一个令牌。所以没有登录页,也没有什么账号需要注册。
如果你用别的名字访问它——局域网地址、内网穿透、反向代理——这次握手会被故意拒绝,页面会让你手动粘贴令牌。用 facetmark token 取。
只有一个令牌,也没有限流。它是为「你现在坐的这把椅子」设计的。
02第一次:三步
库是空的时候,页面开在一个安装屏而不是搜索屏——零条书签上面架一个搜索框是条死路。三个带框的步骤,按顺序来,全都在浏览器里完成:
- 把书签导进来。从浏览器导出(书签 → 管理 → 导出),把那个 HTML 文件丢到按钮上。Chrome 的
BookmarksJSON 文件也认;导入器会自己判断你给的是哪种。 - 指一个模型,或者不指。粘贴 API key,或者把向量后端切成本地、完全不用 key。两种走法页面都会先测一遍连通性,再让你依赖它。
- 建索引。一个按钮。七个阶段,跑到哪显示到哪,带日志。你可以关掉标签页再回来——任务跑在服务里,不在页面里。
三个框都打上勾之后,这屏会把搜索框递给你然后让开。除非库又空了,它不会再出现。
03五个标签,加一个齿轮
| 屏 | 干什么用 |
|---|---|
| 搜索 | 主角。打字,拿到排好序的页面,并看到四条路里是哪几条找到了它。 |
| 提问 | 用一句话问,答案从你自己的页面里来,每句话都能追回它出自哪条书签。它引用,不编造。 |
| 库 | 索引里到底有什么:多少页有正文、多少页有向量、哪些链接已经死了、队列里排着什么、哪些从来没被打开过。 |
| 时段 | 同一段时间里存下来的书签,成组显示。当你只记得什么时候、别的都不记得时很有用。 |
| 系统 | 版本、数据库路径、模型服务、运行时长。提 bug 时截这一屏。 |
| ⚙ 设置 | 模型、限流、隐私,以及索引任务。放在齿轮后面而不是标签栏里,因为你一年才开两次。 |
英文界面里那个「Sittings」不是「Settings」写错了。一个 sitting 是一段存书签的时间——你晚上十一点一口气归档的那二十个标签页。设置在齿轮里。
04一行结果怎么读
一行是:名次、标题、来自哪里、一段把你的词标出来的摘要,然后是别的书签搜索都不给你看的那部分——找到它的那几条路。
正文的向量。它被找到,是因为这个页面就是在讲你问的东西——不管它有没有用你那几个词。
全文检索,按词切和按三字符切各一路。它被找到,是因为你打的那串字就在里面。你记得一个专有名词的时候,救你的是这条路。
从页面生成的问题的向量。它被找到,是因为有人可能拿你这个问题去问这个页面。
这一路根本不参与排名:图上距离一跳的页面,在结果下面单独成组。包括「存在一起的」和「意思相近的」。
徽章下面那条短横条用的是同一套颜色。那是配比:这一条融合分里,每条路各出了多少。两行偏金、一行偏紫,意思是前两条对上了你的拼写、第三条对上了你的意思——而这通常正是你开始看懂自己那句 query 的时刻。
- 从未打开——facetmark 没见你打开过这一条。浏览器导出里根本不带使用记录,所以第一天所有条目都是这样。
- 每行末尾那个 ⋯ 按钮——不离开结果列表,就地打开这个页面自己的面板:正文统计、链接、它属于哪个时段。
- 更多选项——选四条路里跑几条。默认跑一条;最后一档四条全跑还加重排。它更慢,而且在含糊的问题上有实测的提升。
05快捷键,以及按你的习惯读
| 键 | 作用 |
|---|---|
| / | 从任何地方跳到搜索框 |
| ↑ ↓ | 在候选里上下走 |
| Enter | 搜索,或者采用高亮的那条候选 |
| Esc | 关掉面板,或者清空输入框 |
| Tab | 按阅读顺序走过每一个控件 |
- 太阳/月亮那个按钮切主题;你没碰过它之前它跟随系统,碰过之后它记住。
- 中文 / EN 切语言。切的是界面,不是你的数据。
- 所有东西都是正常字号的真文字,所以浏览器缩放有效,选中复制也有效。
- 如果你的系统要求减少动效,这个页面就没有动效。没有任何数字要等一个动画播完才肯出现。
06它不听话的时候
| 你看到的 | 是怎么回事 |
|---|---|
| 页面打开了但要令牌 | 你用的不是 127.0.0.1 或 localhost。运行 facetmark token 粘贴进去,或者改用本机地址。 |
address already in use | 端口被别的东西占了。facetmark serve --port 8790。 |
| 搜不出东西,库里显示 0 个向量 | 索引没建过。齿轮 → 运行,或者 facetmark index。 |
| 每条结果都写着从未打开 | 没错,而且是暂时的。等 facetmark 通过它自己看你打开过几个页面之后,这个标记才开始有意义。 |
| 索引任务卡在抓取 | 有些页面打不开。它会跳过去;死链会出现在「库」里,那些页面也仍然会靠标题进索引。 |