本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
开始 AWS HealthScribe 转录作业
您可以使用 AWS CLI 或启动 AWS HealthScribe 作业 AWS SDKs。
此示例使用start-medical-scribe-job
aws transcribe start-medical-scribe-job \ --region
us-west-2
\ --medical-scribe-job-namemy-first-medical-scribe-job
\ --media MediaFileUri=s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac
\ --output-bucket-nameamzn-s3-demo-bucket
\ --DataAccessRoleArn=arn:aws:iam::111122223333:role/ExampleRole
\ --settings ShowSpeakerLabels=false,ChannelIdentification=true \ --channel-definitions ChannelId=0,ParticipantRole=CLINICIAN ChannelId=1,ParticipantRole=PATIENT
以下是另一个使用start-medical-scribe-job
aws transcribe start-medical-scribe-job \ --region
us-west-2
\ --cli-input-jsonfile://filepath/my-first-medical-scribe-job.json
my-first-medical-scribe-job.json
文件包含以下请求正文。
{
"MedicalScribeJobName": "my-first-medical-scribe-job
",
"Media": {
"MediaFileUri": "s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac
"
},
"OutputBucketName": "amzn-s3-demo-bucket
",
"DataAccessRoleArn": "arn:aws:iam::111122223333:role/ExampleRole
",
"Settings": {
"ShowSpeakerLabels": false,
"ChannelIdentification": true
},
"ChannelDefinitions": [
{
"ChannelId": 0,
"ParticipantRole":"CLINICIAN"
}, {
"ChannelId": 1,
"ParticipantRole":"PATIENT"
}
]
}
以下示例使用发出 start_medic 适用于 Python (Boto3) 的 AWS SDK al_scribe_job 请求
from __future__ import print_functionimport timeimport boto3
transcribe = boto3.client('transcribe', 'us-west-2
')
job_name = "my-first-medical-scribe-job
"
job_uri = "s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac
"
transcribe.start_medical_scribe_job(
MedicalScribeJobName = job_name,
Media = {
'MediaFileUri': job_uri
},
OutputBucketName = 'amzn-s3-demo-bucket
',
DataAccessRoleArn = 'arn:aws:iam::111122223333:role/ExampleRole
',
Settings = {
'ShowSpeakerLabels': false,
'ChannelIdentification': true
},
ChannelDefinitions = [
{
'ChannelId': 0,
'ParticipantRole': 'CLINICIAN'
}, {
'ChannelId': 1,
'ParticipantRole': 'PATIENT'
}
]
)
while True:
status = transcribe.get_medical_scribe_job(MedicalScribeJobName = job_name)
if status['MedicalScribeJob']['MedicalScribeJobStatus'] in ['COMPLETED', 'FAILED']:
break
print("Not ready yet...")
time.sleep(5)
print(status)
注意
AWS 管理控制台目前不支持 AWS HealthScribe 作业。
转录作业输出示例
除了转录以外,StartMedicalScribeJob
请求还生成一个单独的临床文档文件。这两个文件均采用 JSON 格式,存储在您在请求中指定的输出位置。下面是每种输出类型的示例:
AWS HealthScribe 记录文件(来自StartMedicalScribeJob
请求)的格式如下:
{
"Conversation": {
"ConversationId": "sampleConversationUUID
",
"JobName": "sampleJobName
",
"JobType": "ASYNC",
"LanguageCode": "en-US",
"ClinicalInsights": [
{
"Attributes": [],
"Category": "MEDICAL_CONDITION",
"InsightId": "insightUUID1",
"InsightType": "ClinicalEntity",
"Spans": [
{
"BeginCharacterOffset": 12,
"Content": "pain",
"EndCharacterOffset": 15,
"SegmentId": "uuid1"
}
],
"Type": "DX_NAME"
},
{
"Attributes": [],
"Category": "TEST_TREATMENT_PROCEDURE",
"InsightId": "insightUUID2",
"InsightType": "ClinicalEntity",
"Spans": [
{
"BeginCharacterOffset": 4,
"Content": "mammogram",
"EndCharacterOffset": 12,
"SegmentId": "uuid2"
}
],
"Type": "TEST_NAME"
},
{
"Attributes": [],
"Category": "TEST_TREATMENT_PROCEDURE",
"InsightId": "insightUUID3",
"InsightType": "ClinicalEntity",
"Spans": [
{
"BeginCharacterOffset": 15,
"Content": "pap smear",
"EndCharacterOffset": 23,
"SegmentId": "uuid3"
}
],
"Type": "TEST_NAME"
},
{
"Attributes": [],
"Category": "MEDICATION",
"InsightId": "insightUUID4",
"InsightType": "ClinicalEntity",
"Spans": [
{
"BeginCharacterOffset": 28,
"Content": "phentermine",
"EndCharacterOffset": 38,
"SegmentId": "uuid4"
}
],
"Type": "GENERIC_NAME"
},
{
"Attributes": [
{
"AttributeId": "attributeUUID1",
"Spans": [
{
"BeginCharacterOffset": 38,
"Content": "high",
"EndCharacterOffset": 41,
"SegmentId": "uuid5"
}
],
"Type": "TEST_VALUE"
}
],
"Category": "TEST_TREATMENT_PROCEDURE",
"InsightId": "insightUUID5",
"InsightType": "ClinicalEntity",
"Spans": [
{
"BeginCharacterOffset": 14,
"Content": "weight",
"EndCharacterOffset": 19,
"SegmentId": "uuid6"
}
],
"Type": "TEST_NAME"
},
{
"Attributes": [],
"Category": "ANATOMY",
"InsightId": "insightUUID6",
"InsightType": "ClinicalEntity",
"Spans": [
{
"BeginCharacterOffset": 60,
"Content": "heart",
"EndCharacterOffset": 64,
"SegmentId": "uuid7"
}
],
"Type": "SYSTEM_ORGAN_SITE"
}
],
"TranscriptItems": [
{
"Alternatives": [
{
"Confidence": 0.7925,
"Content": "Okay"
}
],
"BeginAudioTime": 0.16,
"EndAudioTime": 0.6,
"Type": "PRONUNCIATION"
},
{
"Alternatives": [
{
"Confidence": 0,
"Content": "."
}
],
"BeginAudioTime": 0.17,
"EndAudioTime": 0.9,
"Type": "PUNCTUATION"
},
{
"Alternatives": [
{
"Confidence": 1,
"Content": "Good"
}
],
"BeginAudioTime": 0.61,
"EndAudioTime": 0.92,
"Type": "PRONUNCIATION"
},
{
"Alternatives": [
{
"Confidence": 1,
"Content": "afternoon"
}
],
"BeginAudioTime": 0.92,
"EndAudioTime": 1.54,
"Type": "PRONUNCIATION"
},
{
"Alternatives": [
{
"Confidence": 0,
"Content": "."
}
],
"BeginAudioTime": 0,
"EndAudioTime": 0,
"Type": "PUNCTUATION"
},
{
"Alternatives": [
{
"Confidence": 0.9924,
"Content": "You"
}
],
"BeginAudioTime": 1.55,
"EndAudioTime": 1.88,
"Type": "PRONUNCIATION"
},
{
"Alternatives": [
{
"Confidence": 1,
"Content": "lost"
}
],
"BeginAudioTime": 1.88,
"EndAudioTime": 2.19,
"Type": "PRONUNCIATION"
},
{
"Alternatives": [
{
"Confidence": 1,
"Content": "one"
}
],
"BeginAudioTime": 2.19,
"EndAudioTime": 2.4,
"Type": "PRONUNCIATION"
},
{
"Alternatives": [
{
"Confidence": 1,
"Content": "lb"
}
],
"BeginAudioTime": 2.4,
"EndAudioTime": 2.97,
"Type": "PRONUNCIATION"
}
],
"TranscriptSegments": [
{
"BeginAudioTime": 0.16,
"Content": "Okay.",
"EndAudioTime": 0.6,
"ParticipantDetails": {
"ParticipantRole": "CLINICIAN_0"
},
"SectionDetails": {
"SectionName": "SUBJECTIVE"
},
"SegmentId": "uuid1"
},
{
"BeginAudioTime": 0.61,
"Content": "Good afternoon.",
"EndAudioTime": 1.54,
"ParticipantDetails": {
"ParticipantRole": "CLINICIAN_0"
},
"SectionDetails": {
"SectionName": "OTHER"
},
"SegmentId": "uuid2"
},
{
"BeginAudioTime": 1.55,
"Content": "You lost one lb.",
"EndAudioTime": 2.97,
"ParticipantDetails": {
"ParticipantRole": "CLINICIAN_0"
},
"SectionDetails": {
"SectionName": "SUBJECTIVE"
},
"SegmentId": "uuid3"
},
{
"BeginAudioTime": 2.98,
"Content": "Yeah, I think it, uh, do you feel more energy?",
"EndAudioTime": 6.95,
"ParticipantDetails": {
"ParticipantRole": "CLINICIAN_0"
},
"SectionDetails": {
"SectionName": "SUBJECTIVE"
},
"SegmentId": "uuid5"
},
{
"BeginAudioTime": 6.96,
"Content": "Yes.",
"EndAudioTime": 7.88,
"ParticipantDetails": {
"ParticipantRole": "CLINICIAN_0"
},
"SectionDetails": {
"SectionName": "SUBJECTIVE"
},
"SegmentId": "uuid6"
},
{
"BeginAudioTime": 7.89,
"Content": "Uh, how about craving for the carbohydrate or sugar or fat or anything?",
"EndAudioTime": 17.93,
"ParticipantDetails": {
"ParticipantRole": "CLINICIAN_0"
},
"SectionDetails": {
"SectionName": "SUBJECTIVE"
},
"SegmentId": "uuid7"
}
]
}
}
以下是另一个使用start-medical-scribe-job
aws transcribe start-medical-scribe-job \ --region
us-west-2
\ --cli-input-jsonfile://filepath/my-first-medical-scribe-job.json
my-first-medical-scribe-job.json
文件包含以下请求正文。
{
"MedicalScribeJobName": "my-first-medical-scribe-job
",
"Media": {
"MediaFileUri": "s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac
"
},
"OutputBucketName": "amzn-s3-demo-bucket
",
"DataAccessRoleArn": "arn:aws:iam::111122223333:role/ExampleRole
",
"Settings": {
"ShowSpeakerLabels": false,
"ChannelIdentification": true
},
"ChannelDefinitions": [
{
"ChannelId": 0,
"ParticipantRole":"CLINICIAN"
}, {
"ChannelId": 1,
"ParticipantRole":"PATIENT"
}
]
}
文档见解文件(来自 StartMedicalScribeJob
请求)的格式如下:
{
"ClinicalDocumentation": {
"Sections": [
{
"SectionName": "CHIEF_COMPLAINT",
"Summary": [
{
"EvidenceLinks": [
{
"SegmentId": "uuid1"
},
{
"SegmentId": "uuid2"
},
{
"SegmentId": "uuid3"
},
{
"SegmentId": "uuid4"
},
{
"SegmentId": "uuid5"
},
{
"SegmentId": "uuid6"
}
],
"SummarizedSegment": "Weight loss."
}
]
},
{
"SectionName": "HISTORY_OF_PRESENT_ILLNESS",
"Summary": [
{
"EvidenceLinks": [
{
"SegmentId": "uuid7"
},
{
"SegmentId": "uuid8"
},
{
"SegmentId": "uuid9"
},
{
"SegmentId": "uuid10"
}
],
"SummarizedSegment": "The patient is seen today for a follow-up of weight loss."
},
{
"EvidenceLinks": [
{
"SegmentId": "uuid11"
},
{
"SegmentId": "uuid12"
},
{
"SegmentId": "uuid13"
}
],
"SummarizedSegment": "They report feeling more energy and craving carbohydrates, sugar, and fat."
},
{
"EvidenceLinks": [
{
"SegmentId": "uuid14"
},
{
"SegmentId": "uuid15"
},
{
"SegmentId": "uuid16"
}
],
"SummarizedSegment": "The patient is up to date on their mammogram and pap smear."
},
{
"EvidenceLinks": [
{
"SegmentId": "uuid17"
},
{
"SegmentId": "uuid18"
},
{
"SegmentId": "uuid19"
},
{
"SegmentId": "uuid20"
}
],
"SummarizedSegment": "The patient is taking phentermine and would like to continue."
}
]
},
{
"SectionName": "REVIEW_OF_SYSTEMS",
"Summary": [
{
"EvidenceLinks": [
{
"SegmentId": "uuid21"
},
{
"SegmentId": "uuid22"
}
],
"SummarizedSegment": "Patient reports intermittent headaches, occasional chest pains but denies any recent fevers or chills."
},
{
"EvidenceLinks": [
{
"SegmentId": "uuid23"
},
{
"SegmentId": "uuid24"
}
],
"SummarizedSegment": "No recent changes in vision, hearing, or any respiratory complaints."
}
]
},
{
"SectionName": "PAST_MEDICAL_HISTORY",
"Summary": [
{
"EvidenceLinks": [
{
"SegmentId": "uuid25"
},
{
"SegmentId": "uuid26"
}
],
"SummarizedSegment": "Patient has a history of hypertension and was diagnosed with Type II diabetes 5 years ago."
},
{
"EvidenceLinks": [
{
"SegmentId": "uuid27"
},
{
"SegmentId": "uuid28"
}
],
"SummarizedSegment": "Underwent an appendectomy in the early '90s and had a fracture in the left arm during childhood."
}
]
},
{
"SectionName": "ASSESSMENT",
"Summary": [
{
"EvidenceLinks": [
{
"SegmentId": "uuid29"
},
{
"SegmentId": "uuid30"
}
],
"SummarizedSegment": "Weight loss"
}
]
},
{
"SectionName": "PLAN",
"Summary": [
{
"EvidenceLinks": [
{
"SegmentId": "uuid31"
},
{
"SegmentId": "uuid32"
},
{
"SegmentId": "uuid33"
},
{
"SegmentId": "uuid34"
}
],
"SummarizedSegment": "For the condition of Weight loss: The patient was given a 30-day supply of phentermine and was advised to follow up in 30 days."
}
]
}
]
}
}