生物医学研究助手

一个基于Next.js的AI生物医学研究助手,通过Vercel AI SDK和Model Context Protocol (MCP)查询PubMed、ClinicalTrials.gov和MyVariant.info等生物医学数据源。

  • by thibault-lr
  • TypeScript
  • 云端部署
  • 更新于
在 GitHub 查看 thibault-lr/research-assistant

使用说明

研究助理

Next.js应用程序,充当人工智能驱动的生物医学研究助理。它使用 Vercel AI SDK 和 模型上下文协议(MCP) 查询PubMed、ClinicalTrials.gov和MyVariant.info。

环境变量

您需要在 .env.local 文件:

  • BIOMCP_URL -BioMCP服务器(SSE端点)的URL。
  • GOOGLE_GENERATIVE_AI_API_KEY -您的Google Gemini API密钥。

入门指南

运行开发服务器: yarn dev

打开http://localhost:3000在您的浏览器中。

架构与流程

此应用程序通过AI Agent将聊天UI连接到生物医学数据源。

它是如何工作的(示例)

1-用户提示:“查找有关TNF-α抑制剂的论文。”

2-分析:人工智能模型(Gemini)分析请求。

3-工具:如果人工智能能够将提示与工具相匹配,则会调用特定的工具(例如searchArticles)。如果没有,他只返回(2)的输出

4-MCP:连接到BioMCP服务器以搜索结果

5-响应:原始数据被汇总到markdown中并流式传输回来

项目结构

代码的组织是为了将用户界面与业务逻辑分开。

src/app:处理路由和API端点(如/API/聊天)。

src/features:包含应用程序核心逻辑(聊天页面组件)

src/domain:定义数据类型和核心验证规则(Zod模式)。

src/lib:管理与LLM和BioMCP服务器等外部库的交互

src/components/ui:可重复使用的设计元素(按钮、卡片、输入)。

技术栈:

  • 服务器:NextJS
  • 用户界面:ShadCN/顺风
  • 验证:zod
  • 法学硕士:Vercel ai sdk
  • 测试:Vitest+剧作家
  • 基础设施:Vercel

进一步改善

虽然该应用程序目前很简单,但它包含构建可扩展系统所需的逻辑和设计模式:

  • Zod对类型安全进行了强有力的验证
  • 可重用UI组件
  • 测试

为了使其生产就绪,接下来的步骤可能是:

  • 左侧面板包含聊天历史记录,由专用数据库支持。
  • 将BioMCP输出从静态文本升级为交互式组件。这将允许用户直接在聊天中对研究论文或临床试验进行排序、过滤和分页。
  • 实施监控工具以跟踪绩效。
  • 利用LLM流媒体功能来可视化“思维过程”。