name: biomni description: 自主生物医学AI代理框架,用于执行基因组学、药物发现、分子生物学和临床分析中的复杂研究任务。在以下场景使用此技能:进行多步骤生物医学研究,包括CRISPR筛选设计、单细胞RNA-seq分析、ADMET预测、GWAS解释、罕见疾病诊断或实验室协议优化。利用LLM推理与代码执行以及集成的生物医学数据库。
Biomni
概述
Biomni是斯坦福大学SNAP实验室的开源生物医学AI代理框架,能够自主执行跨生物医学领域的复杂研究任务。当处理多步骤生物推理任务、分析生物医学数据或进行跨基因组学、药物发现、分子生物学和临床分析的研究时,使用此技能。
核心能力
Biomni擅长:
- 多步骤生物推理 - 对复杂生物医学查询进行自主任务分解和规划
- 代码生成与执行 - 为数据处理创建动态分析管道
- 知识检索 - 访问约11GB的集成生物医学数据库和文献
- 跨领域问题解决 - 为基因组学、蛋白质组学、药物发现和临床任务提供统一接口
何时使用此技能
使用biomni进行:
- CRISPR筛选 - 设计筛选、优先排序基因、分析敲除效应
- 单细胞RNA-seq - 细胞类型注释、差异表达、轨迹分析
- 药物发现 - ADMET预测、靶点识别、化合物优化
- GWAS分析 - 变异解释、因果基因识别、通路富集分析
- 临床基因组学 - 罕见疾病诊断、变异致病性、表型-基因型映射
- 实验室协议 - 协议优化、文献综合、实验设计
快速开始
安装与设置
Biomni需要conda环境设置和LLM提供商的API密钥:
# 克隆仓库并设置环境
git clone https://github.com/snap-stanford/biomni
cd biomni
bash setup.sh
# 或通过pip安装
conda activate biomni_e1
pip install biomni --upgrade
配置API密钥(存储在.env文件或环境变量中):
export ANTHROPIC_API_KEY="your-key-here"
# 可选:OpenAI、Azure、Google、Groq、AWS Bedrock密钥
使用 scripts/setup_environment.py 获取交互式设置帮助。
基本使用模式
from biomni.agent import A1
# 初始化代理,指定数据路径和LLM选择
agent = A1(path='./data', llm='claude-sonnet-4-20250514')
# 自主执行生物医学任务
agent.go("您的生物医学研究问题或任务")
# 保存对话历史和结果
agent.save_conversation_history("report.pdf")
使用Biomni
1. 代理初始化
A1类是biomni的主要接口:
from biomni.agent import A1
from biomni.config import default_config
# 基本初始化
agent = A1(
path='./data', # 数据湖路径(首次使用时下载约11GB)
llm='claude-sonnet-4-20250514' # LLM模型选择
)
# 高级配置
default_config.llm = "gpt-4"
default_config.timeout_seconds = 1200
default_config.max_iterations = 50
支持的LLM提供商:
- Anthropic Claude(推荐):
claude-sonnet-4-20250514、claude-opus-4-20250514 - OpenAI:
gpt-4、gpt-4-turbo - Azure OpenAI:通过Azure配置
- Google Gemini:
gemini-2.0-flash-exp - Groq:
llama-3.3-70b-versatile - AWS Bedrock:通过各种模型通过Bedrock API
查看 references/llm_providers.md 获取详细的LLM配置说明。
2. 任务执行工作流
Biomni遵循自主代理工作流:
# 步骤1:初始化代理
agent = A1(path='./data', llm='claude-sonnet-4-20250514')
# 步骤2:使用自然语言查询执行任务
result = agent.go("""
设计一个CRISPR筛选,以识别在HEK293细胞中调控自噬的基因。
基于必要性和通路相关性优先排序基因。
""")
# 步骤3:审查生成的代码和分析
# 代理自主地:
# - 将任务分解为子步骤
# - 检索相关生物知识
# - 生成并执行分析代码
# - 解释结果并提供见解
# 步骤4:保存结果
agent.save_conversation_history("autophagy_screen_report.pdf")
3. 常见任务模式
CRISPR筛选设计
agent.go("""
设计一个全基因组CRISPR敲除筛选,用于识别影响[表型]在[细胞类型]中的基因。包括:
1. sgRNA库设计
2. 基因优先排序标准
3. 基于通路分析的预期命中基因
""")
单细胞RNA-seq分析
agent.go("""
分析这个单细胞RNA-seq数据集:
- 执行质量控制和过滤
- 通过聚类识别细胞群体
- 使用标记基因注释细胞类型
- 在条件之间进行差异表达分析
文件路径:[path/to/data.h5ad]
""")
药物ADMET预测
agent.go("""
预测这些候选药物的ADMET属性:
[SMILES字符串或化合物ID]
关注:
- 吸收(Caco-2渗透性、HIA)
- 分布(血浆蛋白结合、BBB渗透)
- 代谢(CYP450相互作用)
- 排泄(清除率)
- 毒性(hERG责任、肝毒性)
""")
GWAS变异解释
agent.go("""
解释GWAS结果对于[性状/疾病]:
- 识别全基因组显著变异
- 将变异映射到因果基因
- 执行通路富集分析
- 预测功能后果
摘要统计文件:[path/to/gwas_summary.txt]
""")
查看 references/use_cases.md 获取跨所有生物医学领域的全面任务示例。
4. 数据集成
Biomni集成了约11GB的生物医学知识源:
- 基因数据库 - Ensembl、NCBI Gene、UniProt
- 蛋白质结构 - PDB、AlphaFold
- 临床数据集 - ClinVar、OMIM、HPO
- 文献索引 - PubMed摘要、生物医学本体
- 通路数据库 - KEGG、Reactome、GO
数据在首次使用时自动下载到指定的 path。
5. MCP服务器集成
通过模型上下文协议扩展biomni:
# MCP服务器可以提供:
# - FDA药物数据库
# - 文献的网络搜索
# - 自定义生物医学API
# - 实验室设备接口
# 在 .biomni/mcp_config.json 中配置MCP服务器
6. 评估框架
对生物医学任务进行代理性能基准测试:
from biomni.eval import BiomniEval1
evaluator = BiomniEval1()
# 评估特定任务类型
score = evaluator.evaluate(
task_type='crispr_design',
instance_id='test_001',
answer=agent_output
)
# 访问评估数据集
dataset = evaluator.load_dataset()
最佳实践
任务制定
- 具体明确 - 包括生物上下文、生物体、细胞类型、条件
- 指定输出 - 明确说明所需的分析输出和格式
- 提供数据路径 - 包括要分析的数据集文件路径
- 设置约束 - 如果相关,提及时间/计算限制
安全考虑
⚠️ 重要:Biomni以完全系统权限执行LLM生成的代码。对于生产使用:
- 在隔离环境中运行(Docker、VMs)
- 避免暴露敏感凭证
- 在敏感上下文中执行前审查生成的代码
- 尽可能使用沙盒执行环境
性能优化
- 选择适当的LLMs - 推荐Claude Sonnet 4以平衡速度/质量
- 设置合理的超时 - 调整
default_config.timeout_seconds用于复杂任务 - 监控迭代 - 跟踪
max_iterations以防止无限循环 - 缓存数据 - 跨会话重用下载的数据湖
结果文档
# 始终保存对话历史以确保可重复性
agent.save_conversation_history("results/project_name_YYYYMMDD.pdf")
# 在报告中包括:
# - 原始任务描述
# - 生成的分析代码
# - 结果和解释
# - 使用的数据源
资源
参考资料
详细文档可在 references/ 目录中找到:
api_reference.md- A1类、配置和评估的完整API文档llm_providers.md- LLM提供商设置(Anthropic、OpenAI、Azure、Google、Groq、AWS)use_cases.md- 所有生物医学领域的全面任务示例
脚本
scripts/ 目录中的帮助脚本:
setup_environment.py- 交互式环境和API密钥配置generate_report.py- 增强的PDF报告生成,带自定义格式
外部资源
- GitHub:https://github.com/snap-stanford/biomni
- Web平台:https://biomni.stanford.edu
- 论文:https://www.biorxiv.org/content/10.1101/2025.05.30.656746v1
- 模型:https://huggingface.co/biomni/Biomni-R0-32B-Preview
- 评估数据集:https://huggingface.co/datasets/biomni/Eval1
故障排除
常见问题
数据下载失败
# 手动触发数据湖下载
agent = A1(path='./data', llm='your-llm')
# 首次 .go() 调用将下载数据
API密钥错误
# 验证环境变量
echo $ANTHROPIC_API_KEY
# 或检查工作目录中的 .env 文件
复杂任务超时
from biomni.config import default_config
default_config.timeout_seconds = 3600 # 1小时
大数据集内存问题
- 对大型文件使用流处理
- 分块处理数据
- 增加系统内存分配
获取帮助
对于问题或疑问:
- GitHub Issues:https://github.com/snap-stanford/biomni/issues
- 文档:查看
references/文件获取详细指导 - 社区:斯坦福SNAP实验室和biomni贡献者