返回市场
检索器

检索器

作者:devflowinc2560 星标更新:2025-10-10

项目介绍

<p align="center"> <img height="100" src="https://gips1.baidu.com/it/u=2133452394,3134354526&fm=3081&app=3081&f=PNG?w=4978&h=4945" alt="Trieve Logo"> </p> <p align="center"> <strong><a href="https://dashboard.trieve.ai">注册 (1k 段落免费)</a> | <a href="https://pdf2md.trieve.ai">PDF2MD</a> | <a href="https://docs.trieve.ai">Hacker News 搜索引擎</a> | <a href="https://docs.trieve.ai">文档</a> | <a href="https://cal.com/nick.k/meet">与维护者见面</a> | <a href="https://discord.gg/eBJXXZDB8z">Discord</a> | <a href="https://matrix.to/#/#trieve-general:trieve.ai">Matrix</a> </strong> </p> <p align="center"> <a href="https://github.com/devflowinc/trieve/stargazers"> <img src="https://img.shields.io/github/stars/devflowinc/trieve.svg?style=flat&color=yellow" alt="GitHub Stars"/> </a> <a href="https://discord.gg/CuJVfgZf54"> <img src="https://img.shields.io/discord/1130153053056684123.svg?label=Discord&logo=Discord&colorB=7289da&style=flat" alt="加入 Discord"/> </a> <a href="https://matrix.to/#/#trieve-general:trieve.ai"> <img src="https://img.shields.io/badge/matrix-join-purple?style=flat&logo=matrix&logocolor=white" alt="加入 Matrix"/> </a> <a href="https://smithery.ai/server/trieve-mcp-server"> <img src="https://smithery.ai/badge/trieve-mcp-server" alt="smithery 徽章"/> </a> <a href="https://insiders.vscode.dev/redirect?url=vscode%3Amcp%2Finstall%3F%257B%2522name%2522%253A%2522trieve-mcp-server%2522%252C%2522command%2522%253A%2522npx%2522%252C%2522args%2522%253A%255B%2522more%2520args...%2522%255D%257D"> <img src="https://img.shields.io/badge/vscode-mcp-install?style=flat&logoColor=%230078d4&label=vscode-mcp&labelColor=%230078d4&link=https%3A%2F%2Finsiders.vscode.dev%2Fredirect%3Furl%3Dvscode%253Amcp%252Finstall%253F%25257B%252522name%252522%25253A%252522trieve-mcp-server%252522%25252C%252522command%252522%25253A%252522npx%252522%25252C%252522args%252522%25253A%25255B%252522more%252520args...%252522%25255D%25257D" alt="vscode mcp 安装徽章"/> </a> </p> <h2 align="center"> <b>一站式解决方案:搜索、推荐和RAG</b> </h2> <a href="https://tridge.ai"> <img src="https://gips2.baidu.com/it/u=1049174612,470487271&fm=3081&app=3081&f=WEBP?w=1903&h=1056"> </a>

快速链接

功能

  • 🔒 自托管在您的VPC或本地环境:我们提供了完整的自托管指南,适用于AWS、GCP、Kubernetes以及Docker Compose,详情请参阅我们的文档页面
  • 🧠 语义密集向量搜索:集成OpenAI或Jina嵌入模型和Qdrant,提供语义向量搜索。
  • 🔍 错误容忍全文本/神经搜索:每个上传的段落都会通过naver/efficient-splade-VI-BT-large-query进行向量化处理,以实现错误容忍的高质量神经稀疏向量搜索。
  • 🖊️ 子句高亮:在搜索时高亮匹配的单词或句子,并加粗显示,以增强用户体验。感谢simsearch项目!
  • 🌟 推荐:使用推荐API找到相似的段落(如果使用分组,则为文件)。如果你有一个用户可以收藏、点赞或书签内容的平台,这非常有用。
  • 🤖 方便的RAG API路由:我们集成了OpenRouter,为你提供访问任何你喜欢的LLM用于RAG的权限。尝试我们的完全管理的RAG带主题记忆管理路由或选择自己的上下文RAG
  • 💼 自带模型:如果你想的话,你可以自带文本嵌入、SPLADE、交叉编码重排序和/或大型语言模型(LLM),并将其接入我们的基础设施。
  • 🔄 混合搜索与交叉编码重排序:为了获得最佳结果,请使用BAAI/bge-reranker-large重排序优化的混合搜索。
  • 📆 最近偏置:轻松地使搜索结果偏向最近的内容,防止过时。
  • 🛠️ 可调商品化:使用点击、添加到购物车或引用等信号调整相关性。
  • 🕳️ 过滤:支持日期范围、子字符串匹配、标签、数值和其他类型的过滤。
  • 👥 分组:标记多个段落为同一文件的一部分,并按文件级别搜索,确保顶级结果不会重复出现。

我们缺少了你的用例所需的功能吗? - 请拨打628-222-4090,创建一个Github问题,或加入Matrix社区告诉我们!我们是一个小公司,仍然非常亲力亲为,渴望构建你需要的东西;专业服务可用。

在Linux上进行本地开发

通过Smithery安装

要通过Smithery自动安装Trieve for Claude Desktop:

npx -y @smithery/cli install trive-mcp-server --client claude

Debian/Ubuntu 所需的软件包

sudo apt install curl \
gcc \
g++ \
make \
pkg-config \
python3 \
python3-pip \
libpq-dev \
libssl-dev \
openssl

Arch 所需的软件包

sudo pacman -S base-devel postgresql-libs

安装NodeJS和Yarn

你可以使用其安装脚本安装NVM

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

你应该重启终端以更新带有NVM的bash配置文件。然后,你可以安装NodeJS LTS版本和Yarn。

nvm install --lts
npm install -g yarn

创建服务器临时目录

mkdir server/tmp

安装rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

安装cargo-watch

cargo install cargo-watch

设置环境变量

你可能需要在./frontends中创建analytics目录。

cp .env.analytics ./frontends/analytics/.env
cp .env.chat ./frontends/chat/.env
cp .env.search ./frontends/search/.env
cp .env.example ./server/.env
cp .env.dashboard ./frontends/dashboard/.env

将你的LLM_API_KEY添加到./server/.env

这里有一份获取该密钥的指南

获取密钥后步骤

  1. 打开./server/.env文件。
  2. LLM_API_KEY的值替换为你的OpenAI API密钥。
  3. OPENAI_API_KEY的值替换为你的OpenAI API密钥。

在终端中导出以下密钥用于本地开发

PAGEFIND_CDN_BASE_URLS3_SECRET_KEY_CSVJSONL可以设置为一串随机字符串。

export OPENAI_API_KEY="your_OpenAI_api_key" \
LLM_API_KEY="your_OpenAI_api_key" \
PAGEFIND_CDN_BASE_URL="lZP8X4h0Q5Sj2ZmV,aAmu1W92T6DbFUkJ,DZ5pMvz8P1kKNH0r,QAqwvKh8rI5sPmuW,YMwgsBz7jLfN0oX8" \
S3_SECRET_KEY_CSVJSONL="Gq6wzS3mjC5kL7i4KwexnL3gP8Z1a5Xv,V2c4ZnL0uHqBzFvR2NcN8Pb1g6CjmX9J,TfA1h8LgI5zYkH9A9p7NvWlL0sZzF9p8N,pKr81pLq5n6MkNzT1X09R7Qb0Vn5cFr0d,DzYwz82FQiW6T3u9A4z9h7HLOlJb7L2V1" \
GROQ_API_KEY="GROQ_API_KEY_if_applicable"

启动本地开发所需的docker容器服务

cat .env.chat .env.search .env.server .env.docker-compose > .env

./convenience.sh -l

安装前端包用于本地开发

cd frontends
yarn

cd ..

cd clients/ts-sdk
yarn build

cd ../..

启动本地开发的服务

建议通过tmuxp,详见此处指南或终端标签来管理服务。

cd frontends
yarn
yarn dev
cd server
cargo watch -x run
cd server
cargo run --bin ingestion-worker
cd server
cargo run --bin file-worker
cd server
cargo run --bin delete-worker
cd search
yarn
yarn dev

验证工作设置

在cargo构建完成后(执行tmuxp load trieve之后):

测试交叉编码重排序模型的附加说明

要在本地开发中测试Cross Encoder重排序器,

  • 点击数据集,进入数据集设置 -> 数据集选项 -> 额外选项,并取消选中全文启用选项。
  • 在嵌入设置中,选择你的重排序器模型,并在相邻的文本框中输入相应的密钥,然后保存。
  • 在搜索游乐场中,设置类型 -> 语义,并选择重排序 -> 交叉编码。
  • 如果在嵌入设置中选择了AIMon重排序器,你可以在搜索游乐场中输入可选的任务定义,以指定上下文文档的领域给AIMon重排序器。

调试本地开发的问题

如有需要,请在discord寻求帮助。我们随时准备并乐于助人。

通过获取确切生成的SQL来调试diesel

diesel::debug_query(&query).to_string();

运行评估

评估包加载了一个mcp客户端,然后运行index.ts文件,因此在测试之间无需重新构建。你可以在npx命令前缀中加载环境变量。完整文档可以在这里找到。

OPENAI_API_KEY=your-key  npx mcp-eval evals.ts clients/mcp-server/src/index.ts

用于测试Stripe功能的本地设置

安装Stripe CLI。

  1. stripe login
  2. stripe listen --forward-to localhost:8090/api/stripe/webhook
  3. server/.env中的STRIPE_WEBHOOK_SECRET设置为响应中的webhook签名密钥。
  4. stripe products create --name trieve --default-price-data.unit-amount 1200 --default-price-data.currency usd
  5. stripe plans create --amount=1200 --currency=usd --interval=month --product={来自第3步响应的ID}

贡献者

<a href="https://github.com/devflowinc/tridge/graphs/contributors"> <img alt="贡献者" src="https://contrib.rocks/image?repo=devflowinc/tridge"/> </a>