使用open-webui+deepseek构建本地AI知识库

序

本文主要研究一下如何使用OpenWebUI+deepseek构建本地AI知识库

步骤

拉取open-webui镜像

复制代码
docker pull ghcr.io/open-webui/open-webui:main

docker启动

复制代码
docker run -d -p 3000:8080 \
-e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
ghcr.io/open-webui/open-webui:main

执行完之后等一会(大概要三四分钟)启动起来了访问http://localhost:3000/,注册管理员账号,注册完要等一会(估计要七八分钟)页面才出来

可以-v ./open-webui-data:/app/backend/data来挂载数据

看日志是有报错

复制代码
ERROR [open_webui.routers.openai] Connection error: Cannot connect to host api.openai.com:443 ssl:default [Connect call failed ('108.160.165.173', 443)]
ERROR [open_webui.routers.openai] Connection error: Cannot connect to host api.openai.com:443 ssl:default [Connect call failed ('108.160.165.173', 443)]
ERROR [open_webui.routers.openai] Connection error: Cannot connect to host api.openai.com:443 ssl:default [Connect call failed ('108.160.165.173', 443)]
ERROR [open_webui.routers.openai] Connection error: Cannot connect to host api.openai.com:443 ssl:default [Connect call failed ('108.160.165.173', 443)]
INFO  [open_webui.routers.ollama] get_all_models()
INFO  [open_webui.routers.ollama] get_all_models()
INFO  [open_webui.routers.ollama] get_all_models()
INFO  [open_webui.routers.ollama] get_all_models()

登录之后,设置 --> 管理员设置 --> 外部链接,禁用掉OpenAI API,记得保存

开启联网搜索

在设置 --> 管理员设置 --> 联网搜索 --> 启用,然后下拉选择,这里选择tavily,可以去https://app.tavily.com/注册然后获取api key,最后点击保存就可以了

示例:今天日期是多少,看open-webui输出

复制代码
INFO  [open_webui.routers.retrieval] save_docs_to_vector_db: document 在线时钟:当前时间, 世界时钟 :: 美国 (United States) - 当前时间, 今天日期, ä>>Šå¤©çš„æ---¥æœŸ 🇨🇳, 现在北京时间 在线标准北京时间校对 web-search-d8b3e7117d85062f511572e3004ad60997448e8ed9e9b7e3bac5
INFO  [open_webui.routers.retrieval] adding to collection web-search-d8b3e7117d85062f511572e3004ad60997448e8ed9e9b7e3bac5
/pytorch/third_party/ideep/mkl-dnn/src/cpu/aarch64/xbyak_aarch64/src/util_impl_linux.h, 451: Can't read MIDR_EL1 sysfs entry
INFO  [open_webui.retrieval.utils] query_doc:result [['7ee3e76c-7804-4eb7-8dbb-7ca27b0a54ca', 'ef5b7e5c-8a7e-4220-800e-9390e9808034', '97e23c2b-43f7-457a-a086-8b264acb90e8']] [[{'description': '世界时间 - 美国 (United States) - 现在世界各地是什么时间?', 'embedding_config': '{"engine": "", "model": "sentence-transformers/all-MiniLM-L6-v2"}', 'language': 'zh', 'source': 'https://24timezones.com/美国/时间', 'start_index': 3508, 'title': '世界时钟 :: 美国 (United States) - 当前时间'}, {'description': '根據您所在的位置找出今天是什麼日期。了解格式為 mm-dd-yyyy 的確切數字日期。', 'embedding_config': '{"engine": "", "model": "sentence-transformers/all-MiniLM-L6-v2"}', 'language': 'zh', 'source': 'https://thetimecalculator.org/zh/today-date', 'start_index': 1773, 'title': '今天日期'}, {'description': '世界时间 - 美国 (United States) - 现在世界各地是什么时间?', 'embedding_config': '{"engine": "", "model": "sentence-transformers/all-MiniLM-L6-v2"}', 'language': 'zh', 'source': 'https://24timezones.com/美国/时间', 'start_index': 2775, 'title': '世界时钟 :: 美国 (United States) - 当前时间'}]]

结果如下:

根据上下文中的信息,今天的日期是 星期一, 二月 17, 2025 source_id=1。

知识库管理

  • 设置 --> 管理员设置 --> 文档 --> 语义向量模型引擎 改为ollama, 语义向量模型改为bge-m3:latest
  • 工作空间 --> 知识库,点击+号上传文档
  • 使用时需要在聊天框通过#来指定知识库
  • 设置 --> 管理员设置 --> 数据库 --> 下载数据库,可以导出sqlite数据

小结

整体体验是docker部署起来,页面展示有点慢,联网搜索一开始选择serply不生效,换成tavily可以生效,但是国内的搜索引擎还不支持。对于知识库方面,可以上传文档和目录,聊天窗口可以指定使用哪个知识库,也可以同时开启联网搜索,整体效果还可以,可以同时引用知识库和搜索引擎的检索结果,看日志还会保存到向量数据库(save_docs_to_vector_db)。

doc

相关推荐
围炉聊科技25 分钟前
MCP 里的 SSRF:为什么“让 Agent 取什么就取什么”如此危险——智能体基建系列
人工智能
无障碍研究院34 分钟前
2026TADC|李庆阳:探讨科技无障碍实践与行动经验
人工智能
workflower36 分钟前
Agentic AI 时代的企业ICT 基础设施运维
运维·人工智能·机器学习·重构·云计算·汽车
szxinmai主板定制专家44 分钟前
ZYNQ 数据采集方案踩坑总结:电力强电磁干扰、工业现场多协议适配优化
运维·人工智能·fpga开发·机器人·zynq
goujunwe1 小时前
短视频怎么做 GEO:优化字幕和文稿,提升 AI 文本抓取采信率
大数据·人工智能·音视频
yunfengzhineng1 小时前
天津立体库货架配套厂家
大数据·运维·人工智能·python
天天代码码天天1 小时前
孩子画的小人,真的动起来了!我做了一个手绘动画小工具
人工智能
救救孩子把1 小时前
AI面试八股文-13_12-AI 框架与运维面试题
运维·人工智能·面试
德林恩宝2 小时前
On-Policy Distillation(OPD)学习文档
人工智能·学习·机器学习·大模型·llm·大模型微调
Highcharts.js2 小时前
Highcharts 发布16项最新安全公告
人工智能·安全·性能优化·highcharts·可视化图表