Terjemahan mesin · Versi asli bahasa Inggris
p99 dan VAP - Belok-mengambil model
p99 memperkirakan probabilitas dari satu saluran audio. VAP meramalkan aktivitas percakapan dari pengguna dan saluran agen yang disinkronkan. Aplikasi menggunakan nilai ini untuk memutuskan kapan jawaban atau interupsi.
Bangun SDK dari sumber untuk APIs ini. Swift menggunakan SpeechVAD; C++ Memerlukan SPEECH _ CORE _ WITH _ ONNX = ON. Android API gunakan ONNX RuntimeIni standar APIs meninggalkan baku pipa yang ada di tempat.
Model
| p99 turn-1-mini | 5.3M CoreML · Float32 | 16 kHz 160 ms 1 ch | Apache-2.0 |
|---|---|---|---|
| VAP (otoSpeech) | 5.8M CoreML / ONNX · Float32 | 16 kHz 20 s 2 ch | CC BY 4.0 / MIT |
Swift API
p99 buffer tidak lengkap. Setiap langkah 160 ms langkah kembali delapan frame 20. Gunakan revailableSeventies untuk waktu keputusan, dan reset sesi antara percakapan.
import SpeechVAD
let p99 = try await P99TurnModel.fromPretrained()
let session = try p99.createSession()
let frames = try session.pushAudio(pcm16k)
for frame in frames {
print(frame.probability, frame.availableAfterSeconds)
}
try session.reset()
let vap = try await VAPModel.fromPretrained()
let forecast = try vap.forecast(userAudio: userPcm, agentAudio: agentPcm)
print(forecast.pNow, forecast.pFuture, forecast.voiceActivity)VAP menggunakan yang terbaru 20 detik di 16 kHz. Pasokan saluran equal- panjang dan nol untuk sebuah agen tidak aktif. Masukan pengurutan menerima keheningan terkemuka. Setiap perkiraan menghitung ulang jendela; pilih interval permintaan yang cocok dengan perangkat.
C++
#include <speech_core/models/onnx_vap.h>
speech_core::OnnxVap model("models/vap.onnx");
auto forecast = model.forecast(user.data(), agent.data(), user.size(), 16000);
// p_now[0]: user, p_now[1]: agent
// p_future and voice_activity use the same channel order.Android
val directory = ModelManager.ensureVapModels(context)
withContext(Dispatchers.Default) {
VoiceActivityProjection(VoiceActivityProjectionConfig(directory)).use { model ->
val forecast = model.forecast(userPcm, agentPcm)
println(forecast.userNearTerm)
println(forecast.agentNearTerm)
}
}Unduhan
- P99-Turn-1-Mini-CoreML 22 MB
- VAP- OTO- CoreML 39 MB
- VAP- OTO- ONNX 40 MB
Hasil tanda-tangan
Batas
- turn-1-mini oleh p99lab Apache-2.0
- VAP otoSpeech DIKUNCI OLEH 4.0 Proyeksi VoiceActivity@@ MIT