DeepSearcher: 私有数据上智能搜索和分析

GitHubhttps://github.com/zilliztech/deep-searcher

更多AI开源软件:发现分享好用的AI工具、AI开源软件、AI模型、AI变现 - 小众AI

DeepSearcher 结合推理 LLM(OpenAI o1、o3-mini、DeepSeek、Grok 3、Claude 3.7 Sonnet 等)和向量数据库(Milvus、Zilliz Cloud 等),基于私有数据进行搜索、评估和推理,提供高度准确的答案和全面的报告。本项目适用于企业知识管理、智能问答系统、信息检索场景。

主要功能

  • 私有数据搜索:在保证数据安全的同时,最大化利用企业内部数据。必要时,它可以集成在线内容以获得更准确的答案。
  • Vector Database Management:支持 Milvus 和其他 Vector 数据库,允许数据分区以实现高效检索。
  • 灵活的嵌入选项:与多种嵌入模型兼容,以实现最佳选择。
  • 多个 LLM 支持:支持 DeepSeek、OpenAI 和其他大型模型,用于智能问答和内容生成。
  • Document Loader:支持本地文件加载,Web 爬虫功能正在开发中。

安装和使用

使用 pip 安装 DeepSearcher:
# Clone the repository
git clone https://github.com/zilliztech/deep-searcher.git

# MAKE SURE the python version is greater than or equal to 3.10
# Recommended: Create a Python virtual environment
cd deep-searcher
python3 -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install -e .

在环境变量中准备。如果您在配置中更改了 LLM,请务必准备相应的 API 密钥。OPENAI_API_KEY​

使用

from deepsearcher.configuration import Configuration, init_config
from deepsearcher.online_query import query

config = Configuration()

# Customize your config here,
# more configuration see the Configuration Details section below.
config.set_provider_config("llm", "OpenAI", {"model": "o1-mini"})
config.set_provider_config("embedding", "OpenAIEmbedding", {"model": "text-embedding-ada-002"})
init_config(config = config)

# Load your local data
from deepsearcher.offline_loading import load_from_local_files
load_from_local_files(paths_or_directory=your_local_path)

# (Optional) Load from web crawling (`FIRECRAWL_API_KEY` env variable required)
from deepsearcher.offline_loading import load_from_website
load_from_website(urls=website_url)

# Query
result = query("Write a report about xxx.") # Your question here
详细配置:
  • LLM 配置
config.set_provider_config("llm", "(LLMName)", "(Arguments dict)")

“LLMName” 可以是以下之一:[“DeepSeek”, “OpenAI”, “XAI”, “SiliconFlow”, “PPIO”, “TogetherAI”, “Gemini”, “Ollama”]

  • 嵌入模型配置
config.set_provider_config("embedding", "(EmbeddingModelName)", "(Arguments dict)")

“EmbeddingModelName” 可以是以下之一: [“MilvusEmbedding”, “OpenAIEmbedding”, “VoyageEmbedding”, “SiliconflowEmbedding”]

  • Vector 数据库配置
config.set_provider_config("vector_db", "(VectorDBName)", "(Arguments dict)")

“VectorDBName” 可以是以下之一:[“Milvus”] (开发中)。“Arguments dict” 是一个字典,其中包含 Vector Database 类的必要参数。

  • File Loader 配置
config.set_provider_config("file_loader", "(FileLoaderName)", "(Arguments dict)")

“FileLoaderName” 可以是以下之一: [“PDFLoader”, “TextLoader”, “UnstructuredLoader”]

“Arguments dict” 是一个字典,其中包含 File Loader 类的必要参数。

  • Web 爬虫配置
config.set_provider_config("web_crawler", "(WebCrawlerName)", "(Arguments dict)")

“WebCrawlerName” 可以是以下之一: [“FireCrawlCrawler”, “Crawl4AICrawler”, “JinaCrawler”]

“Arguments dict” 是一个字典,其中包含 Web Crawler 类的必要参数。

部署

配置模块

您可以通过修改 config.yaml 来配置所有参数,以使用默认模块设置您的系统。 例如,在 YAML 文件的部分中设置 u。OPENAI_API_KEYllm​

开始服务

主脚本将运行默认地址的 FastAPI 服务。localhost:8000​

$ python main.py
通过浏览器访问

您可以在浏览器中打开 url http://localhost:8000/docs 以访问 Web 服务。 点击 “Try it out” 按钮,它允许您填写参数并直接与 API 交互。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值