TrialTalk-代理临床试验智能系统
🎥 现场演示
https://github.com/user-attachments/assets/ee53bdbd-e582-43eb-9ebe-254aa178ebd9
模块化 代理人工智能系统 旨在彻底改变研究人员和患者获取临床试验数据的方式。由...驱动 模型上下文协议(MCP), LangGraph,以及 谷歌双子座2.5,TrialTalk自主导航庞大的注册表 ClinicalTrials.gov 提供基于证据的见解、比较分析和实时资格评估。
“用❤️ Suyash Ekhande
______________________________________________________________________
🚀 关键亮点
- 能动性架构:实现a 交互式推理与行动 (推理+行动)循环,人工智能自主决定使用哪些工具,过滤数据并合成答案。
- 模型上下文协议(MCP):利用新兴的MCP标准将LLM与数据工具解耦,创建一个可扩展和可互换的工具生态系统。
- 生产就绪技术栈:内置 Next.js 15, 快速API, 快速MCP, LangGraph, LangChain, 双子座2.5闪光灯, Shadcn用户界面.
______________________________________________________________________
🏗️ 系统架构
Trialtalk由三个协调工作的解耦微服务组成:
1. ClinicalTrials MCP服务器 (Python/FastMCP)
- 角色:系统的“手”。
- 科技:FastMCP、Pydantic、HTTPX。
- 函数:展示8个以上的细粒度工具与ClinicalTrials.gov API v2进行交互。它处理速率限制、错误重试和数据验证。
- 关键工具:
search_clinical_trials,get_study_details,get_statistics.
2. 临床试验药物 (Python/LangGraph)
- 角色:系统的“大脑”。
- 科技:LangChain、LangGraph、Gemini 2.5 Flash、FastAPI。
- 函数:
- 保持对话记忆和状态。 - 执行ReAct循环以解决复杂的多步骤查询。 - 通过服务器发送事件(SSE)流式传输想法和最终答案。 Agent FastAPI
3. 临床试验用户界面 (Next.js/React)
- 角色:系统的“面子”。
- 科技Next.js 15、TypeScript、TailwindCSS、Shadcn UI、Framer Motion。
- 函数:
- 现代、响应式聊天界面。 - 呈现Markdown和结构化数据表。
______________________________________________________________________
🛠️ 技术栈和工具
- AI&LLM:谷歌双子座2.5 Flash、LangChain、LangGraph。
- 协议:模型上下文协议(MCP), 快速MCP.
- 后端:Python 3.12、FastAPI、Uvicorn。
- 前端:Next.js(应用路由器)、React 19、Lucide Icons。
- 样式:顺风CSS,Shadcn UI。
- 数据源:ClinicalTrials.gov API v2。
______________________________________________________________________
⚡ 快速开始
先决条件
- Node.js 20+
- Python 3.12+
- Gemini API密钥(谷歌人工智能工作室)
1.克隆存储库
git clone https://github.com/yourusername/Trialtalk-Agentic-Clinical-Trial-Insights.git
cd Trialtalk-Agentic-Clinical-Trial-Insights2.设置MCP服务器(端口8000)
MCP服务器处理与ClinicalTrials.gov的连接。
cd clinicaltrials-mcp
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # No API keys needed for this part
python server.py3.设置代理服务(端口8001)
Agent连接到MCP服务器并协调逻辑。
cd ../clinicaltrial-agent
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# ⚠️ Add your GEMINI_API_KEY to .env
python api/main.py4.设置前端UI(端口3000)
Next.js应用程序。
cd ../clinicaltrials-ui
npm install
npm run dev访问 http://localhost:3000 与代理进行交互!
______________________________________________________________________
💡 使用场景
🔬 可行性研究
*“在纽约寻找肺癌3期试验,招募EGFR突变患者。”* 代理将按阶段、条件、地点和招聘状态进行筛选。
📊 比较分析
*“比较2023年后开始的前三大糖尿病研究的入组规模。”* 该代理获取多个研究并综合比较。
______________________________________________________________________
