gpt-4o-transcribe-diarize
GPT-4o Transcribe Diarize เปลี่ยนเสียงพูดที่บันทึกไว้เป็นข้อความพร้อมส่วนที่มีป้ายกำกับผู้พูดและเวลา เหมาะกับการประชุม การสัมภาษณ์ และการบันทึกหลายคนที่บทถอดเสียงต้องแสดงว่าใครพูดเมื่อใด โดยเลือกให้เสียงอ้างอิงสั้น ๆ ของผู้พูดที่รู้จักได้
เกี่ยวกับโมเดล
คำอธิบายนี้ครอบคลุมความสามารถของโมเดล อินพุต เอาต์พุต และตัวเลือกที่ใช้ได้ใน Ailoot แสดงด้านล่างตามเมธอดที่เลือก
GPT-4o Transcribe Diarize เป็นโมเดลรู้จำเสียงพูดอัตโนมัติของ OpenAI ที่มีการแบ่งแยกผู้พูดในตัว โมเดลเชื่อมส่วนเสียงที่ถอดเป็นข้อความกับผู้พูดต่างคนในการสนทนา ผลลัพธ์ที่มีประโยชน์คือบทถอดเสียงที่จัดตามผู้พูดและเวลา แทนการมีเพียงข้อความยาวต่อเนื่อง เหมาะกับเสียงพูดที่บันทึกไว้ซึ่งต้องมีป้ายกำกับผู้พูด เช่น การประชุม การสัมภาษณ์ หรือการอภิปรายหลายคน
เตรียมการบันทึกที่เสร็จแล้ว
ให้ไฟล์บันทึกที่ต้องการถอดเสียง กระบวนการไฟล์ตามเอกสารรับ MP3, MP4, MPEG, MPGA, M4A, WAV และ WebM โดยจำกัดขนาดไฟล์ที่ 25 MB เก็บเสียงต้นทางไว้เพื่อเทียบช่วงผลัดพูด ชื่อ หรือวลีที่ไม่ชัดกับเสียงจริง
สำหรับการประชุม ให้รักษาลำดับการสนทนา แทนการตัดช่วงหยุดสั้น ๆ ที่ช่วยแยกผลัดพูด สำหรับการสัมภาษณ์ ให้เก็บคำถามและคำตอบไว้ด้วยกันเมื่องานต้องใช้ความสัมพันธ์นั้น การเตรียมเสียงควรทำให้ได้ยินคำพูดโดยไม่ลบข้อมูลที่สำคัญต่อผลลัพธ์ซึ่งมีป้ายกำกับผู้พูด
นี่คือกระบวนการถอดเสียงจากไฟล์ การประมวลผลการบันทึกที่เสร็จแล้วและการรู้จำสตรีมเสียงที่ยังส่งเข้ามาเป็นคนละงาน การระบุผู้พูดของโมเดลไม่รองรับในเซสชันถอดเสียง Realtime
ขอบทถอดเสียงที่มีป้ายกำกับผู้พูด
รูปแบบผลลัพธ์ diarized_json ส่งคืนส่วนที่มีป้ายระบุตัวผู้พูดและเวลาเริ่มกับสิ้นสุด แต่ละส่วนมีข้อความที่ถอดได้ด้วย เก็บฟิลด์เหล่านี้ไว้ด้วยกันเพื่อเชื่อมถ้อยคำกับช่วงที่เกี่ยวข้องของการบันทึก
บทถอดเสียงการประชุมที่มีประโยชน์ควรรักษาลำดับส่วนและแสดงคำพูดของแต่ละคนพร้อมเวลา งานภายหลังอาจใช้บทถอดเสียงเพื่อจัดทำรายงานการประชุมหรือรายการสิ่งที่ต้องทำ แต่การแบ่งแยกผู้พูดเองไม่ได้ตัดสินว่าที่ประชุมตกลงอะไรหรือสร้างบทสรุปที่ตรวจสอบแล้ว
ป้ายผู้พูดอธิบายการจัดกลุ่มเสียงของโมเดล ตรวจจุดเปลี่ยนที่คนพูดแทรก พูดสั้น ๆ หรือพูดทับกัน ผลลัพธ์ที่มีโครงสร้างดีช่วยในการค้นหาช่วงเสียงและตรวจทาน แต่การระบุว่าใครเป็นผู้พูดในแต่ละจุดอาจยังต้องฟังเสียงต้นฉบับ
สื่ออ้างอิงผู้พูดที่รู้จัก
กระบวนการตามเอกสารรับสื่ออ้างอิงผู้พูดที่ระบุชื่อได้สูงสุดสี่รายการ แต่ละรายการเป็นคลิปเสียงสั้น 2–10 วินาทีในรูปแบบที่การอัปโหลดหลักรองรับ ให้ชื่อพร้อมเสียงอ้างอิงเพื่อเชื่อมส่วนต่าง ๆ กับผู้พูดที่รู้จัก
เตรียมเสียงอ้างอิงที่มีเสียงของผู้พูดเป้าหมายชัดเจน และใช้ชื่อให้ตรงกับป้ายที่ต้องการในบทถอดเสียง สำหรับการสัมภาษณ์ เสียงอ้างอิงของผู้ดำเนินรายการช่วยจัดผลลัพธ์ที่ระบุผู้พูดโดยไม่ต้องให้ทุกคนเป็นป้ายไม่ระบุชื่อ สื่ออ้างอิงเป็นอินพุตสำหรับระบุผู้พูด ไม่ใช่การโคลนเสียงทั่วไปหรือหลักฐานยืนยันตัวบุคคล
อย่าสับสนการตั้งชื่อผู้พูดกับการแก้คำที่พูดจริง เอาต์พุตที่มีประโยชน์ยังต้องรักษาเนื้อหาและลำดับผลัดพูดจริงของการบันทึก
การแบ่งส่วนและขีดจำกัดโมเดล
สำหรับเสียงยาวกว่า 30 วินาที ผู้พัฒนากำหนดให้ใช้กลยุทธ์แบ่งส่วน โดยเป็นการแบ่งอัตโนมัติหรือการตั้งค่าตรวจจับกิจกรรมเสียงพูด ข้อกำหนดนี้ไม่ใช่ระยะเวลาบันทึกสูงสุด แต่บอกวิธีแบ่งอินพุตที่ยาวเพื่อประมวลผล
การ์ดโมเดลระบุหน้าต่างบริบท 16,000 โทเคน และเอาต์พุตสูงสุด 2,000 โทเคน นี่คือขีดจำกัดโทเคนของโมเดล ซึ่งแยกจากเพดานอัปโหลดไฟล์ 25 MB และเกณฑ์เริ่มแบ่งส่วน ไม่ควรแปลงเป็นจำนวนนาทีที่สมมติขึ้นว่าใช้กับทุกการบันทึก
รักษาเวลาและรหัสส่วนเมื่อประกอบหรือตรวจบทถอดเสียงที่ยาว หากแบ่งการบันทึกก่อนส่ง ให้เก็บความสัมพันธ์ของแต่ละชิ้นกับเสียงต้นฉบับ เพื่อไม่สับสนเวลาภายในชิ้นกับตำแหน่งในการสนทนาทั้งหมด
สตรีมส่วนที่เสร็จสมบูรณ์
กระบวนการถอดเสียงจากไฟล์สตรีมข้อความระหว่างประมวลผลการบันทึกได้ เมื่อสตรีมพร้อมป้ายผู้พูด ส่วนที่เสร็จแล้วจะสร้างเหตุการณ์ของส่วน ข้อความที่ทยอยเปลี่ยนมีรหัสส่วน แต่ไม่มีการระบุผู้พูดบางส่วน ผู้พูดจะถูกกำหนดเมื่อส่วนนั้นเสร็จสมบูรณ์
ความแตกต่างนี้สำคัญต่อการแสดงผล แสดงข้อความชั่วคราวและผลัดพูดที่สรุปแล้วเป็นสถานะต่างกัน แทนการติดป้ายผู้พูดที่ยังไม่แน่นอนก่อนโมเดลทำส่วนให้เสร็จ เก็บผลลัพธ์ที่เสร็จแล้วเมื่อจำเป็นต้องใช้บทถอดเสียงสำหรับแก้ไขหรือวิเคราะห์ภายหลัง
ขอบเขตโมเดลและเอาต์พุต
โปรไฟล์นี้เป็นโมเดลแบ่งแยกผู้พูด แยกจากการถอดเสียง GPT-4o ปกติ การถอดเสียง Mini การสังเคราะห์เสียงพูด และโมเดลสนทนาสด ไม่รองรับพรอมป์ต์ถอดเสียง ให้ตรวจศัพท์หรือแก้ไขเป็นขั้นตอนแยกที่เทียบกับเสียงต้นฉบับ อินเทอร์เฟซของผู้พัฒนาถอดเสียงที่บันทึกไว้เป็นข้อความ ไม่สร้างคำตอบเสียงหรือแปลการบันทึกผ่านกระบวนการแปลเสียงที่แยกต่างหาก
ใช้กับบทถอดเสียงที่ต้องการทั้งเนื้อหาและโครงสร้างผู้พูด ตรวจชื่อ ศัพท์เทคนิค ตัวเลข ขอบเขตผลัดพูด และการระบุผู้พูดกับการบันทึก เก็บเสียง รูปแบบผลลัพธ์ที่เลือก สื่ออ้างอิง และบทถอดเสียงที่เสร็จแล้ว เพื่อให้การแก้ไขเจาะจงวลีหรือการระบุผู้พูดหนึ่งจุดได้
Ailoot Ultra · การรู้จำเสียงพูด POST /v1/audio/transcriptions openai/gpt-4o-transcribe-diarize
openai/gpt-4o-transcribe-diarize
openai/gpt-4o-transcribe-diarizeเริ่มต้น
GPT-4o Transcribe Diarize เปลี่ยนเสียงพูดที่บันทึกไว้เป็นข้อความพร้อมส่วนที่มีป้ายกำกับผู้พูดและเวลา เหมาะกับการประชุม การสัมภาษณ์ และการบันทึกหลายคนที่บทถอดเสียงต้องแสดงว่าใครพูดเมื่อใด โดยเลือกให้เสียงอ้างอิงสั้น ๆ ของผู้พูดที่รู้จักได้
- อินพุตที่รองรับ
- เสียง
- ผลลัพธ์
- transcription
ใช้งานได้ใน Ailoot · อินพุตและเมธอด
Ailoot Ultra · การรู้จำเสียงพูด POST /v1/audio/transcriptions
- ขาเข้า
audio- ขาออก
transcription- รูปแบบเอาต์พุต
- json
| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
|---|---|---|---|---|
ฟิลด์model | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด openai/gpt-4o-transcribe-diarize | ค่าเริ่มต้น— |
ฟิลด์file | ประเภทfile | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด จำนวนไบต์สูงสุด: 26,214,400 ประเภท MIME: audio/mpeg นามสกุลไฟล์: .mp3 ความยาวสูงสุด หน่วยวินาที: 30 | ค่าเริ่มต้น— |
ฟิลด์response_format | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด diarized_json | ค่าเริ่มต้น— |
ชุดผสมของสื่ออินพุต
diarized_transcription
พารามิเตอร์และวงจรการทำงานของเมธอด
| พารามิเตอร์ | ข้อกำหนด |
|---|---|
พารามิเตอร์content_type | ข้อกำหนดmultipart/form-data |
พารามิเตอร์required | ข้อกำหนดmodel, file, response_format |
พารามิเตอร์file_formats | ข้อกำหนดmp3 |
พารามิเตอร์max_audio_seconds | ข้อกำหนด30 |
พารามิเตอร์max_bytes | ข้อกำหนด26214400 |
พารามิเตอร์response_format | ข้อกำหนดdiarized_json |
พารามิเตอร์other_options | ข้อกำหนดfalse |
พารามิเตอร์material_types | ข้อกำหนดaudio |
พารามิเตอร์additional_properties | ข้อกำหนดfalse |
พารามิเตอร์form_string_maximum_bytes | ข้อกำหนด256 |
ชื่ออื่นของเมธอด: /audio/transcriptions
วงจรการทำงาน: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · ค่า task_id ที่ส่งกลับมาจริง หรือระเบียนในคลังสื่อ
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
ใช้เสียงบันทึกจริงและรูปแบบที่ตรงกัน
เก็บข้อความถอดเสียงทั้งหมด ช่วงข้อความ ID ผู้พูด และเวลา
ราคา
ข้อมูลอัตราราคาไม่ได้เพิ่มตัวเลือกคำขอ พารามิเตอร์ที่รองรับระบุไว้สำหรับเมธอดที่เลือก
- โหมดรวดเร็ว
- ไม่ได้ระบุ เมื่อเลือกโหมดรวดเร็ว
- โหมดยืดหยุ่น
- ไม่ได้ระบุ เมื่อเลือกโหมด flex
- ระดับการใช้เหตุผลสูงสุด
- ไม่ได้ระบุ เมื่อใช้การปรับตามค่าเริ่มต้น (default) สำหรับระดับการใช้เหตุผลสูงสุด
อัตราค่าบริการ Ailoot
ราคาตามการตั้งค่า
เทียบค่าบริการแต่ละรายการกับเงื่อนไขที่แสดง เลือกใช้อัตราเดียวสำหรับแต่ละชุดการตั้งค่าที่เป็นตัวเลือกทดแทนกัน
| การตั้งค่า | ตารางอัตราค่าบริการ | หน่วยคิดค่าบริการ | ค่าบริการ |
|---|---|---|---|
| การตั้งค่าอัตราค่าบริการโทเคนพื้นฐาน | ตารางอัตราค่าบริการอัตราพื้นฐาน | หน่วยคิดค่าบริการ— | ค่าบริการ ขาเข้า · โทเค็นอินพุต — / 1K โทเค็น ขาออก · โทเค็นเอาต์พุต — / 1K โทเค็น ขาเข้า · การอ่านแคช — / 1K โทเค็น ขาเข้า · การเขียนแคช — / 1K โทเค็น ขาเข้า · การเขียนแคช, 1 ชั่วโมง — / 1K โทเค็น |
| การตั้งค่าUltra | ตารางอัตราค่าบริการ— | หน่วยคิดค่าบริการ/ 1K โทเค็นเสียง | ค่าบริการ ขาเข้า · โทเคนเสียงขาเข้า $0.012 / 1K โทเค็นเสียง |
| การตั้งค่าUltra | ตารางอัตราค่าบริการ— | หน่วยคิดค่าบริการ/ 1K โทเค็นเสียง | ค่าบริการ ขาออก · โทเคนเสียงขาออก $0.02 / 1K โทเค็นเสียง |
Ailoot กันยอดเงินประมาณการไว้ก่อนส่งคำขอ หลังได้ผลลัพธ์ จะคิดค่าบริการสุดท้ายตามการใช้งานที่วัดได้ การคิดค่าบริการแบบสตรีมใช้บันทึกการใช้งานสุดท้าย วิธีกันยอดเงินและคิดค่าบริการสุดท้าย →
ตัวอย่างคำขอ
Ailoot Ultra · การรู้จำเสียงพูด
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_AUDIO_FILE:?Set the path to your actual MP3 recording}"
export AILOOT_AUDIO_FILE
python3 - <<'PY_REQUEST'
import os
from pathlib import Path
p=Path(os.environ["AILOOT_AUDIO_FILE"])
if not p.is_file() or p.suffix.lower()!=".mp3":raise SystemExit("Choose an existing MP3 recording")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" \
--form-string model=openai/gpt-4o-transcribe-diarize -F "file=@$AILOOT_AUDIO_FILE" --form-string response_format=diarized_json \
-D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("result.json").read_text())))
PY_RESULT
รับและบันทึกผลลัพธ์
Ailoot Ultra · การรู้จำเสียงพูด
json
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
การอ่านเนื้อหาแบบอื่น
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('result.json').read_text())
urls=[]
if isinstance(r.get('asset_url'),str) and r['asset_url']:urls.append(('transcript',r['asset_url']))
for label,path in urls:
u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
target=Path('owned-'+label+'.bin')
subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
เก็บผลลัพธ์ที่เสร็จสมบูรณ์ทั้งหมด
เก็บทุกการตอบกลับ ไฟล์ และส่วนเนื้อหาที่ส่งกลับมาอย่างครบถ้วน
เก็บ JSON ทั้งหมด ไม่ใช่เฉพาะข้อความ คงช่วงข้อความ/ผู้พูด/เวลาทุกรายการที่มีและตัวตนงาน/แอสเซ็ตจริงไว้
เมื่อต้องตรวจสอบการตอบกลับต้นฉบับ
เก็บ operation_id/X-Client-Request-ID เดิมไว้เพื่อกระทบยอดโดยไม่ส่งคำขอซ้ำ ไม่มีเส้นทางเฉพาะสำหรับตรวจสอบสถานะงานเสียงเป็นระยะ
ฟิลด์การตอบกลับ
| ฟิลด์ | ประเภท |
|---|---|
ฟิลด์text | ประเภทstring |
ฟิลด์segments[] | ประเภทobject |
ฟิลด์task_id | ประเภทstring |
ฟิลด์asset_url | ประเภทstring |
ฟิลด์usage | ประเภทobject |
ฟิลด์segments[].speaker | ประเภทstring |
ฟิลด์segments[].start | ประเภทnumber |
ฟิลด์segments[].end | ประเภทnumber |
ข้อผิดพลาดและขั้นตอนถัดไป
| การตอบกลับ | เงื่อนไข | ขั้นตอนถัดไป |
|---|---|---|
การตอบกลับ400 · invalid_request_error | เงื่อนไขฟิลด์จำเป็น รูปแบบการแทนข้อมูล หรือค่าพารามิเตอร์ไม่ถูกต้อง | ขั้นตอนถัดไปแก้ฟิลด์ที่ระบุก่อนส่งคำขอสร้างครั้งใหม่ |
การตอบกลับserver_error | เงื่อนไขการตอบกลับที่ได้รับระบุว่าต้องตรวจสอบการดำเนินการหรือผลลัพธ์ | ขั้นตอนถัดไปเก็บ ID การดำเนินการ/งานที่ส่งกลับมาแต่เดิม ส่วนหัวของคำขอ และการตอบกลับไว้ แล้วอ่านข้อมูลการดำเนินการเดิมนั้นต่อด้วยวิธีที่รองรับ ห้ามส่งคำขอสร้างซ้ำ |
ชื่ออื่น
ชื่ออื่นของโมเดล
Ailoot Ultra openai/gpt-4o-transcribe-diarize
ชื่อพาธเมธอดอื่น
/audio/transcriptions
ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล
FAQ · gpt-4o-transcribe-diarize
- มีอินพุตและผลลัพธ์ใดบ้าง?
POST /v1/audio/transcriptions·openai/gpt-4o-transcribe-diarize:audio→transcription- คำขอใช้ฟิลด์ใดบ้าง?
POST /v1/audio/transcriptions·openai/gpt-4o-transcribe-diarize:model,file,response_format