Virtual Patient Roleplay
Structured standardized-patient simulation for medical training and clinical interview practice.
Educational Disclaimer: All output is for training simulation only. This skill does not provide real clinical diagnosis, treatment selection, or emergency instructions. Faculty supervision is required for formal assessment use.
Quick Check
CODEBLOCK0
When to Use
- - Use this skill for OSCE-style history-taking practice, communication skills rehearsal, or debrief planning.
- Use this skill when a learner needs to practice clinical interviewing with a simulated patient response.
- Do not use this skill for real patient triage, clinical diagnosis, treatment selection, or emergency guidance.
Workflow
- 1. Confirm the training goal, scenario type, learner level, and output focus (questioning, bedside manner, or debriefing).
- Check whether the request is for live roleplay, case setup, feedback, or post-encounter summary.
- Use the packaged simulator for supported scenarios; otherwise provide a manual roleplay scaffold without inventing unsupported medical certainty.
- Return the patient response or teaching artifact with assumptions, missed-question prompts, and debrief notes.
- If the request exceeds educational scope, stop and restate the boundary explicitly.
Usage
CODEBLOCK1
Parameters
| Parameter | Type | Required | Default | Description |
|---|
| INLINECODE0 | string | No | INLINECODE1 | Scenario: chest_pain, headache, INLINECODE4 |
| INLINECODE5 |
string | Yes (for interaction) | — | Learner question posed to the patient |
|
difficulty | string | No |
intermediate | Scenario difficulty level |
Output
- - Simulated patient response
- Scenario-specific cues and debrief elements
- Explicit reminder that output is educational, not clinical advice
Scope Boundaries
- - This skill supports training simulations, not real clinical triage.
- This skill does not provide diagnosis, treatment selection, or emergency instructions.
- This skill should not be used as a substitute for faculty supervision or patient care.
Stress-Case Rules
For complex multi-constraint requests, always include these explicit blocks:
- 1. Training Objective
- Scenario Assumptions
- Roleplay Output
- Educational Limits
- Debrief and Next Checks
Error Handling
- - If required inputs are missing, state exactly which fields are missing and request only the minimum additional information.
- If the task goes outside the documented scope, stop instead of guessing or silently widening the assignment.
- If
scripts/main.py fails, report the failure point, summarize what still can be completed safely, and provide a manual fallback. - Do not fabricate clinical certainty, real patient data, or verified diagnostic outcomes.
Input Validation
This skill accepts: a scenario identifier and a learner question for standardized patient simulation in a medical training context.
If the request does not involve educational patient simulation — for example, asking for real clinical diagnosis, treatment recommendations, emergency triage, or non-medical roleplay — do not proceed with the workflow. Instead respond:
"virtual-patient-roleplay is designed for medical training simulations only. Your request appears to be outside this scope. Please provide a scenario and learner question for educational practice, or use a more appropriate tool."
References
Response Template
Use the following fixed structure for non-trivial requests:
- 1. Objective
- Inputs Received
- Assumptions
- Workflow
- Deliverable
- Risks and Limits
- Next Checks
If the request is simple, you may compress the structure, but still keep assumptions and limits explicit when they affect correctness.
虚拟患者角色扮演
用于医学培训和临床访谈练习的结构化标准化患者模拟。
教育免责声明: 所有输出仅用于培训模拟。本技能不提供真实的临床诊断、治疗方案选择或紧急情况指导。正式评估使用需有教师监督。
快速检查
bash
python -m py_compile scripts/main.py
python -c from scripts.main import PatientSimulator; sim=PatientSimulator(chestpain); print(sim.ask(Where does the pain go?)[patientresponse])
使用场景
- - 用于OSCE式病史采集练习、沟通技巧演练或复盘规划。
- 当学习者需要通过模拟患者反应练习临床访谈时使用。
- 请勿用于真实患者分诊、临床诊断、治疗方案选择或紧急情况指导。
工作流程
- 1. 确认培训目标、场景类型、学习者水平及输出重点(提问技巧、床旁态度或复盘总结)。
- 检查请求是实时角色扮演、案例设置、反馈还是接诊后总结。
- 对支持的场景使用打包模拟器;否则提供手动角色扮演框架,不虚构未经支持的医学确定性。
- 返回患者反应或教学成果,附带假设条件、遗漏问题提示及复盘笔记。
- 若请求超出教育范围,停止操作并明确重申边界。
使用方法
text
python -c from scripts.main import PatientSimulator; sim=PatientSimulator(chestpain); print(sim.ask(Where does the pain go?)[patientresponse])
python -c from scripts.main import PatientSimulator; sim=PatientSimulator(headache); print(sim.ask(Did the pain start suddenly?)[patient_response])
参数
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|
| scenario | 字符串 | 否 | chestpain | 场景:chestpain、headache、abdominalpain |
| studentquestion |
字符串 | 是(用于交互) | — | 学习者向患者提出的问题 |
| difficulty | 字符串 | 否 | intermediate | 场景难度等级 |
输出内容
- - 模拟患者反应
- 场景特定提示和复盘要素
- 明确提醒输出为教育用途,非临床建议
范围边界
- - 本技能支持培训模拟,而非真实临床分诊。
- 本技能不提供诊断、治疗方案选择或紧急情况指导。
- 本技能不应替代教师监督或患者护理。
压力案例规则
对于复杂的多约束请求,必须包含以下明确模块:
- 1. 培训目标
- 场景假设
- 角色扮演输出
- 教育限制
- 复盘与后续检查
错误处理
- - 若缺少必要输入,需明确指出缺失字段,并仅请求最少补充信息。
- 若任务超出文档范围,停止操作而非猜测或悄然扩大任务范围。
- 若scripts/main.py运行失败,报告失败点,总结仍可安全完成的内容,并提供手动备用方案。
- 不得虚构临床确定性、真实患者数据或经验证的诊断结果。
输入验证
本技能接受:场景标识符和学习者问题,用于医学培训背景下的标准化患者模拟。
若请求不涉及教育性患者模拟——例如要求真实临床诊断、治疗建议、紧急分诊或非医学角色扮演——请勿执行工作流程。应回复:
虚拟患者角色扮演仅用于医学培训模拟。您的请求似乎超出此范围。请提供场景和学习者问题用于教育练习,或使用更合适的工具。
参考资料
回复模板
对于非简单请求,使用以下固定结构:
- 1. 目标
- 接收的输入
- 假设条件
- 工作流程
- 交付成果
- 风险与限制
- 后续检查
若请求简单,可压缩结构,但当假设条件和限制影响正确性时,仍需明确说明。