3 điểm bởi mrchypark 2021-10-31 | 4 bình luận | Chia sẻ qua WhatsApp

kiwigo là binding golang của kiwi (https://github.com/bab2min/Kiwi), một bộ phân tích hình thái tiếng Hàn được viết bằng cpp.

Ưu điểm của kiwi có thể kể đến là dễ đăng ký từ điển người dùng và xử lý tốc độ cao.

Trong Golang, có thể tận dụng mã nguồn C thông qua cgo. Rất may là kiwi đã mở sẵn C API nên có thể sử dụng rất hiệu quả.

kiwigo cố gắng phơi bày nguyên trạng giao diện C của kiwi nhiều nhất có thể.

Rất mong nhận được sự quan tâm của mọi người; PR, góp ý, star, like, upvote, bình luận hay bất cứ điều gì đều được chào đón.

Cuối cùng, xin chia sẻ đoạn mã ví dụ có thể chạy được.


package kiwi_test

import (

	"fmt"

	kiwi "github.com/codingpot/kiwigo"

)

func Example() {

	kb := kiwi.NewBuilder("./ModelGenerator", 1 /*=numThread*/, kiwi.KIWI_BUILD_INTEGRATE_ALLOMORPH /*=options*/)

	kb.AddWord("코딩냄비", "NNP", 0)

	k := kb.Build()

	defer k.Close() // don't forget to Close()!

	results, _ := k.Analyze("안녕하세요 코딩냄비입니다. 부글부글.", 1 /*=topN*/, kiwi.KIWI_MATCH_ALL)

	fmt.Println(results)

	// Output:

	// [{[{0 NNG 안녕} {2 XSA 하} {4 EP 시} {3 EC 어요} {6 NNP 코딩냄비} {10 VCP 이} {11 EF ᆸ니다} {13 SF .} {15 NNP 부글부} {18 NNG 글} {19 SF .}] -69.74997}]

}

4 bình luận

 
xguru 2021-11-02

Cảm ơn vì đã công khai! Có vẻ như nó có thể được dùng ở nhiều nơi.

 
mrchypark 2021-11-02

Cảm ơn bạn đã quan tâm. :)

 
kkweon 2021-10-31

Cuối cùng Go cũng đã có trình phân tích hình thái học rồi!!

 
mrchypark 2021-10-31

Đúng vậy! Sẽ thật tuyệt nếu có thể sử dụng nhiều trình phân tích hình thái ở nhiều nơi khác nhau. :)