Skip to main content

🇹🇭 การแปลงเสียงพูดภาษาไทยเป็นข้อความ (ASR) PRO

2 ICต่อ 60 วินาที
v3.0 Active🆕 ต.ค. 2024 POST /v3/store/speech/speech-to-text/pro

ยินดีต้อนรับสู่ Thai ASR PRO - บริการรู้จำเสียงพูดอัตโนมัติภาษาไทยขั้นสูงของเราที่ขับเคลื่อนด้วยแบบจำลองภาษาขนาดใหญ่ (LLMs) เวอร์ชันนี้มอบความแม่นยำที่เหนือกว่าและการถอดเสียงที่คำนึงถึงบริบท พร้อมทั้งรักษาความเร็วในการประมวลผลที่สมเหตุสมผล

iApp Text to Speech API

ทดลองใช้ Demo

ทดลองใช้ AI Demo

เข้าสู่ระบบหรือสร้างบัญชีฟรีเพื่อใช้งาน AI Demo และสำรวจ API ที่ทรงพลังของเรา

รับ 100 เครดิตฟรี (IC) เมื่อสมัครสมาชิก!

โปรโมชันหมดเขต 31 ธันวาคม 2568

Example File (Click to try)

Selected: 2ppl.wav

เริ่มต้นใช้งาน

  1. ข้อกำหนดเบื้องต้น

    • API key จาก บริษัท ไอแอพพ์เทคโนโลยี จำกัด
    • ไฟล์เสียงในรูปแบบที่รองรับ
    • รูปแบบที่รองรับ: MP3, WAV, AAC, M4A
    • ความยาวไฟล์สูงสุด: ไม่เกิน 30 นาที
    • ขนาดไฟล์สูงสุด: 1GB
  2. เริ่มต้นใช้งานอย่างรวดเร็ว

    • การถอดเสียงที่มีความแม่นยำสูงพร้อมการคำนึงถึงบริบท
    • การประมวลผลขั้นสูงด้วย LLM
    • รองรับภาษาไทย
  3. คุณสมบัติหลัก

    • การดึงข้อความจากไฟล์เสียงที่คำนึงถึงบริบท
    • ความแม่นยำที่เพิ่มขึ้นสำหรับสถานการณ์เสียงที่ซับซ้อน
    • การจำแนกผู้พูด (Speaker diarization)
    • รูปแบบการตอบสนอง JSON ที่ยืดหยุ่น
  4. ความปลอดภัยและการปฏิบัติตามข้อกำหนด

    • เป็นไปตาม GDPR และ PDPA
    • ไม่มีข้อมูลเก็บรักษาหลังการประมวลผล
วิธีรับ API Key?

กรุณาไปที่หน้า การจัดการ API Key เพื่อดู API Key ที่มีอยู่ของคุณ หรือขอ API Key ใหม่

API Endpoints

EndpointMethodคำอธิบายราคา
/v3/store/speech/speech-to-text/pro
Legacy: /asr/v3/pro
POSTแปลงเสียงพูดภาษาไทยเป็นข้อความ (Pro model with LLM)2 IC ต่อ 60 วินาที

เอกสารอ้างอิง API

Endpoint

POST https://api.iapp.co.th/v3/store/speech/speech-to-text/pro

Headers

  • apikey (จำเป็น): API key ของคุณสำหรับการยืนยันตัวตน
  • Headers เพิ่มเติมสร้างโดย FormData

Request Parameters

ParameterTypeคำอธิบาย
file*File (.mp3, .wav, .aac, .m4a)ไฟล์เสียงที่จะถอดเสียง (ไม่เกิน 30 นาที)
chunk_sizeIntegerขนาด Chunk ของเสียง (แนะนำ: 7)

ตัวอย่างโค้ด

Curl

curl -X POST https://api.iapp.co.th/v3/store/speech/speech-to-text/pro \
-H "apikey: YOUR_API_KEY" \
-F "file=@/path/to/file.jpg"

Python

import requests

url = "https://api.iapp.co.th/v3/store/speech/speech-to-text/pro"

payload = {'use_asr_pro': '1', 'chunk_size': '7'} # ตั้งค่าเป็น '1' สำหรับ iApp ASR PRO
files=[
('file',('{YOUR_UPLOADED_FILE}',open('{YOUR_UPLOADED_FILE_PATH}','rb'),'application/octet-stream'))
]
headers = {
'apikey': '{YOUR_API_KEY}'
}

response = requests.request("POST", url, headers=headers, data=payload, files=files)

print(response.text)

Javascript

const axios = require("axios")
const FormData = require("form-data")
const fs = require("fs")
let data = new FormData()
data.append("file", fs.createReadStream("YOUR_UPLOADED_FILE"))
data.append("use_asr_pro", "1") // ตั้งค่าเป็น '1' สำหรับ iApp ASR PRO
data.append("chunk_size", "7")

let config = {
method: "post",
maxBodyLength: Infinity,
url: "https://api.iapp.co.th/v3/store/speech/speech-to-text/pro",
headers: {
apikey: "{YOUR_API_KEY}",
...data.getHeaders(),
},
data: data,
}

axios
.request(config)
.then((response) => {
console.log(JSON.stringify(response.data))
})
.catch((error) => {
console.log(error)
})

PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.iapp.co.th/v3/store/speech/speech-to-text/pro',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('file'=> new CURLFILE('{YOUR_UPLOADED_FILE}'),
'use_asr_pro' => '1',
'chunk_size' => '7'),
CURLOPT_HTTPHEADER => array(
'apikey: {YOUR_API_KEY}'
),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Swift

let parameters = [
[
"key": "file",
"src": "{YOUR_UPLOADED_FILE}",
"type": "file"
],
[
"key": "use_asr_pro",
"value": "1",
"type": "text"
],
[
"key": "chunk_size",
"value": "7",
"type": "text"
]] as [[String: Any]]

let boundary = "Boundary-\(UUID().uuidString)"
var body = Data()
var error: Error? = nil
for param in parameters {
if param["disabled"] != nil { continue }
let paramName = param["key"]!
body += Data("--\(boundary)\r\n".utf8)
body += Data("Content-Disposition:form-data; name=\"\(paramName)\"".utf8)
if param["contentType"] != nil {
body += Data("\r\nContent-Type: \(param["contentType"] as! String)".utf8)
}
let paramType = param["type"] as! String
if paramType == "text" {
let paramValue = param["value"] as! String
body += Data("\r\n\r\n\(paramValue)\r\n".utf8)
} else {
let paramSrc = param["src"] as! String
let fileURL = URL(fileURLWithPath: paramSrc)
if let fileContent = try? Data(contentsOf: fileURL) {
body += Data("; filename=\"\(paramSrc)\"\r\n".utf8)
body += Data("Content-Type: \"content-type header\"\r\n".utf8)
body += Data("\r\n".utf8)
body += fileContent
body += Data("\r\n".utf8)
}
}
}
body += Data("--\(boundary)--\r\n".utf8);
let postData = body


var request = URLRequest(url: URL(string: "https://api.iapp.co.th/v3/store/speech/speech-to-text/pro")!,timeoutInterval: Double.infinity)
request.addValue("{YOUR_API_KEY}", forHTTPHeaderField: "apikey")
request.addValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")

request.httpMethod = "POST"
request.httpBody = postData

let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else {
print(String(describing: error))
return
}
print(String(data: data, encoding: .utf8)!)
}

task.resume()

Kotlin

val client = OkHttpClient()
val mediaType = "text/plain".toMediaType()
val body = MultipartBody.Builder().setType(MultipartBody.FORM)
.addFormDataPart("file","{YOUR_UPLOADED_FILE}",
File("{YOUR_UPLOADED_FILE_PATH}").asRequestBody("application/octet-stream".toMediaType()))
.addFormDataPart("use_asr_pro","1")
.addFormDataPart("chunk_size","7")
.build()
val request = Request.Builder()
.url("https://api.iapp.co.th/v3/store/speech/speech-to-text/pro")
.post(body)
.addHeader("apikey", "{YOUR_API_KEY}")
.build()
val response = client.newCall(request).execute()

Java

OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
.addFormDataPart("file","{YOUR_UPLOADED_FILE}",
RequestBody.create(MediaType.parse("application/octet-stream"),
new File("{YOUR_UPLOADED_FILE_PATH}")))
.addFormDataPart("use_asr_pro","1")
.addFormDataPart("chunk_size","7")
.build();
Request request = new Request.Builder()
.url("https://api.iapp.co.th/v3/store/speech/speech-to-text/pro")
.method("POST", body)
.addHeader("apikey", "{YOUR_API_KEY}")
.build();
Response response = client.newCall(request).execute();

Dart

var headers = {
'apikey': '{YOUR_API_KEY}'
};
var request = http.MultipartRequest('POST', Uri.parse('https://api.iapp.co.th/v3/store/speech/speech-to-text/pro'));
request.fields.addAll({
'use_asr_pro': '1',
'chunk_size': '7'
});
request.files.add(await http.MultipartFile.fromPath('file', '{YOUR_UPLOADED_FILE'));
request.headers.addAll(headers);

http.StreamedResponse response = await request.send();

if (response.statusCode == 200) {
print(await response.stream.bytesToString());
}
else {
print(response.reasonPhrase);
}

ความแม่นยำและประสิทธิภาพ

ความแม่นยำโดยรวม

ผลการทดสอบกับชุดข้อมูลทดสอบภาษาไทยจากชุดข้อมูล Mozilla Common Voice เราประเมินประสิทธิภาพของ iApp ASR PRO ในชุดข้อมูลทดสอบสองเวอร์ชันที่แตกต่างกัน

เงื่อนไขการทดสอบ

  1. ชุดข้อมูลที่ไม่เคยเห็นมาก่อน
  2. ภาษาไทยเท่านั้น
  3. ความหลากหลายของผู้พูด: ชาย, หญิง, เด็ก

ชุดข้อมูลทดสอบ Mozilla Common Voice 17.0 ภาษาไทย

เยี่ยมชมชุดข้อมูลบน Hugging Face

ผลลัพธ์:

  • ขนาดชุดข้อมูลทดสอบ: 11,042 ตัวอย่าง
  • อัตราข้อผิดพลาดของคำเฉลี่ย (WER): 0.0801 หรือ 8.01%
  • อัตราข้อผิดพลาดของตัวอักษรเฉลี่ย (CER): 0.0219 หรือ 2.19%
  • ความแม่นยำเฉลี่ยตาม WER: 91.99%
  • ความแม่นยำเฉลี่ยตาม CER: 97.81%

ความเร็วในการประมวลผล

  • ปรับให้เหมาะสมเพื่อความแม่นยำมากกว่าความเร็ว

ราคา

ชื่อบริการ AI APIEndpointIC ต่อวินาทีOn-Premise
การแปลงเสียงพูดภาษาไทยเป็นข้อความ (ASR) iapp-asr-v3-en [Pro Model]2 IC/60 วินาทีติดต่อ
iapp-asr-v3-th-en [Pro Model]2 IC/60 วินาที