PrivateGPT 2026:完全离线的文档对话专家

100% 隐私保护,数据不出本地。用 PrivateGPT 搭建你的企业级安全知识库。

在这个 AI 时代,数据隐私是企业和个人最关心的问题。PrivateGPT 就像它的名字一样,主打”绝对隐私”。

不同于 ChatPDF 或其他在线文档分析工具,PrivateGPT 可以在没有任何网络连接的情况下运行。你的财务报表、法律合同、医疗记录,所有敏感数据都只停留在你的硬盘里,没有任何人——包括 AI 供应商——能看到。

什么是 PrivateGPT?

PrivateGPT 是一个生产级的 AI 项目,它提供了一整套 API 和精美的 UI,让你能够与你的私有文档进行对话。

2026 年版本亮点:

  • 架构重构:基于 LlamaIndex 进行了深度重构,扩展性更强。
  • 混合模式:不仅支持本地模型(Ollama/LlamaCpp),也支持连接 OpenAI/Azure(如果你不在意隐私,想换取更强的推理能力)。
  • 极速索引:文档解析和向量化速度提升了 300%。

核心特性

  1. Ingest API: 强大的文档摄入系统,支持 PDF, CSV, DOCX, EPUB, PPTX 等几乎所有格式。
  2. Context-aware Chat: 真正的带上下文对话,而不仅是一次性问答。
  3. High-level API: 开发者友好的接口,只需几行代码就能把 RAG 能力集成到你的 App 里。

安装指南

PrivateGPT 推荐使用 Poetry 进行依赖管理。

1. 准备环境

你需要 Python 3.11。

# 安装 Poetry (如果还没有)
curl -sSL https://install.python-poetry.org | python3 -

# 克隆仓库
git clone https://github.com/zylon-ai/private-gpt
cd private-gpt

2. 安装依赖

PrivateGPT 支持多种”Extras”,这里我们安装支持本地 Ollama 的版本。

poetry install --extras "ui llms-ollama embeddings-ollama vector-stores-qdrant"

3. 配置本地模型

你需要先运行 Ollama,并下载模型:

ollama pull llama3
ollama pull nomic-embed-text

然后修改 settings-ollama.yaml 文件(或者设置环境变量):

llm:
  mode: ollama
  ollama:
    base_url: http://localhost:11434
    model: llama3

embedding:
  mode: ollama
  ollama:
    base_url: http://localhost:11434
    model: nomic-embed-text

4. 运行

PGPT_PROFILES=ollama poetry run python -m private_gpt

打开浏览器访问 http://localhost:8001,你会看到一个极简的聊天界面。

实战体验

”拷问” 你的文档

  1. 在左侧边栏,点击 “Upload Files”,选择几份 PDF。
  2. 等待 “Ingesting” 进度条完成。
  3. 把模式切换为 “Query Documents”
  4. 提问:“这几份文档的核心冲突是什么?”

你会惊讶于它的精准度,而且它会列出每一个观点的来源引用(Source Context),你可以点击查看原文,确保 AI 没有胡编乱造。

开发者指南:API 调用

PrivateGPT 不仅仅是个 UI,它更是一个后端服务。 启动服务后,访问 http://localhost:8001/docs 可以看到 Swagger 文档。

Python 调用示例:

import requests

# 1. 上传文档
file = {'file': open('contract.pdf', 'rb')}
requests.post('http://localhost:8001/v1/ingest/file', files=file)

# 2. 聊天
payload = {
  "messages": [{"role": "user", "content": "合同里的违约金是多少?"}],
  "use_context": True
}
response = requests.post('http://localhost:8001/v1/chat/completions', json=payload)
print(response.json()['choices'][0]['message']['content'])

适用场景

  • 律所/医院:处理高度敏感的案件或病历。
  • 离线环境:在潜艇、矿井等无网环境部署 AI 助手。
  • 个人知识库:整理自己多年的笔记和电子书,构建 “第二大脑”。

PrivateGPT 证明了:便捷的 AI 体验和极致的数据隐私,两者可以兼得。