Chinese-LLaMA-Alpaca icon indicating copy to clipboard operation
Chinese-LLaMA-Alpaca copied to clipboard

词表合并问题

Open jamestch opened this issue 1 year ago • 8 comments

请教各位大佬:我在领域中文语料上训练了基于sentencepiece的中文词表myly.model,请问与LLaMa原来的词表tokenizer.model如何进行合并?

jamestch avatar Apr 11 '23 17:04 jamestch

利用sentencepiece提供的api修改,具体可以看 https://github.com/google/sentencepiece/issues/121 和 https://github.com/google/sentencepiece/issues/426

airaria avatar Apr 12 '23 00:04 airaria

利用sentencepiece提供的api修改,具体可以看 google/sentencepiece#121google/sentencepiece#426

感谢大佬指导!再请教您个问题:sentencepiece文件myly.model可以手动增加一个token进去作为词表吗?比如myly.model文件之前没有[PAD]这个token,我怎么通过python程序加到sentencepiece的myly.model文件里面去呢

jamestch avatar Apr 13 '23 02:04 jamestch

利用sentencepiece提供的api修改,具体可以看 google/sentencepiece#121google/sentencepiece#426

感谢大佬指导!再请教您个问题:sentencepiece文件myly.model可以手动增加一个token进去作为词表吗?比如myly.model文件之前没有[PAD]这个token,我怎么通过python程序加到sentencepiece的myly.model文件里面去呢

可以,参看 google/sentencepiece#121 中的操作:要添加的话m.pieces.append(xxx)就可以了。

airaria avatar Apr 13 '23 04:04 airaria

这个确实可以参考那来俩链接可以合并的

baketbek avatar Apr 17 '23 06:04 baketbek

您好我想问下,合并的过程去重是如何操作的?

这个确实可以参考那来俩链接可以合并的

Dzg0309 avatar Apr 17 '23 06:04 Dzg0309

通过sentencepiece指定BPE分词来训练词表,训练完了会得到*.model的文件。原始llama词表是tokenizer.model。自己写代码通过m.pieces.append(xxx)来合并两个词表(去重),作者提供的Chinese_llama也有tokenizer.model文件,你可以自己打出来看一下就知道了,其实就是简单的append+去重(QAQ)

ehion avatar Apr 17 '23 07:04 ehion

通过sentencepiece指定BPE分词来训练词表,训练完了会得到*.model的文件。原始llama词表是tokenizer.model。自己写代码通过m.pieces.append(xxx)来合并两个词表(去重),作者提供的Chinese_llama也有tokenizer.model文件,你可以自己打出来看一下就知道了,其实就是简单的append+去重(QAQ)

是这样

airaria avatar Apr 17 '23 08:04 airaria

我们稍后会更新合并词表的代码和合并用的20K中文词表,有疑问的可以参考。

airaria avatar Apr 17 '23 08:04 airaria

不同语料上统计的score,不可比吧?

wlike avatar May 06 '23 04:05 wlike