Add Go API examples for adding punctuations to text. (#1478)

This commit is contained in:
Fangjun Kuang
2024-10-27 09:04:05 +08:00
committed by GitHub
parent 4a4659aa4f
commit 052b8645ba
9 changed files with 74 additions and 6 deletions

View File

@@ -0,0 +1,3 @@
module add-punctuation
go 1.12

View File

@@ -0,0 +1,31 @@
package main
import (
sherpa "github.com/k2-fsa/sherpa-onnx-go/sherpa_onnx"
"log"
)
func main() {
log.SetFlags(log.LstdFlags | log.Lmicroseconds)
config := sherpa.OfflinePunctuationConfig{}
config.Model.CtTransformer = "./sherpa-onnx-punct-ct-transformer-zh-en-vocab272727-2024-04-12/model.onnx"
config.Model.NumThreads = 1
config.Model.Provider = "cpu"
punct := sherpa.NewOfflinePunctuation(&config)
defer sherpa.DeleteOfflinePunc(punct)
textArray := []string{
"这是一个测试你好吗How are you我很好thank you are you ok谢谢你",
"我们都是木头人不会说话不会动",
"The African blogosphere is rapidly expanding bringing more voices online in the form of commentaries opinions analyses rants and poetry",
}
log.Println("----------")
for _, text := range textArray {
newText := punct.AddPunct(text)
log.Printf("Input text: %v", text)
log.Printf("Output text: %v", newText)
log.Println("----------")
}
}

View File

@@ -0,0 +1,14 @@
#!/usr/bin/env bash
set -ex
if [ ! -d ./sherpa-onnx-punct-ct-transformer-zh-en-vocab272727-2024-04-12 ]; then
curl -SL -O https://github.com/k2-fsa/sherpa-onnx/releases/download/punctuation-models/sherpa-onnx-punct-ct-transformer-zh-en-vocab272727-2024-04-12.tar.bz2
tar xvf sherpa-onnx-punct-ct-transformer-zh-en-vocab272727-2024-04-12.tar.bz2
rm sherpa-onnx-punct-ct-transformer-zh-en-vocab272727-2024-04-12.tar.bz2
fi
go mod tidy
go build
./add-punctuation