Inclusion Criteria Generator
Generate and optimize clinical trial subject inclusion/exclusion criteria to balance scientific rigor with recruitment feasibility.
Use Cases
- - Protocol Design: Create initial eligibility criteria for new clinical trials
- Criteria Optimization: Refine existing criteria to improve enrollment without compromising safety/efficacy
- Competitive Analysis: Analyze eligibility patterns across similar trials
- Recruitment Strategy: Identify and mitigate barriers to enrollment
- Feasibility Assessment: Evaluate if proposed criteria are realistic for target population
Usage
CLI Usage
CODEBLOCK0
Python API
CODEBLOCK1
Input Format
Study Design Parameters
CODEBLOCK2
Existing Criteria Format
CODEBLOCK3
Output Format
Generated/Optimized Criteria
CODEBLOCK4
Criteria Categories
| Category | Description | Examples |
|---|
| demographics | Age, sex, race, ethnicity | Age 18-75, women of childbearing potential |
| disease_severity |
Disease stage, severity markers | HbA1c range, tumor stage, NYHA class |
| medical_history | Prior conditions, comorbidities | No cardiovascular events within 6 months |
| concomitant_meds | Allowed/prohibited medications | Stable metformin dose allowed |
| laboratory | Lab value requirements | eGFR > 30 mL/min, normal liver function |
| lifestyle | Diet, exercise, habits | Non-smoker, willing to maintain diet |
| compliance | Ability to participate | Able to provide informed consent |
| safety | Risk minimization criteria | No history of severe hypoglycemia |
Optimization Strategies
Common Modifications
| Issue | Strategy | Example |
|---|
| Narrow age range | Widen limits | 18-70 → 18-75 years |
| Restrictive lab values |
Adjust thresholds | eGFR > 60 → eGFR > 30 mL/min |
| Comorbidity exclusions | Add time limits | Exclude "current" vs "history of" |
| Medication washouts | Shorten periods | 4 weeks → 2 weeks |
| Geographic barriers | Add telemedicine | Include remote visits option |
Retention Considerations
- - Minimize visit frequency when possible
- Allow window periods for visit timing
- Provide transportation assistance language
- Consider patient-reported outcome burden
Technical Details
- - Difficulty: Medium
- Standards: ICH E6(R2) GCP, CDISC Protocol Representation Model
- Data Sources: ClinicalTrials.gov eligibility patterns, literature feasibility data
- Dependencies: None (pure Python)
References
- -
references/criteria_templates.json - Templates by therapeutic area - INLINECODE1 - Best practices for criteria optimization
- INLINECODE2 - Frequent eligibility design mistakes
- INLINECODE3 - FDA/EMA guidance on eligibility criteria
- INLINECODE4 - Screen failure rates by criterion type
Risk Assessment
| Risk Indicator | Assessment | Level |
|---|
| Code Execution | Python scripts with tools | High |
| Network Access |
External API calls | High |
| File System Access | Read/write data | Medium |
| Instruction Tampering | Standard prompt guidelines | Low |
| Data Exposure | Data handled securely | Medium |
Security Checklist
- - [ ] No hardcoded credentials or API keys
- [ ] No unauthorized file system access (../)
- [ ] Output does not expose sensitive information
- [ ] Prompt injection protections in place
- [ ] API requests use HTTPS only
- [ ] Input validated against allowed patterns
- [ ] API timeout and retry mechanisms implemented
- [ ] Output directory restricted to workspace
- [ ] Script execution in sandboxed environment
- [ ] Error messages sanitized (no internal paths exposed)
- [ ] Dependencies audited
- [ ] No exposure of internal service architecture
Prerequisites
CODEBLOCK5
Evaluation Criteria
Success Metrics
- - [ ] Successfully executes main functionality
- [ ] Output meets quality standards
- [ ] Handles edge cases gracefully
- [ ] Performance is acceptable
Test Cases
- 1. Basic Functionality: Standard input → Expected output
- Edge Case: Invalid input → Graceful error handling
- Performance: Large dataset → Acceptable processing time
Lifecycle Status
- - Current Stage: Draft
- Next Review Date: 2026-03-06
- Known Issues: None
- Planned Improvements:
- Performance optimization
- Additional feature support
Parameters
| Parameter | Type | Default | Description |
|---|
| INLINECODE5 | str | Required | Therapeutic indication |
| INLINECODE6 |
str | Required | |
|
--population | str | "adults" | Target population |
|
--duration | str | "" | Study duration |
|
--output | str | Required | Output file path |
|
--age-min | int | 18 | Minimum age |
|
--age-max | int | 75 | Maximum age |
|
--input | str | Required | Input criteria JSON file |
|
--enrollment-target | int | Required | Target enrollment |
|
--current-enrollment | int | Required | Current enrollment |
|
--output | str | Required | Output file path |
|
--input | str | Required | Input criteria JSON file |
|
--output | str | Required | Output file path |
|
--input | str | Required | Input criteria JSON file |
|
--condition | str | Required | Medical condition |
|
--output | str | Required | Output file path |
纳入标准生成器
生成并优化临床试验受试者纳入/排除标准,以平衡科学严谨性与招募可行性。
使用场景
- - 方案设计:为新临床试验创建初始入组标准
- 标准优化:优化现有标准以提高入组率,同时不损害安全性/有效性
- 竞争分析:分析同类试验的入组模式
- 招募策略:识别并减少入组障碍
- 可行性评估:评估拟议标准对目标人群是否现实可行
使用方法
命令行使用
bash
根据研究设计生成标准
python scripts/main.py generate \
--indication 2型糖尿病 \
--phase 2期 \
--population 成人 \
--duration 24周 \
--output criteria.json
优化现有标准
python scripts/main.py optimize \
--input current_criteria.json \
--enrollment-target 200 \
--current-enrollment 120 \
--output optimized_criteria.json
分析标准复杂度
python scripts/main.py analyze \
--input criteria.json \
--output analysis_report.json
与竞争试验比较
python scripts/main.py benchmark \
--input criteria.json \
--condition 2型糖尿病 \
--output benchmark_report.json
Python API
python
from scripts.main import CriteriaGenerator, CriteriaOptimizer
生成新标准
generator = CriteriaGenerator()
criteria = generator.generate(
indication=2型糖尿病,
phase=2期,
population=成人,
study_duration=24周,
endpoints=[HbA1c降低, 体重变化]
)
优化现有标准
optimizer = CriteriaOptimizer()
optimized = optimizer.optimize(
criteria=existing_criteria,
enrollment_target=200,
current_enrollment=120,
retention_rate=0.85
)
分析标准复杂度
analysis = optimizer.analyze_complexity(criteria)
输入格式
研究设计参数
json
{
indication: 2型糖尿病,
phase: 2期,
population: 成人,
age_range: {min: 18, max: 75},
study_duration: 24周,
treatment_type: 口服,
primary_endpoints: [HbA1c较基线的变化],
safety_considerations: [心血管风险],
concomitantmedsallowed: [二甲双胍]
}
现有标准格式
json
{
inclusion_criteria: [
{
id: I1,
criterion: 年龄18-75岁,
rationale: 根据监管指南的成人人群,
category: 人口学特征
}
],
exclusion_criteria: [
{
id: E1,
criterion: HbA1c < 7.0% 或 > 11.0%,
rationale: 确保可测量的治疗效果,
category: 疾病严重程度
}
]
}
输出格式
生成/优化后的标准
json
{
inclusion_criteria: [
{
id: I1,
criterion: 年龄18-75岁(含),
category: 人口学特征,
rationale: 成人人群;安全性上限,
priority: 必需,
impact: 低
}
],
exclusion_criteria: [
{
id: E1,
criterion: 筛查时HbA1c < 7.5% 或 > 10.5%,
category: 疾病严重程度,
rationale: 检测治疗效果的最佳范围,
priority: 必需,
impact: 中,
flexibility: 如入组缓慢可放宽0.5%
}
],
optimization_notes: [
根据可行性数据将HbA1c范围从7.0-11.0%放宽至7.5-10.5%
],
recruitment_metrics: {
estimatedscreensuccess_rate: 0.35,
estimatedenrollmentrate: 0.65,
key_barriers: [HbA1c上限, 合并用药限制]
}
}
标准类别
| 类别 | 描述 | 示例 |
|---|
| 人口学特征 | 年龄、性别、种族、民族 | 年龄18-75岁,有生育能力的女性 |
| 疾病严重程度 |
疾病分期、严重程度标志物 | HbA1c范围、肿瘤分期、NYHA分级 |
| 病史 | 既往疾病、合并症 | 6个月内无心血管事件 |
| 合并用药 | 允许/禁止的药物 | 允许稳定剂量的二甲双胍 |
| 实验室检查 | 实验室值要求 | eGFR > 30 mL/min,肝功能正常 |
| 生活方式 | 饮食、运动、习惯 | 非吸烟者,愿意保持饮食 |
| 依从性 | 参与能力 | 能够提供知情同意 |
| 安全性 | 风险最小化标准 | 无严重低血糖史 |
优化策略
常见修改
| 问题 | 策略 | 示例 |
|---|
| 年龄范围过窄 | 放宽限制 | 18-70 → 18-75岁 |
| 实验室值限制严格 |
调整阈值 | eGFR > 60 → eGFR > 30 mL/min |
| 合并症排除 | 添加时间限制 | 排除当前 vs 有...史 |
| 药物洗脱期 | 缩短周期 | 4周 → 2周 |
| 地理障碍 | 增加远程医疗 | 包括远程访视选项 |
保留率考量
- - 尽可能减少访视频率
- 允许访视时间的窗口期
- 提供交通补助说明
- 考虑患者报告结局负担
技术细节
- - 难度:中等
- 标准:ICH E6(R2) GCP,CDISC方案表示模型
- 数据来源:ClinicalTrials.gov入组模式,文献可行性数据
- 依赖项:无(纯Python)
参考文献
- - references/criteriatemplates.json - 按治疗领域的模板
- references/optimizationguidelines.md - 标准优化的最佳实践
- references/commonpitfalls.md - 常见的入组设计错误
- references/regulatoryguidance.md - FDA/EMA关于入组标准的指南
- references/feasibility_data.json - 按标准类型划分的筛选失败率
风险评估
| 风险指标 | 评估 | 级别 |
|---|
| 代码执行 | 带工具的Python脚本 | 高 |
| 网络访问 |
外部API调用 | 高 |
| 文件系统访问 | 读/写数据 | 中 |
| 指令篡改 | 标准提示指南 | 低 |
| 数据暴露 | 安全处理数据 | 中 |
安全检查清单
- - [ ] 无硬编码凭据或API密钥
- [ ] 无未经授权的文件系统访问(../)
- [ ] 输出不暴露敏感信息
- [ ] 已实施提示注入保护
- [ ] API请求仅使用HTTPS
- [ ] 输入已根据允许的模式进行验证
- [ ] 已实现API超时和重试机制
- [ ] 输出目录限制在工作空间内
- [ ] 脚本在沙盒环境中执行
- [ ] 错误消息已清理(不暴露内部路径)
- [ ] 依赖项已审计
- [ ] 不暴露内部服务架构
前提条件
bash
Python依赖项
pip install -r requirements.txt
评估标准
成功指标
- - [ ] 成功执行主要功能
- [ ] 输出符合质量标准
- [ ] 优雅处理边缘情况
- [ ] 性能可接受
测试用例
- 1. 基本功能:标准输入 → 预期输出
- 边缘情况:无效输入 → 优雅的错误处理
- 性能:大数据集 → 可接受的处理时间
生命周期状态
- - 当前阶段:草案
- 下次审查日期:2026-03-06
- 已知问题:无
- 计划改进:
- 性能优化
- 额外功能支持
参数
| 参数 | 类型 | 默认值 | 描述 |
|---|
| --indication | str | 必需 | 治疗适应症 |
| --phase |
str | 必需 | 试验阶段 |
| --population | str | 成人 | 目标人群 |
| --duration | str | | 研究持续时间 |
| --output | str | 必需 | 输出文件路径 |
| --age-min