Сборка ИИ-ассистента для биоинформатики на стеке Amazon Bedrock AgentCore и Strands SDK
Команда AWS выкатила пошаговый рецепт «научного ассистента» по белкам на стеке Amazon Bedrock AgentCore.

Копаем белки через диалог: что показала AWS в связке Bedrock AgentCore + Strands
Архитектура: один агент, три инструмента
В основе — фреймворк Strands Agents SDK, который запускает один агент-оркестратор с тремя специализированными тулами. Такая модель «single-runtime, multi-tool» держит деплой компактным, но сохраняет чёткое разделение ответственности: каждый инструмент отвечает за свой кусок воркфлоу, а агенту решать, когда какой вызывать.
За генерацию эмбеддингов отвечает модель ESM-C 300M от EvolutionaryScale — белковый языковой трансформер, который выдаёт 960-мерный вектор, отражающий структурные и функциональные свойства аминокислотной последовательности. Два пептида со схожей биологической функцией «схлопываются» в близкие точки в векторном пространстве — это и есть основа для поиска похожих кандидатов без выравнивания последовательностей. Деплой модели — serverless endpoint в Amazon SageMaker AI: 6144 МБ памяти, максимальная конкурентность 5, контейнер PyTorch 2.6.0 CPU. Параметр, на который стоит обратить внимание: веса модели зашиты в артефакт деплоя, чтобы не тянуть их с HuggingFace в момент инференса. Для serverless это критично — иначе холодный старт убивает латентность.
Хранилище: pgvector + метаданные
Пептидные эмбеддинги оседают в Amazon Aurora PostgreSQL-Compatible Serverless v2 с расширением pgvector. Схема простая: колонка с вектором + JSONB-поле `properties`, куда складываются биологические метаданные — вид, исходный организм, исходная молекула, позиции эпитопов. Это позволяет запускать комбинированный запрос: сначала косинусное сходство по эмбеддингу, затем фильтр по `properties->>'species'`. Например, запрос «Найди пептиды, похожие на LPAIVREAI из вируса денге» одновременно прогоняет и векторный поиск, и фильтрацию по виду.
Что забираем из кейса
Для практикующего адепта прикладного ИИ здесь три полезных итерации. Во-первых, паттерн «один агент — много тулов» — устойчивая схема для продакшн-сервинга, когда нужно сшить поиск, парсинг и генерацию в один диалог без раздувания инфраструктуры. Во-вторых, serverless SageMaker с упакованными весами — рабочий способ держать кастомные ML-модели «тёплыми» с оплатой только за вызовы. В-третьих, pgvector + JSONB как бюджетный и гибкий стек для гибридного поиска: вектор + структурированные метаданные в одной таблице.
Границы применимости тоже видны сразу. Модель ESM-C 300M — не SOTA белкового дизайна, это скорее рабочая лошадка для retrieval-задач. Лимит конкурентности в 5 запросов означает, что сценарий рассчитан на небольшую исследовательскую группу, а не на корпоративный high-throughput. И главный практический урок: в таком кейсе качество зависит не от выбора LLM, а от того, насколько грамотно оркестратор Strands разводит логику между тулом эмбеддингов, поиском по pgvector и финальным саммари.