Uninote
Uninote
用户根目录
brdr
common
programming
docs
后端试题
问题讨论

根据笔记库文件向 DeepSeek 提问

在“打包文件”对话框中,先通过筛选器和文件树选择范围,再输入问题并点击“向 DeepSeek 提问”。应用会请求 DeepSeek 生成 search-files ["关键词", ...] 查询命令,按任一关键词在已选文件的已保存内容中查找。查询只返回命中文件列表,不执行系统命令。应用随后打包命中文件,将问题和打包内容发给 DeepSeek,并在对话框中显示回答。

  • “查询打包”执行查询和打包,不发送最终回答请求。
  • “选择文件提问”不生成查询命令,也不筛选文件;它直接打包当前勾选的全部文件,在打包结果框显示内容,然后发送最终回答请求。
  • “选择文件打包”只在本机打包当前勾选的文件,不发送任何 DeepSeek 请求。

本地配置

  • 首次使用时,在对话框中输入并保存 DeepSeek API Key。Key 使用系统安全凭据能力加密,单独存入 Electron AppData 下的 deepseek-key-v1.json,不进入笔记库或云同步。
  • 首次请求时,应用在同一 AppData 目录创建 deepseek-prompts-v1.json。其中 query 和 answer 分别是查询命令与最终回答的系统提示词。可在应用关闭后手动编辑;下次请求会重新读取。
  • Windows 默认 AppData 路径是 %APPDATA%\mynote-client。其他平台以 Electron userData 路径为准。

结果与限制

  • 打包结果框下方可复制打包内容,底部的“复制 DeepSeek 回答”可复制回答。回答区最初折叠,收到首个回答时自动展开,之后可以手动折叠或展开。
  • 每个笔记库的最近一次成功问答保存在本机界面存储中。关闭对话框或重启应用后,再打开“打包文件”会恢复该问题和回答;新回答会覆盖旧记录。记录不进入笔记库或云同步。
  • 查询仅扫描当前选择的 Markdown 文件,并使用磁盘上已保存的内容。无命中时不会发送文件内容请求。
  • 命中文件的完整打包内容会发送给 DeepSeek。文件较大时,DeepSeek 可能因上下文长度限制拒绝请求;可缩小文件范围后重试。
  • 回答请求将文件内容放在问题之前,使同一批文件面对不同问题时尽量复用相同的输入前缀。DeepSeek 的服务端缓存自动运行,是否命中取决于前缀是否已持久化,无法保证每次命中。
  • 修改源代码后需要重启应用;修改提示词配置后无需重启,下一次请求即可生效。

调试日志

  • 渲染进程的 console.debug 记录问题、所选文件、查询命令、每个文件是否命中、命中文件列表、打包内容、最终回答及流程错误。可在应用的开发者工具 Console 中查看。
  • 主进程的 console.debug 记录两个阶段的 DeepSeek 请求 URL、方法、完整 JSON 请求体、HTTP 状态、返回 JSON 或错误响应内容。嵌套字段格式化为完整 JSON,不会显示 [Object]。可在启动应用的终端中查看。
  • 每次成功请求还会输出 hitTokens 和 missTokens,分别对应 DeepSeek 返回的缓存命中和未命中输入 token 数。
  • 日志会包含问题和笔记正文,排查后请妥善处理终端或开发者工具中的日志。API Key 和 Authorization 请求头不会被主动写入日志。

codemirror-migration

keyboard-mvp

点赞(0) 阅读(2) 举报
目录
标题