benchling-integration
用于注册实体、库存、ELN 条目、工作流、Benchling 应用以及数据仓库查询的 Benchling Python SDK 和 REST API 集成。在使用 benchling-sdk 或 v2 API 自动化实验室数据时使用。
Benchling Integration - 实验室数据自动化集成技能
技能概述
Benchling Integration 是一个专为生命科学研发团队设计的 Python 自动化技能,通过 Benchling Python SDK 和 REST API 帮助您管理 DNA/RNA 序列、追踪样品库存、自动化实验记录、构建工作流,并与外部系统无缝集成。
适用场景
1. 生物序列批量管理
当您需要批量导入、注册或管理 DNA、RNA、蛋白质序列时,该技能可以直接读取 FASTA 文件并自动创建实体,支持序列注册表的统一命名和版本管理,避免手工录入的错误风险。
2. 实验室库存自动化追踪
适用于需要实时追踪样品位置、容器转移和库存状态的实验室。通过自动化脚本实现样品在不同位置间的转移记录、浓度更新和批量盘点,减少人工操作失误并提升库存可见性。
3. 工作流自动化与系统集成
当实验室流程需要自动触发任务分配、状态更新或跨系统数据同步时,该技能可以监控 Benchling 事件并通过 AWS EventBridge 或 Webhooks 触发下游系统(如 Lambda、数据仓库、外部 LIMS),实现端到端的流程自动化。
核心功能
1. 全面的实体管理能力
支持 DNA 序列、RNA 序列、氨基酸序列、自定义实体和混合物的完整生命周期管理,包括创建、读取、更新、归档以及注册表注册。提供分页遍历和批量操作能力,能够高效处理大规模实体库。
2. 灵活的认证与安全机制
提供 API Key 和 OAuth 两种认证方式,支持单用户脚本和多用户应用场景。自动处理请求重试和错误恢复,确保与租户 URL 的安全通信。遵循最小权限原则,避免凭据泄露风险。
3. 事件驱动的集成架构
通过 AWS EventBridge 订阅 Benchling 平台事件(如序列创建、实体注册、任务状态变更),使用 Lambda 函数实现实时响应。支持事件过滤、规则匹配和断点恢复,可构建可靠的实验室数据同步管道。
常见问题
Benchling Python SDK 如何安装和配置?
使用 uv pip install "benchling-sdk==1.25.0" 安装稳定版本。配置时需要设置 BENCHLING_TENANT_URL(您的 Benchling 租户地址)和 BENCHLING_API_KEY(从个人设置中获取)两个环境变量。推荐使用 ApiKeyAuth 进行快速认证,生产环境建议使用 OAuth 客户端凭证。
如何批量导入 DNA 序列到 Benchling?
使用 Python 的 BioPython 库解析 FASTA 文件,配合 benchling-sdk 的 dna_sequences.create() 方法遍历序列记录。每个序列需要指定名称、碱基序列、文件夹 ID,可选择是否为环状序列以及注册表 ID。导入前建议先用 estimated_count() 检查现有数据量。
Benchling EventBridge 集成如何设置?
首先在 Benchling 管理后台创建事件订阅,然后在 AWS 中关联伙伴事件源到专用事件总线(需在 12 天内完成)。创建 CloudWatch 规则过滤感兴趣的事件类型(如 v2.dnaSequence.created),并将 Lambda、SQS 或 SNS 设置为目标。最后通过 CloudWatch Logs 规则验证事件接收。