跳转至

Perplexica 开源 AI 搜索引擎

一句话概述

Perplexica 是一个开源的 AI 搜索引擎,类似于 Perplexity AI 的自托管替代品,它通过 SearXNG 聚合搜索引擎结果,再用 LLM(本地或云端)生成带引用来源的高质量回答,所有数据完全留在你自己的服务器上。

核心知识点表格

知识点说明
项目地址https://github.com/ItzCrazyKns/Perplexica
最新版本v1.12.1(2025年12月)
GitHub Stars33,000+
核心功能AI 搜索引擎 + 带引用回答
搜索后端SearXNG(聚合多个搜索引擎)
LLM 支持Ollama(本地)/ OpenAI / Anthropic / Groq / Google Gemini
许可证MIT
部署方式Docker(一行命令)
类似产品Perplexity AI($20/月)的免费替代

安装与配置

方式一:Docker 一行命令(最简单)

# 一行命令启动 Perplexica(内置 SearXNG)
docker run -d \
  --name perplexica \           # 容器名
  -p 3000:3000 \                # Web 界面端口
  -e OPENAI_API_KEY=sk-xxx \    # OpenAI API Key(如果用 OpenAI)
  itzcrazykns/perplexica:latest  # 官方镜像

方式二:Docker Compose(推荐,完整部署)

# docker-compose.yml
version: '3.8'

services:
  # SearXNG 搜索聚合引擎
  searxng:
    image: searxng/searxng:latest      # SearXNG 镜像
    ports:
      - "4000:8080"                     # SearXNG 端口
    volumes:
      - ./searxng:/etc/searxng          # 配置文件目录
    environment:
      - SEARXNG_BASE_URL=http://searxng:8080  # 内部地址
    restart: unless-stopped

  # Perplexica AI 搜索引擎
  perplexica:
    image: itzcrazykns/perplexica:latest  # Perplexica 镜像
    ports:
      - "3000:3000"                        # Web 界面端口
    environment:
      - SEARXNG_URL=http://searxng:8080    # 指向 SearXNG
      - OPENAI_API_KEY=sk-xxx              # OpenAI Key(可选)
      - OLLAMA_URL=http://host.docker.internal:11434  # 本地 Ollama(可选)
    depends_on:
      - searxng                             # 依赖 SearXNG 先启动
    restart: unless-stopped
# 启动所有服务
docker compose up -d  # -d 后台运行

# 打开浏览器访问
# http://localhost:3000

方式三:配合 Ollama 纯本地运行(完全离线)

# 第一步:确保 Ollama 已安装并运行
ollama serve  # 启动 Ollama 服务

# 第二步:下载一个聊天模型
ollama pull llama3.1:8b  # 下载 Llama 3.1 8B 模型

# 第三步:修改 docker-compose.yml 中的环境变量
# OLLAMA_URL=http://host.docker.internal:11434
# 不设置 OPENAI_API_KEY(这样就完全不用云端 API)

# 第四步:启动 Perplexica
docker compose up -d

# 现在你有了一个完全在本地运行的 AI 搜索引擎!
# 搜索请求 → SearXNG 聚合网页 → Ollama 本地模型生成回答

基本使用

Web 界面操作

1. 打开浏览器访问 http://localhost:3000
2. 在搜索框输入问题(支持中文)
3. 选择搜索模式:
   - Speed Mode(速度模式):快速回答
   - Balanced Mode(平衡模式):日常搜索
   - Quality Mode(质量模式):深度研究
4. 等待搜索结果,回答会附带引用来源
5. 点击引用链接可以查看原始网页

搜索源选择

Perplexica 支持多种搜索源:
- Web:搜索整个互联网
- Discussions:搜索论坛和讨论区
- Academic:搜索学术论文
- 你也可以限定搜索特定网站(如只搜索某个文档站)

上传文件提问

1. 在搜索界面点击文件上传按钮
2. 支持的文件类型:
   - PDF 文档
   - 文本文件
   - 图片
3. 上传后输入问题,Perplexica 会结合文件内容回答

API 调用

import requests  # HTTP 请求库

# Perplexica 提供 API 接口
response = requests.post(
    "http://localhost:3000/api/search",  # 搜索 API
    json={
        "query": "2型糖尿病与肠道菌群的关系",  # 搜索问题
        "mode": "balanced",                      # 搜索模式
        "focus": "web"                            # 搜索源
    }
)

result = response.json()  # 解析 JSON 结果
print(result["answer"])   # 打印 AI 回答
for source in result["sources"]:  # 遍历引用来源
    print(f"- {source['title']}: {source['url']}")  # 打印标题和链接

高级用法

自定义 SearXNG 搜索引擎

# searxng/settings.yml
# 自定义使用哪些搜索引擎

use_default_settings: true  # 使用默认设置作为基础

search:
  formats:
    - html
    - json              # 必须启用 JSON 格式(Perplexica 需要)

engines:
  - name: google         # 启用 Google
    engine: google
    disabled: false
  - name: bing           # 启用 Bing
    engine: bing
    disabled: false
  - name: duckduckgo     # 启用 DuckDuckGo
    engine: duckduckgo
    disabled: false
  - name: baidu          # 如果需要中文搜索,启用百度
    engine: baidu
    disabled: false

域名限定搜索

在 Perplexica 搜索框中使用域名限定:
- site:arxiv.org 宏基因组      → 只搜索 arXiv 论文
- site:github.com snakemake    → 只搜索 GitHub
- site:biostars.org MAGs       → 只搜索 Biostars

部署到 Railway(云端一键部署)

# Railway 提供一键部署 Perplexica 的模板
# 访问 https://railway.com/deploy/perplexica-ai-search

# 优点:
# - 不需要自己的服务器
# - 自动配置 HTTPS
# - 无速率限制
# - 完全控制 AI 模型选择

常见报错与解决

报错信息原因解决方法
SearXNG connection refusedSearXNG 未启动确认 SearXNG 容器在运行:docker ps
No search resultsSearXNG JSON 格式未启用在 settings.yml 中添加 json 到 formats
LLM API errorAPI Key 无效或模型不可用检查 API Key 和模型名是否正确
Ollama connection failedOllama 地址配置错误Docker 内访问宿主机用 host.docker.internal
回答不包含引用搜索引擎未返回结果检查 SearXNG 是否正常工作,尝试直接访问 SearXNG 搜索
页面加载缓慢本地模型推理速度慢使用 GPU 加速的 Ollama 或切换到云端 API

速查表

# === Perplexica 常用操作速查 ===

# Docker Compose 启动
docker compose up -d

# 查看日志
docker compose logs -f perplexica

# 停止服务
docker compose down

# 重启服务
docker compose restart

# Web 界面
# http://localhost:3000

# SearXNG 界面(独立使用)
# http://localhost:4000

# 搜索模式
# Speed —— 快速回答(适合简单问题)
# Balanced —— 平衡模式(日常使用)
# Quality —— 深度研究(复杂问题)

与同类工具对比

特性PerplexicaPerplexity AI传统搜索引擎ChatGPT + 联网
价格免费开源$20/月(Pro)免费$20/月
数据隐私完全自控数据在云端被追踪数据在 OpenAI
自托管支持不支持不适用不支持
本地 LLM支持(Ollama)不支持不适用不支持
引用来源有有有(链接)有
搜索质量依赖 SearXNG很好很好好
上手难度需要 Docker开箱即用开箱即用开箱即用

选择建议:如果你注重隐私且有技术能力部署 Docker,Perplexica 是 Perplexity AI 的完美免费替代品。配合 Ollama 可以实现完全离线的 AI 搜索。