• 开源AI搜索平台Search4All


    在这里插入图片描述

    什么是 Search4All ?

    Search4All 是个人 AI 搜索协助工具,是 Perplexity 的开源替代品。能让你的 LLM API 支持联网,搜索、新闻、网页总结,

    软件特点:

    • 集成对 LLM 的支持,例如 OpenAIGroqClaude
    • 本机搜索引擎集成,包括 GoogleBingDuckDuckGoSearXNG
    • 可定制的、视觉上吸引人的用户界面。
    • 可共享和缓存的搜索结果以提高效率。

    从功能上看,和老苏之前介绍的 FreeAskInternet 差不多,区别就在于 Search4All搜索引擎的支持更多一点

    准备工作

    软件的安装比较简单,如果你之前已经单独安装过 SearXNG,那么只要安装 Search4All 即可,图形化安装和 docker cli 都只是安装了 Search4All

    如果之前没有独立安装过 SearXNGdocker-compose 则展示了一体化安装,可以根据需要跳转到相应的章节

    虽然安装简单,但涉及到的知识点比较多

    关于 LLM ,还是使用了 One API 管理的 kimi

    文章传送门:

    关于 SearXNG 可能遇到的权限和超时等问题,可以参考 FreeAskInternet 的相关部分

    文章传送门:

    接下来进入我们今天的正题

    安装

    在群晖上以 Docker 方式安装。

    图形化安装

    在注册表中搜索 search4all ,选择第一个 fatwang2/search4all,版本选择 latest

    本文写作时, latest 版本对应为 v0.1.0

    端口

    本地端口不冲突就行,不确定的话可以用命令查一下

    # 查看端口占用
    netstat -tunlp | grep 端口号
    
    本地端口容器端口
    80628800

    环境

    可变
    OPENAI_API_KEYOpenAI 帐户页面上申请的 API Key
    OPENAI_BASE_URL默认的 OpenAI API 请求 BASE URL
    LLM_MODEL要使用的模型,支持 openaigroqclaude 所有聊天模型
    RELATED_QUESTIONS显示相关问题
    BACKEND想要的搜索服务,支持 SEARCH1API,BING,GOOGLE,SERPER,SEARCHAPI,SEARXNG
    SEARXNG_BASE_URLBACKENDSEARXNG 时,托管的 serxng 服务器地址

    因为没有 OpenAI API Key,所以我们这里使用了 OpenAI 接口代理,也就是 One API 的相关设置参数来模拟

    • OPENAI_API_KEYOne API 中的令牌;
    • OPENAI_BASE_URLOne API 的局域网地址;
    • LLM_MODEL:选择了 kimi
    • RELATED_QUESTIONS:选择了 1,用于显示相关问题;
    • BACKEND:选择了基于本地部署的 SEARXNG
    • SEARXNG_BASE_URL:填入 SEARXNG 的地址;

    这些参数基本上都已经有了,需要下来一个一个找到并填写值

    只有 SEARXNG_BASE_URL 需要自己添加

    更多的环境变量,请参考官方文档的说明:https://github.com/fatwang2/search4all#environment-variable

    docker cli安装

    如果你熟悉命令行,可能用 docker cli 更快捷

    # 运行容器
    docker run -d \
       --name search4all \
       --restart unless-stopped \
       -p 8062:8800 \
       -e OPENAI_API_KEY=sk-bn6M52bOfdxYB3n2Ee717eA2C66b45318f1c95E4D9553d94 \
       -e OPENAI_BASE_URL=http://192.168.0.197:3033/v1 \
       -e LLM_MODEL=kimi \
       -e RELATED_QUESTIONS=1 \
       -e BACKEND=SEARXNG \
       -e SEARXNG_BASE_URL=http://192.168.0.197:8061 \
       fatwang2/search4all
    

    docker-compose 安装

    也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

    这里包含了 SearXNG ,适合未独立安装 SearXNG 的用户

    version: '3'
    
    services:
      search4all:
        image: fatwang2/search4all
        container_name: search4all_web
        restart: unless-stopped
        ports:
          - 8062:8800
        environment:
          OPENAI_API_KEY: sk-bn6M52bOfdxYB3n2Ee717eA2C66b45318f1c95E4D9553d94
          OPENAI_BASE_URL: http://192.168.0.197:3033/v1
          LLM_MODEL: kimi
          RELATED_QUESTIONS: 1
          # Change your search provider name here, if use another different provider
          BACKEND: SEARXNG
          # Set your hosted serxng server address. it is required when the BACKEND is SEARXNG
          SEARXNG_BASE_URL: http://searxng:8080
    
      searxng:
        image: searxng/searxng:latest
        container_name: search4all_searxng
        # ports:
        #  - "8061:8080"
        volumes:
          - ./data:/etc/searxng:rw
        cap_drop:
          - ALL
        cap_add:
          - CHOWN
          - SETGID
          - SETUID
        logging:
          driver: 'json-file'
          options:
            max-size: '1m'
            max-file: '1'
        restart: always
    

    然后执行下面的命令

    # 新建文件夹 search4all 和 子目录
    mkdir -p /volume1/docker/search4all/data
    
    # 进入 search4all 目录
    cd /volume1/docker/search4all
    
    # 将 docker-compose.yml 放入当前目录
    
    # 一键启动
    docker-compose up -d
    

    运行

    在浏览器中输入 http://群晖IP:8062 就能看到搜索界面

    随便搜一个

    看看天气

    看看奖牌🏅

    对比直接在 SearXNG 中的搜索结果

    【风险提示】:大语言模型提供的答案,准确性是基于搜索引擎返回的结果,所以需要自己核实正确性

    参考文档

    fatwang2/search4all: Personal AI search copilot, open-source Perplexity
    地址:https://github.com/fatwang2/search4all

    Search4All
    地址:https://search2ai.one/

    free gpt 3.5 api配合 Search4All 实现联网回答 - 常规话题 / 人工智能 - LINUX DO
    地址:https://linux.do/t/topic/54134

  • 相关阅读:
    Promethus+node_exporter集群部署监控
    UT_hash实现增删改查
    【HEC-RAS】模型不稳定故障排除技巧(一)
    一文了解MySQL中的多版本并发控制
    redis 队列
    深度解析 集成运放 原理与运用
    天振股份上市首日破发:市值蒸发约8亿元,方庆华夫妇为实控人
    【C/PTA】数组进阶练习(一)
    【RocketMQ】NameServer总结
    Fresco 图片框架简单使用
  • 原文地址:https://blog.csdn.net/wbsu2004/article/details/141052631