Narrative Event Extractor | Skills PoolNarrative Event Extractor
経過記録・臨床サマリー等のナラティブテキストから臨床イベント(有害事象、効果判定、
症状変化等)を抽出する仕様を設計する。NLP/正規表現パターンと品質管理計画を含む。
tito-gh0 starsJan 18, 2026
目的
EHR内の非構造化テキスト(経過記録、臨床サマリー、看護記録等)から研究に必要な臨床イベント・情報を抽出するための仕様を設計する。
当社EHRで利用可能なテキストデータ
| データ種類 | 内容 | 構造化度 | 情報密度 |
|---|
| 経過記録 | 日々の診療記録、医師所見 | 低 | 高 |
| 臨床サマリー | 退院サマリー、紹介状 | 中 | 高 |
| 看護記録 | 患者状態、バイタル、観察 | 低〜中 | 中 |
※画像データ・部門システムデータは利用不可
入力パラメータ
| パラメータ | 必須 | 説明 | 例 |
|---|
| EVENT_TYPE | Yes | 抽出対象イベント種類 |
| adverse_event / response / symptom |
| INDICATION | Yes | 対象疾患 | multiple myeloma |
| SPECIFIC_EVENTS | No | 具体的イベント名 | neutropenia, infection, IRR |
| TEXT_SOURCE | No | テキストソース指定 | progress_notes / summary / all |
イベント抽出フレームワーク
1. 有害事象(Adverse Events)抽出
共通有害事象パターン
adverse_event_extraction:
infusion_related_reaction:
keywords_ja: ["注入反応", "IRR", "輸注反応", "インフュージョンリアクション"]
keywords_en: ["infusion reaction", "IRR"]
context_clues: ["投与中", "投与後", "初回投与"]
severity_markers:
grade_1_2: ["軽度", "中等度", "対症療法で改善"]
grade_3_4: ["重度", "投与中止", "入院", "ステロイド投与"]
neutropenia:
keywords_ja: ["好中球減少", "顆粒球減少", "neutropenia"]
lab_confirmation: "ANC < 1500/μL"
severity_markers:
grade_1: "ANC 1500-2000"
grade_2: "ANC 1000-1500"
grade_3: "ANC 500-1000"
grade_4: "ANC < 500"
infection:
keywords_ja: ["感染", "肺炎", "発熱", "敗血症", "帯状疱疹"]
keywords_en: ["infection", "pneumonia", "sepsis", "herpes zoster"]
pathogen_markers: ["細菌", "ウイルス", "真菌", "COVID"]
severity_markers:
mild: ["外来治療", "経口抗菌薬"]
severe: ["入院", "IV抗菌薬", "ICU"]
thrombocytopenia:
keywords_ja: ["血小板減少", "thrombocytopenia"]
lab_confirmation: "Plt < 100,000/μL"
peripheral_neuropathy:
keywords_ja: ["末梢神経障害", "しびれ", "感覚異常", "neuropathy"]
severity_markers:
grade_1: ["軽度", "日常生活支障なし"]
grade_2: ["中等度", "器具的ADL制限"]
grade_3_4: ["重度", "セルフケアADL制限"]
有害事象メタ情報抽出
ae_metadata:
onset_date:
patterns: ["[0-9]{4}/[0-9]{2}/[0-9]{2}", "○月○日", "Day[0-9]+"]
relative_markers: ["投与後○日", "○クール目", "前回より"]
outcome:
resolved: ["改善", "回復", "軽快", "消失"]
ongoing: ["持続", "継続", "残存"]
fatal: ["死亡", "永眠"]
action_taken:
dose_reduced: ["減量", "dose reduction"]
dose_delayed: ["延期", "スキップ", "休薬"]
discontinued: ["中止", "終了", "off"]
causality:
related: ["関連あり", "因果関係あり", "薬剤性"]
possible: ["可能性あり", "否定できず"]
unlikely: ["関連なし", "因果関係なし"]
2. 効果判定(Response Assessment)抽出
骨髄腫特異的奏効評価
response_extraction:
imwg_response:
stringent_cr:
keywords: ["sCR", "stringent CR", "厳格完全奏効"]
criteria: "免疫固定法陰性 + FLC比正常 + 骨髄形質細胞<5%"
complete_response:
keywords: ["CR", "完全奏効", "complete response"]
criteria: "免疫固定法陰性"
very_good_partial:
keywords: ["VGPR", "非常に良好な部分奏効"]
criteria: "M蛋白90%以上減少"
partial_response:
keywords: ["PR", "部分奏効", "partial response"]
criteria: "M蛋白50%以上減少"
stable_disease:
keywords: ["SD", "安定", "stable disease"]
progressive_disease:
keywords: ["PD", "進行", "増悪", "progression"]
criteria: "M蛋白25%以上増加"
response_context:
assessment_timing: ["○クール後", "○ヶ月時点", "best response"]
assessment_method: ["IMWG基準", "効果判定", "PET-CT"]
3. 症状・状態(Symptoms/Status)抽出
status_extraction:
ecog_ps:
pattern: "(?:PS|ECOG|パフォーマンスステータス)[::\s]*([0-4])"
keywords:
ps_0: ["日常生活制限なし", "通常の活動", "無症状"]
ps_1: ["軽度の症状", "軽作業可", "歩行可能"]
ps_2: ["歩行可能", "自分の身の回り可", "日中50%以上起床"]
ps_3: ["限られた自分の身の回り", "日中50%以上臥床"]
ps_4: ["全く動けない", "完全に臥床", "セルフケア不能"]
symptoms:
pain:
keywords: ["疼痛", "痛み", "骨痛", "腰痛", "NRS"]
scale_pattern: "NRS[::\s]*([0-9]|10)"
fatigue:
keywords: ["倦怠感", "疲労", "だるさ", "疲れ"]
severity: ["軽度", "中等度", "重度"]
appetite:
keywords: ["食欲", "食事摂取", "経口摂取"]
status: ["良好", "低下", "不振", "不良"]
4. 治療関連情報抽出
treatment_extraction:
dose_modification:
reduction:
keywords: ["減量", "dose reduction", "○mg→○mg"]
pattern: "([0-9]+)mg.*(?:から|→).*([0-9]+)mg"
delay:
keywords: ["延期", "スキップ", "休薬", "○日遅れ"]
discontinuation:
keywords: ["中止", "終了", "off treatment"]
reasons:
progression: ["PD", "進行", "増悪"]
toxicity: ["副作用", "毒性", "有害事象"]
patient_choice: ["患者希望", "本人希望"]
death: ["死亡", "永眠"]
other: ["その他", "転院"]
line_of_therapy:
pattern: "([0-9]+)(?:次治療|ライン|line)"
keywords: ["初回治療", "二次治療", "三次治療", "salvage"]
出力フォーマット
# Narrative Event Extraction Specification: {EVENT_TYPE}
## 1. 概要
| 項目 | 値 |
|------|-----|
| 抽出対象イベント | {EVENT_TYPE} |
| 対象薬剤 | {DRUG} |
| 対象疾患 | {INDICATION} |
| テキストソース | {TEXT_SOURCE} |
## 2. 抽出仕様
### 2.1 対象イベント一覧
| イベント | カテゴリ | 優先度 |
|----------|---------|--------|
| ... | ... | High/Medium/Low |
### 2.2 抽出パターン定義
#### イベント1: [イベント名]
```yaml
event_name: "[イベント名]"
02
目的
Sales & Marketing
Open a Pull Request
Open a pull request with proper PR template, test coverage, and review workflow. Guides agents through creating a PR that follows repo conventions, ensures existing behaviors aren't broken, covers new behaviors with tests, and handles review via bot when local testing isn't possible. TRIGGER when user asks to "open a PR", "create a PR", "make a PR", "submit a PR", "open pull request", "push and create PR", or any variation of opening/submitting a pull request.
Significant-Gravitas183.5k