chattercatcher 0.1.8 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -25
- package/dist/cli.js +321 -281
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +3 -16
- package/dist/index.js +222 -251
- package/dist/index.js.map +1 -1
- package/docs/DEVELOPMENT_PLAN.md +1 -1
- package/docs/TECHNICAL_ARCHITECTURE.md +10 -10
- package/package.json +1 -2
package/README.md
CHANGED
|
@@ -27,8 +27,7 @@
|
|
|
27
27
|
<p align="center">
|
|
28
28
|
<img alt="TypeScript" src="https://img.shields.io/badge/TypeScript-6.x-3178c6?style=flat-square&logo=typescript&logoColor=white" />
|
|
29
29
|
<img alt="Node.js" src="https://img.shields.io/badge/Node.js-20+-339933?style=flat-square&logo=node.js&logoColor=white" />
|
|
30
|
-
<img alt="SQLite" src="https://img.shields.io/badge/SQLite-FTS5-003b57?style=flat-square&logo=sqlite&logoColor=white" />
|
|
31
|
-
<img alt="LanceDB" src="https://img.shields.io/badge/LanceDB-vector-2f8f83?style=flat-square" />
|
|
30
|
+
<img alt="SQLite" src="https://img.shields.io/badge/SQLite-FTS5%20%2B%20vectors-003b57?style=flat-square&logo=sqlite&logoColor=white" />
|
|
32
31
|
<img alt="Feishu" src="https://img.shields.io/badge/Feishu%20%2F%20Lark-MVP-3370ff?style=flat-square" />
|
|
33
32
|
</p>
|
|
34
33
|
|
|
@@ -54,7 +53,7 @@
|
|
|
54
53
|
|
|
55
54
|
## 项目状态
|
|
56
55
|
|
|
57
|
-
ChatterCatcher 是一个早期 MVP。它已经具备飞书长连接接入、本地消息存储、SQLite FTS、
|
|
56
|
+
ChatterCatcher 是一个早期 MVP。它已经具备飞书长连接接入、本地消息存储、SQLite FTS、SQLite embedding 向量检索、OpenAI-compatible LLM/Embedding、CLI、本地 Web UI 和带引用回答。
|
|
58
57
|
|
|
59
58
|
当前核心方向是:
|
|
60
59
|
|
|
@@ -83,7 +82,7 @@ ChatterCatcher 是一个早期 MVP。它已经具备飞书长连接接入、本
|
|
|
83
82
|
<br />
|
|
84
83
|
<strong>本地 RAG 检索</strong>
|
|
85
84
|
<br />
|
|
86
|
-
SQLite FTS 与
|
|
85
|
+
SQLite FTS 与 SQLite embedding 向量检索并存,回答前必须先召回证据。
|
|
87
86
|
</td>
|
|
88
87
|
</tr>
|
|
89
88
|
<tr>
|
|
@@ -112,7 +111,7 @@ ChatterCatcher 是一个早期 MVP。它已经具备飞书长连接接入、本
|
|
|
112
111
|
| --- | --- |
|
|
113
112
|
| 飞书 Gateway | 官方长连接、`im.message.receive_v1` 事件、重复投递保护、附件下载入口 |
|
|
114
113
|
| 消息入库 | 普通文本消息写入 SQLite;`@` 提问直接回答并跳过入库 |
|
|
115
|
-
| RAG 检索 | SQLite FTS 关键词检索、
|
|
114
|
+
| RAG 检索 | SQLite FTS 关键词检索、SQLite embedding 向量检索、混合重排、证据来源保留 |
|
|
116
115
|
| 问答 | OpenAI-compatible chat completions、证据不足时说不知道、回答带引用 |
|
|
117
116
|
| 引用格式 | 展示“谁在什么时候说了什么”,避免暴露 `ou_` / `oc_` 等 opaque id |
|
|
118
117
|
| 文件知识源 | 支持 txt、md、json、csv、tsv、log、docx、pdf 导入和解析 |
|
|
@@ -133,12 +132,12 @@ flowchart LR
|
|
|
133
132
|
Router -->|"普通消息"| SQLite["SQLite messages"]
|
|
134
133
|
SQLite --> FTS["SQLite FTS5"]
|
|
135
134
|
SQLite --> Indexer["Embedding Indexer"]
|
|
136
|
-
Indexer -->
|
|
135
|
+
Indexer --> Vectors["SQLite embedding vectors"]
|
|
137
136
|
|
|
138
137
|
Router -->|"@ 提问"| QA["Question Handler"]
|
|
139
138
|
QA --> Hybrid["Hybrid Retriever"]
|
|
140
139
|
FTS --> Hybrid
|
|
141
|
-
|
|
140
|
+
Vectors --> Hybrid
|
|
142
141
|
Hybrid --> LLM["OpenAI-compatible LLM"]
|
|
143
142
|
LLM --> Reply["带引用回复原消息"]
|
|
144
143
|
Reply --> Feishu
|
|
@@ -197,7 +196,7 @@ chattercatcher setup
|
|
|
197
196
|
| LLM Model | 用于答案生成 |
|
|
198
197
|
| Embedding Base URL | 可复用 LLM Base URL |
|
|
199
198
|
| Embedding API Key | 留空可复用 LLM API Key |
|
|
200
|
-
| Embedding Model | 用于
|
|
199
|
+
| Embedding Model | 用于 SQLite embedding 语义检索 |
|
|
201
200
|
| Web UI Host/Port | 默认 `127.0.0.1:3878` |
|
|
202
201
|
|
|
203
202
|
### 5. 检查配置
|
|
@@ -258,7 +257,7 @@ http://127.0.0.1:3878
|
|
|
258
257
|
| `chattercatcher gateway status` | 查看 Gateway 状态 |
|
|
259
258
|
| `chattercatcher gateway stop` | 停止 Gateway |
|
|
260
259
|
| `chattercatcher process messages` | 立即处理消息索引任务 |
|
|
261
|
-
| `chattercatcher index rebuild` | 重建
|
|
260
|
+
| `chattercatcher index rebuild` | 重建 SQLite embedding 向量索引 |
|
|
262
261
|
| `chattercatcher files add <path...>` | 导入本地文件知识源 |
|
|
263
262
|
| `chattercatcher files jobs` | 查看文件解析任务 |
|
|
264
263
|
| `chattercatcher export --out <file>` | 导出本地知识库数据,不含密钥 |
|
|
@@ -277,9 +276,7 @@ http://127.0.0.1:3878
|
|
|
277
276
|
`-- data/
|
|
278
277
|
|-- chattercatcher.db
|
|
279
278
|
|-- files/
|
|
280
|
-
|
|
281
|
-
`-- vector/
|
|
282
|
-
`-- lancedb/
|
|
279
|
+
`-- exports/
|
|
283
280
|
```
|
|
284
281
|
|
|
285
282
|
这些内容不应该提交到 GitHub:
|
|
@@ -336,23 +333,13 @@ npm run dev -- --help
|
|
|
336
333
|
|
|
337
334
|
### macOS 上提示 `Cannot find native binding` 怎么办?
|
|
338
335
|
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
ChatterCatcher 从 `0.1.1` 起锁定到仍发布 `darwin-x64` 和 `darwin-arm64` native 包的 LanceDB 版本,以覆盖 Intel Mac 和 Apple Silicon Mac。先升级:
|
|
342
|
-
|
|
343
|
-
```bash
|
|
344
|
-
npm uninstall -g chattercatcher
|
|
345
|
-
npm install -g chattercatcher --include=optional
|
|
346
|
-
```
|
|
347
|
-
|
|
348
|
-
如果仍然失败,清理 npm cache 后再装:
|
|
336
|
+
请升级到移除平台 native 向量库依赖的版本:
|
|
349
337
|
|
|
350
338
|
```bash
|
|
351
|
-
npm
|
|
352
|
-
npm install -g chattercatcher --include=optional
|
|
339
|
+
npm install -g chattercatcher@latest
|
|
353
340
|
```
|
|
354
341
|
|
|
355
|
-
|
|
342
|
+
当前版本的语义向量索引写入 SQLite,不再依赖平台相关的 native optional dependency。
|
|
356
343
|
|
|
357
344
|
### 为什么要用 RAG?
|
|
358
345
|
|