gpt-4o-transcribe-diarize
GPT-4o Transcribe Diarize chuyển lời nói đã ghi âm thành văn bản với các đoạn có nhãn người nói và mốc thời gian. Mô hình phù hợp với cuộc họp, phỏng vấn và bản ghi nhiều người, khi bản chép lời cần cho biết ai nói lúc nào, kèm tùy chọn mẫu giọng ngắn cho người nói đã biết.
Về mô hình
Mô tả này trình bày khả năng của mô hình. Đầu vào, đầu ra và tùy chọn có trên Ailoot được liệt kê bên dưới cho phương thức đã chọn.
GPT-4o Transcribe Diarize là mô hình nhận dạng giọng nói tự động của OpenAI với phân đoạn theo người nói tích hợp. Mô hình gắn các đoạn âm thanh đã được chép lời với những người nói khác nhau trong hội thoại. Kết quả hữu ích là bản chép lời được tổ chức theo người nói và thời gian, thay vì chỉ một khối từ liên tục. Mô hình dành cho lời nói đã ghi âm cần nhãn người nói, chẳng hạn cuộc họp, phỏng vấn hoặc thảo luận nhiều người.
Chuẩn bị bản ghi hoàn chỉnh
Hãy cung cấp bản ghi cần chép lời. Quy trình tệp được tài liệu hóa nhận MP3, MP4, MPEG, MPGA, M4A, WAV và WebM, với giới hạn kích thước tệp 25 MB. Giữ bản ghi nguồn để có thể kiểm tra lượt nói, tên hoặc cụm từ chưa rõ theo âm thanh thực tế.
Với cuộc họp, hãy giữ trình tự hội thoại, thay vì cắt những khoảng dừng ngắn giúp phân biệt lượt nói. Với phỏng vấn, giữ câu hỏi và câu trả lời cùng nhau khi nhiệm vụ cần mối liên hệ giữa chúng. Chuẩn bị âm thanh cần làm lời nói nghe rõ mà không xóa thông tin quan trọng đối với kết quả có nhãn người nói.
Đây là quy trình chép lời từ tệp. Xử lý bản ghi hoàn chỉnh khác với nhận dạng luồng âm thanh vẫn đang tới; khả năng gán nhãn người nói của mô hình không được hỗ trợ trong phiên chép lời Realtime.
Yêu cầu bản chép lời có nhãn người nói
Định dạng kết quả diarized_json trả về các đoạn với nhãn định danh người nói cùng thời điểm bắt đầu và kết thúc. Mỗi đoạn cũng chứa phần văn bản được chép lời của nó. Hãy giữ các trường này cùng nhau để liên kết từ ngữ với phần tương ứng của bản ghi.
Để bản chép lời cuộc họp hữu ích, hãy giữ trình tự đoạn và hiển thị lời của từng người nói cùng mốc thời gian. Nhiệm vụ sau có thể dùng bản chép lời để lập biên bản hoặc danh sách việc cần làm, nhưng bản thân phân đoạn theo người nói không quyết định cuộc họp đã thống nhất điều gì và không tạo bản tóm tắt đã được xác minh.
Nhãn người nói mô tả cách mô hình nhóm lời nói. Hãy kiểm tra chỗ chuyển lượt khi mọi người ngắt lời nhau, nói ngắn hoặc nói chồng lấp. Kết quả có cấu trúc tốt giúp điều hướng và rà soát, nhưng một lần quy lời cụ thể cho người nói vẫn có thể cần nghe âm thanh gốc để kiểm tra.
Mẫu tham chiếu cho người nói đã biết
Quy trình được tài liệu hóa có thể nhận tối đa bốn mẫu tham chiếu người nói có tên. Mỗi mẫu là đoạn âm thanh ngắn dài 2–10 giây, dùng định dạng được hỗ trợ cho tệp tải lên chính. Tên và mẫu được cung cấp cùng nhau để liên kết các đoạn với người nói đã biết.
Hãy chuẩn bị mẫu có rõ giọng của người nói dự kiến và giữ tên nhất quán với các nhãn mong muốn trong bản chép lời. Với phỏng vấn, mẫu của người dẫn có thể giúp tổ chức kết quả có nhãn người nói mà không biến mọi người tham gia thành nhãn ẩn danh. Mẫu là đầu vào để quy lời cho người nói; nó không phải thao tác nhân bản giọng nói tổng quát hay bằng chứng về danh tính một người.
Đừng nhầm đặt tên người nói với chỉnh sửa những từ đã được nói. Đầu ra hữu ích vẫn cần giữ nội dung bản ghi và thứ tự lượt nói thực tế.
Chia đoạn và giới hạn mô hình
Với âm thanh dài hơn 30 giây, nhà sản xuất yêu cầu chiến lược chia đoạn, bằng chia đoạn tự động hoặc cấu hình phát hiện hoạt động giọng nói. Yêu cầu này không phải thời lượng ghi âm tối đa. Nó mô tả cách đầu vào dài hơn được chia để xử lý.
Thẻ mô hình liệt kê cửa sổ ngữ cảnh 16,000 token và đầu ra tối đa 2,000 token. Đây là giới hạn token của mô hình, tách biệt với giới hạn tải tệp 25 MB và ngưỡng chia đoạn của quy trình tệp. Không nên đổi chúng thành số phút tự đặt áp dụng cho mọi bản ghi.
Hãy giữ mốc thời gian và định danh đoạn khi ghép hoặc kiểm tra bản chép lời dài hơn. Nếu bản ghi đã được chia trước khi gửi, hãy giữ liên hệ của từng phần với âm thanh gốc để không nhầm dấu thời gian cục bộ với vị trí trong toàn bộ hội thoại.
Truyền phát các đoạn đã hoàn tất
Quy trình chép lời tệp có thể truyền phát văn bản trong khi xử lý bản ghi. Khi truyền phát với nhãn người nói, đoạn đã hoàn tất phát ra sự kiện đoạn. Các phần văn bản tăng thêm có mã định danh đoạn nhưng không chứa thông tin gán người nói tạm thời; người nói được gán khi đoạn hoàn tất.
Sự phân biệt này quan trọng khi hiển thị. Hãy thể hiện văn bản tạm thời và lượt nói đã hoàn tất như hai trạng thái khác nhau, thay vì gắn nhãn người nói chưa chắc chắn trước khi mô hình hoàn tất đoạn. Giữ kết quả hoàn chỉnh khi cần bản chép lời để chỉnh sửa hoặc phân tích về sau.
Phạm vi mô hình và đầu ra
Hồ sơ này là mô hình phân đoạn theo người nói, tách biệt với chép lời GPT-4o thông thường, chép lời Mini, tổng hợp giọng nói và các mô hình hội thoại trực tiếp. Mô hình không hỗ trợ prompt chép lời; hãy giữ việc rà soát hoặc sửa thuật ngữ thành bước riêng, kiểm tra theo âm thanh gốc. Giao diện của nhà sản xuất chép lời từ âm thanh đã ghi thành văn bản. Mô hình không tạo phản hồi âm thanh hoặc dịch bản ghi qua quy trình dịch âm thanh riêng.
Hãy dùng mô hình cho bản chép lời cần cả nội dung lẫn cấu trúc người nói. Kiểm tra tên, thuật ngữ kỹ thuật, con số, ranh giới lượt nói và việc quy lời cho người nói theo bản ghi. Giữ âm thanh, định dạng kết quả đã chọn, mẫu tham chiếu và bản chép lời hoàn chỉnh để lần sửa có thể tập trung vào một cụm từ cụ thể hoặc một lần gán người nói.
Ailoot Ultra · Nhận dạng giọng nói POST /v1/audio/transcriptions openai/gpt-4o-transcribe-diarize
openai/gpt-4o-transcribe-diarize
openai/gpt-4o-transcribe-diarizeBắt đầu
GPT-4o Transcribe Diarize chuyển lời nói đã ghi âm thành văn bản với các đoạn có nhãn người nói và mốc thời gian. Mô hình phù hợp với cuộc họp, phỏng vấn và bản ghi nhiều người, khi bản chép lời cần cho biết ai nói lúc nào, kèm tùy chọn mẫu giọng ngắn cho người nói đã biết.
- Đầu vào được chấp nhận
- Âm thanh
- Kết quả
- transcription
Có trên Ailoot · đầu vào & phương thức
Ailoot Ultra · Nhận dạng giọng nói POST /v1/audio/transcriptions
- Đầu vào
audio- Đầu ra
transcription- Định dạng đầu ra
- json
| Trường | Loại | Yêu cầu | Giá trị & giới hạn | Mặc định |
|---|---|---|---|---|
Trườngmodel | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn openai/gpt-4o-transcribe-diarize | Mặc định— |
Trườngfile | Loạifile | Yêu cầuBắt buộc | Giá trị & giới hạn Số byte tối đa: 26.214.400 Loại MIME: audio/mpeg Phần mở rộng tệp: .mp3 Thời lượng tối đa, giây: 30 | Mặc định— |
Trườngresponse_format | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn diarized_json | Mặc định— |
Tổ hợp tư liệu đầu vào
diarized_transcription
Tham số phương thức và vòng đời
| Tham số | Hợp đồng |
|---|---|
Tham sốcontent_type | Hợp đồngmultipart/form-data |
Tham sốrequired | Hợp đồngmodel, file, response_format |
Tham sốfile_formats | Hợp đồngmp3 |
Tham sốmax_audio_seconds | Hợp đồng30 |
Tham sốmax_bytes | Hợp đồng26214400 |
Tham sốresponse_format | Hợp đồngdiarized_json |
Tham sốother_options | Hợp đồngfalse |
Tham sốmaterial_types | Hợp đồngaudio |
Tham sốadditional_properties | Hợp đồngfalse |
Tham sốform_string_maximum_bytes | Hợp đồng256 |
Bí danh phương thức: /audio/transcriptions
Vòng đời: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Giá trị task_id thực tế đã trả về hoặc bản ghi trong thư viện nội dung đa phương tiện
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Dùng bản ghi âm thực tế và định dạng phù hợp.
Giữ lại toàn bộ bản phiên âm, các đoạn, ID người nói và thông tin thời gian.
Bảng giá
Thông tin biểu giá không bổ sung tùy chọn yêu cầu. Các tham số được hỗ trợ nằm trong phương thức đã chọn.
- Chế độ nhanh
- Chưa chỉ định Khi chọn chế độ nhanh
- Chế độ Flex
- Chưa chỉ định Khi chọn chế độ flex
- Mức độ suy luận tối đa
- Chưa chỉ định Khi áp dụng mức điều chỉnh mặc định (default) cho mức độ suy luận tối đa
Mức phí Ailoot
Giá theo cấu hình
Đối chiếu từng khoản phí với điều kiện hiển thị. Dùng một mức phí cho mỗi nhóm cấu hình thay thế.
| Cấu hình | Biểu mức phí | Đơn vị tính phí | Phí |
|---|---|---|---|
| Cấu hìnhGiá cơ sở cho token | Biểu mức phíMức phí cơ bản | Đơn vị tính phí— | Phí Đầu vào · Token đầu vào — / 1K token Đầu ra · Token đầu ra — / 1K token Đầu vào · Đọc bộ nhớ đệm — / 1K token Đầu vào · Ghi bộ nhớ đệm — / 1K token Đầu vào · Ghi bộ nhớ đệm, 1 giờ — / 1K token |
| Cấu hìnhUltra | Biểu mức phí— | Đơn vị tính phí/ 1K token âm thanh | Phí Đầu vào · Token âm thanh đầu vào $0.012 / 1K token âm thanh |
| Cấu hìnhUltra | Biểu mức phí— | Đơn vị tính phí/ 1K token âm thanh | Phí Đầu ra · Token âm thanh đầu ra $0.02 / 1K token âm thanh |
Ailoot tạm giữ một khoản ước tính trước yêu cầu. Sau khi có kết quả, phí cuối cùng được quyết toán theo mức sử dụng đo được. Việc quyết toán khi truyền luồng dùng bản ghi mức sử dụng cuối cùng. Cách hoạt động của cơ chế tạm giữ và quyết toán →
Ví dụ yêu cầu
Ailoot Ultra · Nhận dạng giọng nói
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
Nhận và lưu kết quả
Ailoot Ultra · Nhận dạng giọng nói
json
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Lượt đọc nội dung khác
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
Lưu tất cả kết quả đã hoàn tất
Lưu mọi phản hồi hoàn chỉnh, tệp và phần nội dung được trả về.
Giữ lại toàn bộ JSON, không chỉ văn bản; giữ nguyên mọi đoạn/người nói/dấu thời gian hiện có và mã định danh tác vụ/tài sản thực tế.
Nếu cần kiểm tra phản hồi gốc
Giữ lại operation_id/X-Client-Request-ID gốc để đối soát mà không gửi lại yêu cầu; không có tuyến truy vấn trạng thái riêng cho âm thanh.
Trường phản hồi
| Trường | Loại |
|---|---|
Trườngtext | Loạistring |
Trườngsegments[] | Loạiobject |
Trườngtask_id | Loạistring |
Trườngasset_url | Loạistring |
Trườngusage | Loạiobject |
Trườngsegments[].speaker | Loạistring |
Trườngsegments[].start | Loạinumber |
Trườngsegments[].end | Loạinumber |
Lỗi và bước tiếp theo
| Phản hồi | Điều kiện | Bước tiếp theo |
|---|---|---|
Phản hồi400 · invalid_request_error | Điều kiệnTrường bắt buộc, cách biểu diễn tài liệu hoặc giá trị tham số không hợp lệ | Bước tiếp theoSửa các trường được chỉ ra trước khi gửi yêu cầu tạo mới. |
Phản hồiserver_error | Điều kiệnPhản hồi trả về cho biết thao tác hoặc kết quả cần được kiểm tra | Bước tiếp theoGiữ lại ID thao tác/tác vụ gốc đã trả về, các header của yêu cầu và toàn bộ phản hồi; tiếp tục truy xuất thao tác gốc đó bằng các phương thức được hỗ trợ. Không gửi lại yêu cầu tạo. |
Bí danh
Bí danh mô hình
Ailoot Ultra openai/gpt-4o-transcribe-diarize
Bí danh đường dẫn phương thức
/audio/transcriptions
ID gọi liên quan
FAQ · gpt-4o-transcribe-diarize
- Có những đầu vào và kết quả nào?
POST /v1/audio/transcriptions·openai/gpt-4o-transcribe-diarize:audio→transcription- Yêu cầu sử dụng những trường nào?
POST /v1/audio/transcriptions·openai/gpt-4o-transcribe-diarize:model,file,response_format