swift-sentencepiece

在 Swift 中使用 SentencePiece 进行分词和反分词。

安装

将以下内容添加到你的 Package.swift 文件。在 package dependencies 中添加

dependencies: [
    .package(url: "https://github.com/jkrukowski/swift-sentencepiece", from: "0.0.3")
]

在 target dependencies 中添加

dependencies: [
    .product(name: "SentencepieceTokenizer", package: "swift-sentencepiece")
]

用法

编码 (Encoding)

import SentencepieceTokenizer

// load tokenizer from file
let tokenizer = try SentencepieceTokenizer(modelPath: "/path/to/sentencepiece.model")

// encode text
let encoded = tokenizer.encode("Hello, world!")
print(encoded)

// decode tokens
let decoded = tokenizer.decode([35378, 4, 8999, 38])
print(decoded)

命令行演示

要运行命令行演示,请使用以下命令

swift run sentencepiece-cli --model-path <model-path> [--text <text>]

命令行选项

--model-path <model-path>
--text <text>           (default: Hello, world!)
-h, --help              Show help information.

代码格式化

本项目使用 swift-format。要格式化代码,请运行

swift format . -i -r --configuration .swift-format

鸣谢

本项目包装了原始实现 SentencePiece