跳转至

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 中添加 jsonformats
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 搜索。