返回顶部
f

filechat-rag文件聊天RAG

>

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.4
安全检测
已通过
149
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

filechat-rag

FileChat RAG 技能

您的个人RAG(检索增强生成)文档库,由Google Drive提供支持。
支持动态管理多个Google Drive文件夹、交互式文件夹路由、增量同步,可选择Gemini或OpenAI进行嵌入,并可连接到Qdrant。

设置与引导

首先验证/workspace/skills/filechat/.env中是否设置了所需的环境变量:

  1. 1. EMBEDDINGPROVIDER(gemini或openai)
  2. GEMINIAPIKEY或OPENAIAPIKEY
  3. 可选:QDRANTURL和QDRANTAPIKEY(如果缺失,则使用本地基于磁盘的JSON存储)。

按如下方式创建.env文件:
bash
echo EMBEDDING_PROVIDER=gemini > ./skills/filechat/.env
echo GEMINIAPIKEY=yourkeyhere >> ./skills/filechat/.env

Google Workspace身份验证:
在运行任何命令之前,通过运行以下命令检查系统是否已通过身份验证:
bash
npx @googleworkspace/cli auth status

如果返回身份验证错误或指示没有令牌,您必须提示用户进行身份验证。触发交互式登录流程:
bash
npx @googleworkspace/cli auth login --services drive

等待用户完成浏览器OAuth流程后再继续。

文件夹管理

用户可以同步无限数量的文件夹。您可以使用folders.js来管理它们。

  • - 列出文件夹: cd ./skills/filechat && node folders.js list
  • 添加文件夹: node folders.js add Taxes 2026 (如果您不知道ID,可以通过gws drive files list自动发现!)
  • 设置默认文件夹: node folders.js default Taxes 2026

如果用户要求对文件/文件夹执行操作但没有指定具体对象,请运行node folders.js get-default查找默认ID。如果没有文件夹存在,请要求用户设置一个!

如何同步库

当用户要求同步、刷新或更新时,您必须运行摄取脚本。

同步特定文件夹:
bash
cd ./skills/filechat && node sync.js

同步所有内容(注册表中的所有文件夹):
bash
cd ./skills/filechat && node sync-all.js

注意:同步是高度增量的,并使用本地缓存!如果文件在Drive中没有被修改,脚本会立即跳过它并输出0 chunks已嵌入。这是正常行为。如果您正在调试、测试,或者用户特别要求硬刷新,您必须首先删除缓存文件:
bash
rm ./skills/filechat/metaID>.json
rm ./skills/filechat/vectordb.json

如何回答用户问题(RAG)

查询目标文件夹ID的本地向量存储或Qdrant以获取相关文本片段:

bash
cd ./skills/filechat && node query.js 我的医疗出院证明上写了什么?

使用返回的片段来回答用户。

如何检索和发送物理文件

使用查询脚本找到文件ID,然后下载它:
bash
gws drive files get --params {fileId: , alt: media} --output /workspace/discharge.pdf

使用媒体标签回复:MEDIA:/workspace/discharge.pdf。

如何为用户存储新文件

如果用户上传文件并要求您保存它(或根据您的自动处理规则隐式发送文件):

  1. 1. 检查他们的文件夹(node folders.js list)。
  2. 如果他们没有指定文件夹,使用默认文件夹。如果没有设置默认文件夹,请询问他们!
  3. 通知用户文件将被保存到哪个文件夹。
  4. 告诉用户您正在提取信息并将其保存到向量数据库中。
  5. 如果文件是图像或扫描文档,请确保在嵌入之前使用视觉模型或OCR提取文本。(同步脚本原生处理此操作)。
  6. 使用gws将其上传到正确的文件夹:

bash
gws drive files create --json {name: filename.pdf, parents: []} --upload /path/to/uploaded/file.pdf

  1. 7. 触发node sync.js ,以便向量数据库将文件分块并嵌入到相应的向量数据库中。

如何测试和验证技能

如果用户要求您验证技能是否正常工作,或者您刚刚设置好并希望确保端到端功能,请按照以下确切步骤操作:

  1. 1. 验证身份验证: 运行npx @googleworkspace/cli auth status。确保显示有效的令牌。
  2. 验证Drive访问权限: 对目标文件夹进行试运行获取,以确保GWS可以看到文件。
bash npx @googleworkspace/cli drive files list --params {q: \\ in parents and trashed = false}

(如果失败,请检查文件夹权限或GWS凭据。)

  1. 3. 强制进行干净同步: 清除测试文件夹的缓存以确保全新运行,然后同步。

bash
rm -f ./skills/filechat/metaID>.json ./skills/filechat/vectordb.json
node ./skills/filechat/sync.js

(您应该看到文件被下载、OCR处理以及片段被嵌入。如果显示0 chunks,请验证文件夹不为空。)

  1. 4. 测试向量查询: 运行通用查询以验证嵌入已保存且余弦相似度正常工作。

bash
node ./skills/filechat/query.js 你好

(您应该看到带有相似度分数和文本片段的Top matches列表。如果看到,则RAG管道100%可运行!)

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 filechat-rag-1776078373 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 filechat-rag-1776078373 技能

通过命令行安装

skillhub install filechat-rag-1776078373

下载

⬇ 下载 filechat-rag v1.0.4(免费)

文件大小: 61.2 KB | 发布时间: 2026-4-14 14:03

v1.0.4 最新 2026-4-14 14:03
- Added developer tests and setup files for validation and automated testing (`tests/credentials.json`, `tests/setup.js`, `tests/skill.test.js`).
- Added `_meta.json` to support additional skill metadata or configuration.
- Removed an obsolete or auto-generated metadata file.
- Updated documentation with a new section on Google Workspace authentication, including how to check and prompt for Drive OAuth before usage.
- Expanded documentation with a full end-to-end testing and validation workflow for setup, authentication, cache cleaning, and RAG functionality.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large