SuperAPI AI 工具集

setup

数据与分析

查看项目

更新于 10-16 06:55

技能介绍

用途

该技能用于为文档语料库建立语义搜索索引,帮助用户搭建知识库、从 Markdown 文档创建可搜索索引,并启用语义检索能力。索引基于 qmd 工具完成。

前置条件

需要先安装 qmd:

bun install -g @tobilu/qmd

安装后验证:

qmd --version

文档必须为 Markdown 格式。若为 PDF/DOCX,需先使用 /parse 进行转换。

主要能力与工作流程

  1. 验证 qmd:运行 qmd --version,若未安装参见前置条件。

  2. 创建集合:

qmd collection add <path> --name <name>

参数说明:path 为文档目录路径(必填);name 为集合名称(默认取目录名)。示例:

qmd collection add ./docs --name my-project
qmd collection add ~/Documents/api-docs --name api-docs
  1. 添加上下文(可选):为提升检索效果,可添加语义上下文描述:
qmd context add qmd://<name> "<description>"

示例:

qmd context add qmd://api-docs "API documentation for the project"
qmd context add qmd://contracts "Legal contracts and agreements"
  1. 生成嵌入:
qmd embed

该命令为集合中所有文档创建向量嵌入。

  1. 验证设置:
qmd status

应显示集合及文档数量。

完整示例:

# Create collection
qmd collection add ./docs --name my-project

# Add context
qmd context add qmd://my-project "Project documentation and guides"

# Generate embeddings
qmd embed

# Verify
qmd status

响应要求

使用该技能时,最终回答中始终需包含:将创建/使用的集合名称(如 my-project)、被索引的源文档路径(如 ./docs)、索引/集合的存储位置(qmd 集合位置)以及验证命令(qmd status)。不得省略存储位置信息。

适用场景

适合中小型语料库、离线使用场景。设置完成后,可使用 /search 搜索文档。

限制与故障排查

若出现 “sqlite-vec is not available”,说明 qmd 需要支持扩展加载的 SQLite。解决方案:macOS 使用 brew install sqlite;Linux 从源码构建 sqlite-vec;Docker 使用官方 qmd Docker 镜像。详见 docs/qmd-setup.md。

若嵌入失败,可检查:qmd status、确认文档存在(ls -la <path>)、检查空文件(find <path> -empty)。

提供方说明

qmd(当前):存储为本地 SQLite(含 sqlite-vec 扩展);嵌入使用本地模型(无需 API 密钥);适合中小型语料库与离线使用。

pinecone(计划中):存储为 Pinecone 云端;嵌入使用 OpenAI 或自定义嵌入;适合大规模生产部署;设置需 PINECONE_API_KEY 环境变量。

weaviate(计划中):存储为 Weaviate 实例(自托管或云端);嵌入可配置;适合需要混合搜索的企业部署;设置需 WEAVIATE_URL,可选 WEAVIATE_API_KEY。