news 2026/8/7 7:40:25

在 WSL Ubuntu 中搭建 Biomni + DeepSeek + Open WebUI

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在 WSL Ubuntu 中搭建 Biomni + DeepSeek + Open WebUI

在 WSL Ubuntu 中搭建 Biomni + DeepSeek + Open WebUI

更新:2026.8.6,统一环境名为biomni_e1
环境:Windows + WSL Ubuntu 22.04
目标:在 Windows 浏览器中,用类似 ChatGPT 的界面调用 Biomni A1,并使用 DeepSeek 作为后端大模型。

Biomni 能做什么

Biomni 是一个面向生物医学研究的 AI agent。它和普通聊天模型最大的区别是:普通模型主要负责“回答”,而 Biomni 会尝试把问题拆成可执行的生物医学任务,再结合工具、数据库和文献检索来完成分析。

它适合的场景包括:

文献和数据库检索 基因、蛋白、药物、疾病相关信息整理 候选基因或候选蛋白分析 蛋白互作和分子对接任务规划 RNA-seq、单细胞、微生物等生信分析流程规划 调用本地或在线生物信息学工具
datalake = Biomni 自带数据/知识库 E1 = 生物信息学软件工具箱 + Python/R 包 + CLI 工具 A1 = Biomni agent DeepSeek = A1 背后的 LLM 大脑

这次实际测试中,我让 Biomni 分析细菌蛋白与靶蛋白的蛋白对接预测思路。它会先判断任务类型,再检索 HDOCK、ClusPro 等在线服务,结合候选蛋白信息给出排序和后续提交建议。整体感觉是速度比普通聊天慢,但处理流程更像一个生物医学分析助手,而不是只生成一段泛泛解释。

最终架构

Windows 浏览器 ↓ Open WebUI ↓ OpenAI-compatible API 本地 Biomni adapter ↓ Biomni A1 + DeepSeek API

核心概念:

A1 = Biomni agent,负责理解任务、规划步骤、调用工具 DeepSeek = A1 背后的 LLM 大脑,负责语言理解和推理生成 datalake = Biomni 自带数据/知识库,用于增强检索和生物医学背景信息 E1 = 生物信息学软件工具箱,包含 Python/R 包和常用 CLI 工具

简单理解:

A1 负责“怎么做” DeepSeek 负责“怎么想和怎么写” datalake 提供“查什么资料” E1 提供“用什么工具执行”

模型分工:

deepseek-fast 普通聊天、PDF 问答、文档总结 biomni-deepseek Biomni A1 agent 任务、生物医学工具调用、datalake 检索

本次私人定制修改

这套方案不是纯官方 Biomni 安装,而是在官方 Biomni A1 之外做了几处本机定制:

  1. 增加了 OpenAI-compatible adapter
    用 FastAPI 写了一个本地接口,把 Biomni A1 包装成 Open WebUI 能识别的 OpenAI API。

  2. 增加了两个模型入口
    biomni-deepseek走 Biomni A1,适合 agent 任务;deepseek-fast直接调用 DeepSeek,适合普通聊天和 PDF。

  3. 创建了 Open WebUI 的交互界面
    仿照ChatGPT,创建了 Open WebUI 的交互界面,使用起来更方便。

  4. 增加了 Open WebUI 文件上传 embedding 接口
    adapter 提供了轻量/v1/embeddings,让 Open WebUI 文件上传流程可以先跑通,不必首次启动就下载 HuggingFace embedding 模型。

  5. 增加了 Biomni 运行进度输出
    biomni-deepseek会把 Biomni 的工具日志筛选后以 SSE 流式返回,例如StatusProgress,避免长任务看起来像卡死。

  6. 屏蔽 Biomni 配置打印中的 API key
    本机安装包里对 Biomni A1 的配置输出做了脱敏处理,避免启动时把 DeepSeek API key 明文打印到终端。

  7. 增加了 Windows 一键启动脚本
    .bat.ps1脚本同时启动 WSL 内的 Biomni adapter 和 Open WebUI,浏览器直接访问http://localhost:8080

本次实际使用情况

安装和调试完成后,我用biomni-deepseek做了一次蛋白相互作用相关测试:让 Biomni 帮助分析细菌的蛋白是否能与某个蛋白进行互作,然后挑选排名靠前的候选蛋白使用 HDOCK 在线服务进行分子对接预测。

这次测试里,Biomni 的处理过程大致包括:

1. 识别任务类型:蛋白-蛋白分子对接预测 2. 检索 HDOCK / ClusPro 相关在线服务和提交方式 3. 分析本地提供的候选蛋白文件和靶标蛋白信息 4. 给出候选互作蛋白排序 5. 尝试规划后续在线对接提交路径 6. 在 Open WebUI 中持续显示 Status / Progress 运行状态

从 DeepSeek 控制台看到,当天安装调试加上这次蛋白对接分析测试,总消耗大约是:

消费金额:¥1.12 CNY API 请求次数:197 Tokens:3,574,930

个人感觉这个消耗比较大。这个成本只代表当天这一次安装调试和测试任务,不代表固定价格。实际费用会随模型、上下文长度、文件大小、调用次数和 Biomni 工具流程变化。

主观体验上,biomni-deepseek比普通聊天模型慢很多,但处理过程比较合理。它不是直接给一个泛泛回答,而是会先拆解任务、检索资源、分析蛋白信息,再给出候选对象和后续对接建议。对于这类生物医学 agent 任务,慢是可以接受的;但普通 PDF 问答和日常聊天没有必要走 Biomni,直接选deepseek-fast更合适,或者直接在deepseek官网。

推荐实施方式

想尝试 Biomni 的人,想来多数本来就熟悉 Linux、conda、Python 包管理和本地 agent。因此后面的安装与调试不再逐行列命令。更合适的方式是:把目标、约束和验收标准写清楚,然后交给本地 agent 执行。Ubuntu 22.04 的环境可能比较合适。

下面这份提示词可以直接给 Codex、Claude Code、Cursor、OpenHands 或其他本地 agent 使用。

安装与调试提示词

你是我的本地工程助手。请在 Windows + WSL Ubuntu 22.04 环境中,帮我搭建 Biomni + DeepSeek + Open WebUI。 目标: 1. 参考https://github.com/snap-stanford/biomni,在 WSL 中安装 Biomni A1。 2. 使用 DeepSeek API 作为 Biomni A1 背后的 LLM。 3. 不使用 Docker,使用 pip 版 Open WebUI。 4. 在 Windows 浏览器中通过 http://localhost:8080 使用。 5. 提供两个模型: - deepseek-fast:直连 DeepSeek,用于普通聊天、PDF 问答、文档总结。 - biomni-deepseek:调用 Biomni A1,用于生物医学 agent 任务。 6. 支持 Open WebUI 文件上传流程。 7. biomni-deepseek 长任务要显示 Status / Progress 运行进度。 8. 不要在终端或日志中明文打印 DeepSeek API key。 关键要求: 1. Biomni 安装在 conda 环境 biomni_e1,Python 版本使用 3.11。 2. Open WebUI 安装在单独 conda 环境 openwebui。 3. conda 环境必须禁用 ~/.local 用户 site-packages 污染。 4. Biomni 不要使用 pip install -e .,直接从 GitHub main 普通安装。 5. DeepSeek 通过 OpenAI-compatible 方式调用,base_url 使用 https://api.deepseek.com。 6. 本地 adapter 使用 FastAPI,提供: - GET /health - GET /v1/models - POST /v1/chat/completions - POST /v1/embeddings 7. /v1/models 至少返回 biomni-deepseek 和 deepseek-fast。 8. deepseek-fast 不能调用 Biomni,必须直接请求 DeepSeek。 9. biomni-deepseek 才调用 Biomni A1。 10. embedding 可以先用轻量本地实现,只要能让 Open WebUI 文件上传流程跑通。 需要生成的本地文件: 1. biomni_openai_api.py - FastAPI adapter。 - 兼容 OpenAI chat completions。 - 支持 streaming SSE。 - biomni-deepseek 输出可审计运行进度,不输出隐藏思维链。 - deepseek-fast 直连 DeepSeek。 - 提供轻量 embedding endpoint。 2. Start Biomni OpenWebUI.bat - Windows 一键启动入口。 3. Start-BiomniOpenWebUI.ps1 - Windows 主启动脚本。 4. start_biomni_api_wsl.sh - 在 WSL 中启动 Biomni adapter。 5. start_openwebui_wsl.sh - 在 WSL 中启动 Open WebUI。 验收标准: 1. python -c "from biomni.agent import A1; print('Biomni import OK')" 成功。 2. DeepSeek API 测试能返回 OK。 3. http://localhost:8008/health 返回 ok。 4. http://localhost:8008/v1/models 返回 biomni-deepseek 和 deepseek-fast。 5. Open WebUI 能在 http://localhost:8080 打开。 6. Open WebUI 中能选择 deepseek-fast 和 biomni-deepseek。 7. deepseek-fast 能快速回答普通问题。 8. biomni-deepseek 能调用 Biomni A1,并在长任务中显示 Status / Progress。 9. 上传 PDF 后,使用 deepseek-fast 可以进行文档问答。 10. 任何日志和终端输出都不能泄露完整 API key。 请按最小可行方案实现,不要引入不必要的复杂依赖。每完成一个阶段都运行验证命令,并把结果告诉我。

datalake 下载提示词

Biomni A1 不下载 datalake 也能运行,但能力不完整。需要完整知识库时,再下载 datalake。下载时关闭梯子,否则总是出现”下载中断“,影响完整度。

可以把下面这段交给本地 agent:

请帮我下载 Biomni datalake,并做完整性验证。 要求: 1. 使用已配置好的 biomni conda 环境。 2. 下载目录使用 ~/biomni_runs/data。 3. 通过 Biomni A1 的默认 datalake 下载逻辑获取数据。 4. 下载过程允许断点后重新运行。 5. 不要只看下载脚本最后是否打印 complete。 6. 下载后写一个 verify_biomni_datalake.py,检查预期文件数量、已存在文件数量和缺失文件列表。 7. 如果部分文件因为 IncompleteRead 或网络中断没有下载完整,请重新补齐。 验收标准: 1. Expected files 显示 76。 2. Present files 显示 76。 3. Missing files 显示 0。 4. 输出 Datalake looks complete。 5. 数据目录大小合理,约十几 GB。

E1 安装提示词

E1 是 Biomni 的完整本地工具环境。它不是 datalake,而是生物信息学软件工具箱,包含 Python/R 包和常用 CLI 工具。官方提示安装时间超过 10 小时,并且需要至少 30 GB 磁盘空间。

建议先确认 A1 + DeepSeek + Open WebUI + datalake 正常,再安装 E1。

可以把下面这段交给本地 agent:

请帮我在 WSL Ubuntu 中补充安装 Biomni E1 环境。 要求: 1. 按 Biomni 官方说明在 biomni_e1 环境将e1补充完整。 2. 安装前检查磁盘空间,至少预留 30 GB。 3. 安装过程放到后台运行,日志写入 /tmp/biomni_e1_setup.log。 4. 提供 Windows 侧启动脚本和日志查看脚本。 5. shell 中要正确 source conda.sh,避免非交互 shell 找不到 conda。 6. 不要重复创建同名环境,遇到已有 biomni_e1 时先检查安装状态。 7. 当安装时出现报错,就先跳过,最后提示一下哪些是失败的,询问是否要解决这些失败项。 验收标准: 9. conda env list 能看到 biomni_e1。 10. setup.sh 没有异常退出。 11. 常用生信 CLI 工具可调用。 12. Python/R 相关生信包能在 biomni_e1 中导入。 13. 日志中没有未处理的安装失败。

E1 适合做更完整的本地生信任务,例如:

RNA-seq single-cell RNA-seq microbiome genomics variant analysis pathway analysis protein and structure workflows

本地大型文件怎么处理

Open WebUI 的文件上传适合 PDF、txt、docx 这类文档问答,不适合 FASTQ、BAM、VCF、count matrix 这类大型生信文件。

大型数据建议放在 WSL 本地路径中,然后在对话里把路径告诉 Biomni:

我的 RNA-seq 数据在 /home/xxx/projects/project1/raw_data/ 样本信息表在 /home/xxx/projects/project1/metadata/samples.csv 请检查数据结构,规划 QC、比对或定量、差异分析和结果汇总流程。

推荐目录结构:

/home/xxx/projects/project_name/ raw_data/ metadata/ results/ logs/

日常使用

启动入口:

Start Biomni OpenWebUI.bat

浏览器访问:

http://localhost:8080

模型选择:

普通聊天 / PDF / 文档总结: deepseek-fast Biomni agent / 生物医学工具调用 / datalake 检索: biomni-deepseek

成本上也建议这样分流。biomni-deepseek会做任务拆解、检索和工具调用,token 消耗明显高于普通聊天;deepseek-fast更适合低成本、高频率的日常问答。

最终组合

Windows 浏览器 + Open WebUI + DeepSeek API + Biomni A1 + Biomni datalake + 可选 Biomni E1

这套方案的重点不是把 Biomni 当成普通聊天模型,而是把它作为一个可以规划、检索、调用工具的生物医学 agent。普通问题走deepseek-fast,真正需要生物医学任务拆解和工具链时再走biomni-deepseek。大家还可以利用codex等agent再私人定制一下,让它使用起来更加好用。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/7 7:35:05

LlamaFactory大模型微调超参数实战指南:从原理到调优避坑

1. 项目概述:为什么你需要这份超参数指南 如果你正在尝试用LlamaFactory微调大模型,却感觉像在开盲盒——参数调来调去,训练结果时好时坏,甚至动不动就OOM(内存溢出)或者训出一堆“废话文学”,那…

作者头像 李华
网站建设 2026/8/7 7:32:01

ABB机器人OPC UA通信实战:从环境配置到Python客户端开发

1. 项目缘起:为什么工业现场需要OPC UA? 如果你在工厂里搞过自动化,尤其是用过ABB机器人,大概率遇到过这样的场景:产线主管想实时看到机器人的运行状态、产量数据,或者MES系统需要下发新的生产指令。这时候…

作者头像 李华
网站建设 2026/8/7 7:29:32

UE5安装Meta XR插件:连接Quest 3的完整指南与避坑实践

1. 项目概述:为UE5引擎注入VR开发能力 如果你正在用虚幻引擎5(UE5)开发项目,并且手头有一台Meta Quest 3,那么将两者连接起来,在VR中实时预览和测试你的场景,几乎是必经之路。这个连接的核心桥梁…

作者头像 李华
网站建设 2026/8/7 7:28:25

多总线检测台构建指南:从CAN、LIN、SENT到SIF的协议解析与工程实践

在实际汽车电子、工业控制和嵌入式系统开发中,总线通信的稳定性和正确性是系统联调和故障诊断的核心。无论是研发阶段的模块测试,还是产线终检、售后维修,工程师都需要一个能够同时接入并解析多种总线协议(如 CAN、CAN FD、LIN、S…

作者头像 李华
网站建设 2026/8/7 7:25:26

从零搭建水下机器人仿真环境:ROS2、Gazebo与ArduSub集成指南

在实际机器人开发中,仿真环境是验证算法、测试硬件接口、进行安全训练的关键环节。对于水下机器人这类复杂且昂贵的系统,直接在真实水域中进行算法调试和功能测试不仅成本高昂,也伴随着巨大的风险。因此,一个能够逼真模拟水下动力…

作者头像 李华