-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
期待Ernie和hanlp的支持 #3
Comments
@bigbrother666sh 感谢你对项目的支持!我这边可以给出一些方向,我觉得目前只要是PaddleNLP transformers能支持的模型,应该是可以直接套用的。 具体套用的方法:
目前tokenizer不清楚具体的机制不同,如果你可以指出来的话,我可以看看到底需不需要修改。目前我理解的话是不需要修改,直接把pretrained模型的输出使用就可以了。 因为我们团队人比较少,强烈欢迎PR!我最近也有点时间可以一起看看这个事情。 |
另外HanLP的话,我一开始以为不是商用的,所以就没有深入研究。不过感觉应该是可以套用HanLP的word2vec或者glove向量来做DIETClassifier的embedding。 |
hi 我按照你的指导,并替换了适配Ernie3的tokenizer_utils.py 和 tokenizer_utils_base.py,但是启动报错如下:
通过追踪上述报错信息,我发现是因为
这句没有给出 max_length 这个参数所致,新的paddlenlp tokenizer_utils_base.py文件是必须这个参数的,且它也没有给出这个参数的默认值。 所以我的结论是:只要在这里给出合适的max_length就能够成功启动Ernie3(大概率也能适配paddlenlp 2.3了),但我不知道这里的max_length应该给什么值。 |
没记错的话 paddleNLP的库里面有定义max_length,可以试一下用512。 |
非常遗憾,在给定max_length=512时,上面的问题解决了,但是报了新的错误……
|
hi,很高兴的说一句,上面的问题可以简单的通过更改paddlenlp_tokenizer.py 的 126行输入参数解决,
这样的话,就可以完美兼容paddlenlp 2.3了,在2.3下可以调起bert模型 然后,把130行更改为 亦可以成功调起 ernie3.0进行训练 |
但是 |
其实我不太确认 而从实际效果看,用这种改动调起ernie-3.0-base-zh确实比bert有提高,也好于官方自带的jieba方案 |
请问您现在解决了吗? |
哥们,这几天很受你这个项目的启发,之前苦于寻找支持中文的对话意图识别方案,到你这算是解决问题了!
最近百度飞桨新发布了了Ernie3.0 (https://github.com/PaddlePaddle/PaddleNLP)
但我试了下,基于Ernie3.0做tokenizer的机制发生了很大变化,需要升级到Paddlenlp 2.3,(或者替换/paddlenlp/transformers 下面的tokenizer_utils.py,并增加 tokenizer_utils_base.py文件也行)。
然而貌似新的tokenizer跟rasa_paddlenlp目前的机制有点冲突(应该在encoded_inputs那块,但我没太看懂你这部分代码)。
总之期待老兄什么时候有空可以更新一版支持ernie3.0的,看是不是效果能有很大提升。
另外,建议也看下hanlp(https://github.com/hankcs/HanLP),感觉这玩意应该效果比ernie3.0更好。
The text was updated successfully, but these errors were encountered: