关于 biomni
Biomni 是 Stanford SNAP 实验室开发的开源生物医学 AI Agent 框架,面向处理多步骤生物学问题和数据分析的研究人员。它结合代码生成、生物医学知识检索与跨领域工作流,并可通过 MCP 服务扩展工具。
主要功能
- 01自主执行多步骤生物医学推理
- 02动态生成并执行代码
- 03整合生物医学数据库与文献
- 04覆盖基因组、药物发现及临床分析
- 05通过 MCP 扩展外部工具
适用场景
- 01设计 CRISPR 筛选并筛选优先基因
- 02分析单细胞 RNA-seq 数据集
- 03预测药物 ADMET 属性
- 04解读 GWAS 与临床变异
MCP 相关
Biomni 可通过 MCP 服务接入外部工具。README 提到在 `.biomni/mcp_config.json` 中配置,并举例说明药物数据库、文献搜索和实验室设备接口。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ davila7/ claude-code-templates --skill biomni安装后在 Claude Code 中输入/biomni确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/api_reference.mdllm_providers.mduse_cases.mdscripts/generate_report.pysetup_environment.py详细介绍
Biomni
概述
Biomni 是来自 Stanford SNAP 实验室的开源生物医学 AI Agent 框架,可在生物医学各领域中自主执行复杂的研究任务。当你需要处理多步生物学推理任务、分析生物医学数据,或开展涵盖基因组学、药物发现、分子生物学和临床分析的研究时,可使用此技能。
核心能力
Biomni 擅长:
- 多步生物学推理 - 针对复杂生物医学查询进行自主任务分解与规划
- 代码生成与执行 - 为数据处理动态创建分析流水线
- 知识检索 - 可访问约 11GB 的集成生物医学数据库与文献
- 跨领域问题求解 - 为基因组学、蛋白质组学、药物发现和临床任务提供统一接口
何时使用此技能
在以下场景使用 biomni:
- CRISPR 筛选 - 设计筛选方案、对基因进行优先级排序、分析敲除效应
- 单细胞 RNA-seq - 细胞类型注释、差异表达、轨迹分析
- 药物发现 - ADMET 预测、靶点识别、化合物优化
- GWAS 分析 - 变异解读、因果基因识别、通路富集
- 临床基因组学 - 罕见病诊断、变异致病性、表型-基因型映射
- 实验方案 - 方案优化、文献综合、实验设计
快速开始
安装与设置
安装 Biomni 并为大模型提供商配置 API 密钥:
uv pip install biomni --upgrade
配置 API 密钥(存储在 .env 文件或环境变量中):
export ANTHROPIC_API_KEY="your-key-here"
# Optional: OpenAI, Azure, Google, Groq, AWS Bedrock keys
使用 scripts/setup_environment.py 获取交互式设置协助。
基本用法模式
from biomni.agent import A1
# Initialize agent with data path and LLM choice
agent = A1(path='./data', llm='claude-sonnet-4-20250514')
# Execute biomedical task autonomously
agent.go("Your biomedical research question or task")
# Save conversation history and results
agent.save_conversation_history("report.pdf")
使用 Biomni
1. Agent 初始化
A1 类是 biomni 的主要接口:
from biomni.agent import A1
from biomni.config import default_config
# Basic initialization
agent = A1(
path='./data', # Path to data lake (~11GB downloaded on first use)
llm='claude-sonnet-4-20250514' # LLM model selection
)
# Advanced configuration
default_config.llm = "gpt-4"
default_config.timeout_seconds = 1200
default_config.max_iterations = 50
支持的大模型提供商:
- 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。
2. 任务执行工作流
Biomni 遵循自主 Agent 工作流:
# Step 1: Initialize agent
agent = A1(path='./data', llm='claude-sonnet-4-20250514')
# Step 2: Execute task with natural language query
result = agent.go("""
Design a CRISPR screen to identify genes regulating autophagy in
HEK293 cells. Prioritize genes based on essentiality and pathway
relevance.
""")
# Step 3: Review generated code and analysis
# Agent autonomously:
# - Decomposes task into sub-steps
# - Retrieves relevant biological knowledge
# - Generates and executes analysis code
# - Interprets results and provides insights
# Step 4: Save results
agent.save_conversation_history("autophagy_screen_report.pdf")
3. 常见任务模式
CRISPR 筛选设计
agent.go("""
Design a genome-wide CRISPR knockout screen for identifying genes
affecting [phenotype] in [cell type]. Include:
1. sgRNA library design
2. Gene prioritization criteria
3. Expected hit genes based on pathway analysis
""")
单细胞 RNA-seq 分析
agent.go("""
Analyze this single-cell RNA-seq dataset:
- Perform quality control and filtering
- Identify cell populations via clustering
- Annotate cell types using marker genes
- Conduct differential expression between conditions
File path: [path/to/data.h5ad]
""")
药物 ADMET 预测
agent.go("""
Predict ADMET properties for these drug candidates:
[SMILES strings or compound IDs]
Focus on:
- Absorption (Caco-2 permeability, HIA)
- Distribution (plasma protein binding, BBB penetration)
- Metabolism (CYP450 interaction)
- Excretion (clearance)
- Toxicity (hERG liability, hepatotoxicity)
""")
GWAS 变异解读
agent.go("""
Interpret GWAS results for [trait/disease]:
- Identify genome-wide significant variants
- Map variants to causal genes
- Perform pathway enrichment analysis
- Predict functional consequences
Summary statistics file: [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 服务集成
通过 Model Context Protocol 使用外部工具扩展 biomni:
# MCP servers can provide:
# - FDA drug databases
# - Web search for literature
# - Custom biomedical APIs
# - Laboratory equipment interfaces
# Configure MCP servers in .biomni/mcp_config.json
6. 评估框架
在生物医学任务上对 Agent 性能进行基准测试:
from biomni.eval import BiomniEval1
evaluator = BiomniEval1()
# Evaluate on specific task types
score = evaluator.evaluate(
task_type='crispr_design',
instance_id='test_001',
answer=agent_output
)
# Access evaluation dataset
dataset = evaluator.load_dataset()
最佳实践
任务表述
- 要具体 - 包含生物学背景、生物体、细胞类型、条件
- 明确输出 - 清楚说明期望的分析输出与格式
- 提供数据路径 - 包含待分析数据集的文件路径
- 设置约束 - 如相关,请说明时间/计算限制
安全注意事项
⚠️ 重要:Biomni 会以完整系统权限执行大模型生成的代码。用于生产环境时:
- 在隔离环境中运行(Docker、VM)
- 避免暴露敏感凭据
- 在敏感场景中执行前审查生成的代码
- 尽可能使用沙箱化执行环境
性能优化
- 选择合适的 LLM - 推荐 Claude Sonnet 4,兼顾速度与质量
- 设置合理的超时时间 - 针对复杂任务调整
default_config.timeout_seconds - 监控迭代次数 - 跟踪
max_iterations以防止失控循环 - 缓存数据 - 跨会话复用已下载的数据湖
结果文档化
# Always save conversation history for reproducibility
agent.save_conversation_history("results/project_name_YYYYMMDD.pdf")
# Include in reports:
# - Original task description
# - Generated analysis code
# - Results and interpretations
# - Data sources used
资源
参考资料
详细文档位于 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
- 网页平台: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
故障排除
常见问题
数据下载失败
# Manually trigger data lake download
agent = A1(path='./data', llm='your-llm')
# First .go() call will download data
API 密钥错误
# Verify environment variables
echo $ANTHROPIC_API_KEY
# Or check .env file in working directory
复杂任务超时
from biomni.config import default_config
default_config.timeout_seconds = 3600 # 1 hour
大型数据集的内存问题
- 对大文件使用流式处理
- 分块处理数据
- 增加系统内存分配
获取帮助
如有问题或疑问:
- GitHub Issues:https://github.com/snap-stanford/biomni/issues
- 文档:查看
references/文件以获取详细指导 - 社区:Stanford SNAP 实验室和 biomni 贡献者