为规则、分类、标签管理页新增的「批量操作模式」与多选删除补充使用与开发文档,同时补上此前已完成但未同步的 AI 规则建议可编辑、编辑后实时重算去重等文档,并登记批量模式截图脚本。 变更内容: - guide/categories-tags.md:补充分类与标签的批量删除说明,并回填 tags-batch.png、categories-batch.png 配图。 - guide/rules.md:批量删除与应用匹配账单改为需先进入「批量操作」模式(默认不显示勾选框)。 - dev/api.md:新增 DELETE /api/tag/batch、/api/category/batch,并补齐规则命中账单预览/一键应用、AI 规则去重校验等接口。 - dev/data-model.md:说明标签删除清理交易标签与规则标签关联、分类删除保留逻辑引用(账单显示未分类)。 - dev/rule-engine.md、dev/ai.md、dev/preferences.md、guide/ai.md、guide/transactions.md:同步 AI 规则建议可编辑、编辑后实时重算去重、应用开关默认开启并持久化等说明。 - scripts/ts/capture-elements.ts:新增 captureBatchModes()(标签/分类批量模式截图)并纳入 main()。 说明: - 截图经测试环境(前端 5174 / 后端 8081,虚构数据)生成,已上传 OSS,正文以 OSS 长期地址引用;public/screenshots 目录不入库。
139 lines
10 KiB
Markdown
139 lines
10 KiB
Markdown
# AI 能力
|
||
|
||
系统集成 **DeepSeek** 大模型,在分类打标、查询、记账等环节提供智能辅助。所有 AI 功能需先在「设置 → AI 模型配置」中启用并配置 API Key。
|
||
|
||
## 数据与隐私
|
||
|
||
系统仅向大模型发送完成功能所需的**最小字段**,**不会上传任何敏感数据**。所有 AI 请求均由你自行配置的接口地址发起。
|
||
|
||
**不会发送**:
|
||
|
||
- 账单导入的原始数据(`rawData`,可能含交易对方、商品名、订单号、对方账户/卡号等);
|
||
- 金额;
|
||
- 交易号、账户/卡号、姓名、地址、电话等可识别个人或账户的信息。
|
||
|
||
**实际发送**(按功能所需最小化):
|
||
|
||
- 分类/标签建议:记录的收支类型、备注、交易渠道;
|
||
- 智能查询 / 统计:你输入的自然语言,以及分类与标签名称;
|
||
- 智能记账:你输入的一句话;
|
||
- 生成分类/标签、推荐 Emoji/颜色:你输入的名称或描述;
|
||
- 生成规则:所选记录的类型、备注、交易渠道、已有分类与标签(不含金额与原始账单数据);
|
||
- 生成账单关系名称:所选账单的收支类型、交易渠道、分类名称与备注(不含金额与原始账单数据);
|
||
- 智能查数:你输入的自然语言,以及可供查询的表结构说明(不含账单原始字段);
|
||
- 图片记账:你**主动上传**的账单/支付截图会**整张**发送给视觉模型(可能含金额、交易对方、订单号等),视为你主动提供的输入。
|
||
|
||
图片同时会保存在本地(`data/ai-images/`),仅本人可查看;请勿上传包含他人敏感信息的图片。
|
||
|
||
API Key 仅保存在本地数据库中,仅用于向你配置的接口地址发起请求,不会随上述数据一并外发。
|
||
|
||
## 配置
|
||
|
||
在「设置 → AI 模型配置」中:
|
||
|
||
- 开启「启用 AI 建议」。
|
||
- 填写 **API Key**。
|
||
- 可选修改 **接口地址**(默认 `https://api.deepseek.com`)、**模型**(默认 `deepseek-chat`)与**视觉模型**(默认 `deepseek-flash`,用于图片记账)。
|
||
- 点击「测试连接」验证配置。
|
||
|
||

|
||
|
||
## 功能一览
|
||
|
||
| 功能 | 入口 | 说明 |
|
||
|---|---|---|
|
||
| 分类/标签建议 | 收支记录 → 一键设置 → AI 智能建议 | 对所选记录批量建议分类与标签(未勾选时为当前页),可一键采纳 |
|
||
| 单条建议 | 新增/编辑记录 → AI 推荐 | 推荐已有分类、标签或交易渠道 |
|
||
| 智能查询 | 收支记录 → AI 智能查询 | 自然语言解析为筛选条件 |
|
||
| 智能记账(文字) | 收支记录 → 智能记账 → 文字记账 | 一句话解析为一笔记录 |
|
||
| 智能记账(图片) | 收支记录 → 智能记账 → 图片记账 | 上传一至多张账单/支付截图,实时识别为多条记录,勾选后批量导入 |
|
||
| 生成分类 | 分类管理 → AI 生成 | 由用途描述生成分类 |
|
||
| 生成渠道 | 新增/编辑记录 → 交易渠道 → AI 新建 | 由账单描述生成渠道名称并创建 |
|
||
| 推荐 Emoji | 分类管理 → AI 推荐 | 为分类推荐 Emoji 图标 |
|
||
| 推荐颜色 | 标签管理 → AI 推荐 | 为标签推荐颜色 |
|
||
| 生成规则 | 规则管理 → AI 生成规则(已打标签记录)/收支记录 → 批量操作 → AI 生成规则(勾选账单) | 由所选记录归纳分类与标签规则,规则可编辑、去重实时重算,可同时应用到勾选账单(默认开启) |
|
||
| 统计搜索 | 统计面板 → AI 搜索 | 自然语言解析为统计筛选条件与维度 |
|
||
| 生成关系名称 | 收支记录 → 账单关系 → AI 生成 | 依据关联账单的类型、渠道、分类与备注生成关系名称与备注 |
|
||
| 智能查数 | 左侧菜单 → 智能查数 | 自然语言转只读 SQL 查询并展示结果 |
|
||
| 手动新建分类/标签/渠道 | 新增/编辑记录 → 新建分类 / 新建标签 / 新建渠道 | 不依赖 AI,直接创建并选中(始终可用) |
|
||
|
||
## 分类与标签建议
|
||
|
||
在收支记录页点「一键设置」,选择建议范围(分类与标签 / 仅分类 / 仅标签)后点「AI 智能建议」。作用范围为有勾选时的勾选记录、未勾选时的当前页记录;系统会按记录的类型、备注、交易渠道等聚合后请求模型,返回建议并进入 AI 建议弹窗。
|
||
|
||
弹窗中每条记录展示建议分类、建议标签与理由,默认全选。若建议了系统中不存在的分类或标签,会以「新建」标记,确认后自动创建。应用时分类会被覆盖、标签会被追加。
|
||
|
||
## 智能查询
|
||
|
||
在收支记录页点「AI 搜索」打开**可拖拽、可缩放的浮窗**,在输入框中用自然语言描述,例如:
|
||
|
||
- 「上个月餐饮」→ 时间范围 + 分类
|
||
- 「超过500的支出」→ 类型 + 金额区间
|
||
- 「待报销的支出」→ 标签 + 类型
|
||
- 「微信支付」→ 交易渠道
|
||
|
||
按 `Ctrl + Enter`(Mac 为 `⌘ + Enter`)提交,解析结果会直接应用为筛选条件并立即查询;浮窗的位置与大小会被记住。详见[收支记录](/guide/transactions)。
|
||
|
||
## 智能记账
|
||
|
||
「智能记账」弹窗提供「**文字记账**」与「[图片记账](#图片记账)」两个标签页,再次打开时会记住上次使用的方式。
|
||
|
||
在「文字记账」中描述一笔收支,AI 解析出类型、金额、分类、交易渠道、时间、备注、标签等字段,并预填到新增记录表单,确认后保存。
|
||
|
||

|
||
|
||
## 图片记账
|
||
|
||
在「智能记账」弹窗切换到「**图片记账**」标签页,上传账单或支付截图,AI 会调用**视觉模型**一次性识别其中的每一笔交易。
|
||
|
||

|
||
|
||
- **多图上传**:一次最多 **5 张**,单张不超过 **10MB**、总大小不超过 **30MB**;支持 JPEG / PNG / GIF / WebP。
|
||
- **粘贴上传**:也可按 `Ctrl+V`(Mac 为 `⌘V`)直接粘贴剪贴板中的图片。
|
||
- **补充说明**(可选):在下方输入框补充提示(如「这是 9 月的账单」),帮助模型理解。
|
||
- 点击「识别图片」后,弹窗内会**实时显示识别进度**(校验图片、保存、调用模型、解析、查重等步骤),耗时较长的识别过程可见可控。
|
||
- 识别完成后进入**结果弹窗**:
|
||
|
||

|
||
|
||
- 结果以表格逐条展示,**默认全选**(疑似重复项默认不勾选),可直接编辑**类型、金额、分类、时间、备注**。
|
||
- **来源图**列标注该笔交易来自第几张上传图片;**重复**列标记与已有记录或本批其它记录「类型+金额+时间」一致的疑似重复项。
|
||
- **原始数据**列可查看模型从图片中提取的原始字段(时间、对方、商品、订单号等),用于核对。
|
||
- 顶部摘要说明识别到的账单内容;勾选后点击「导入勾选」批量写入收支记录(导入时会再次按去重键跳过重复)。
|
||
- 未识别到有效交易时会给出提示,不会写入任何记录。
|
||
|
||
> 图片记账使用的是视觉模型,可在「设置 → AI 模型配置」中单独配置(默认 `deepseek-flash`)。详见[设置](/guide/settings)。
|
||
|
||
导入后的记录可在[收支记录](/guide/transactions)的「**详情**」弹窗中回看来源图片(默认加载缩略图,可点「加载原图」切换为原图)。
|
||
|
||
## AI 统计搜索
|
||
|
||
在统计面板顶部点「AI 搜索」打开浮窗,用一句自然语言描述统计意图,例如「上个月餐饮花了多少」「近半年交通支出趋势,按周看」。系统会解析为**时间范围、收支类型、分类、标签、交易渠道、金额区间、备注、统计口径与趋势粒度**并自动回填、刷新图表。详见[统计面板](/guide/dashboard)。
|
||
|
||
> 想要更自由的问答式查询(直接生成查询并返回明细),可使用[智能查数](/guide/sql-query)。
|
||
|
||
## AI 生成规则
|
||
|
||
有两种生成方式:
|
||
|
||
- **规则管理页**:点「AI 生成规则」,选择用于归纳的**已打标签记录**(默认全选当前页,支持搜索、筛选与分页),AI 依据这些记录的**类型、备注、交易渠道、已有分类与标签**生成规则建议;建议可**逐字段编辑**(名称、类型、关键词、金额区间、分类、标签),编辑后自动重算去重,勾选后批量创建。
|
||
- **收支记录页**:在**批量操作**区勾选若干账单后点「AI 生成规则」,直接以**勾选的账单**为依据归纳规则(不要求已打标签);规则同样可编辑、去重实时重算,弹窗中还可勾选「**同时应用到当前勾选的账单**」(**默认开启**并记住上次选择),命中时覆盖这些账单的分类并追加标签。
|
||
|
||
两种方式都会对与已有规则重复的建议标记「已存在」并禁止导入,且**编辑后实时重算**(改到不重复自动勾选、改成重复自动取消并禁用)。详见[规则管理](/guide/rules#ai-生成规则)与[收支记录](/guide/transactions#ai-生成规则从勾选账单)。
|
||
|
||
## 用量统计
|
||
|
||
「模型使用情况」页面(设置 → AI 模型配置 →「使用情况」)展示 AI 调用汇总与明细。
|
||
|
||

|
||
|
||
- **调用概览**:调用次数、成功、失败、总 Token。
|
||
- **Token 明细**:输入 Token、输出 Token、缓存命中。
|
||
- **最近调用记录**:时间、类型、分析条数、Token、耗时、状态。
|
||
|
||
## 说明
|
||
|
||
- AI 建议结果仅供参考,应用前可逐条取消勾选。
|
||
- 关闭「启用 AI 建议」后,系统不会发起任何 AI 请求,相关入口也会隐藏(分类/标签/渠道的**手动新建**入口不受影响,始终可用)。
|
||
- 账单类型识别(邮箱账单)使用的是**发件人规则**而非 AI,结果更确定、可预期。
|