如何使字节级令牌生成器不拆分<adjective>令牌?

问题描述

我有带有自定义标记的文本,例如:<adjective>,我正在尝试准备一个不会拆分它们的字节级标记生成器:

tokenizer.pre_tokenizer = ByteLevel()
tokenizer.pre_tokenizer.pre_tokenize("<adjective>")

[('Ġ<',(0,2)),('adjective',(2,11)),('>',(11,12)]

如何添加<adjective>作为特殊令牌,而不是令牌生成器不应拆分的令牌?

解决方法

可以通过以下方式添加拥抱面转换器API中的分词器新令牌:

tokenizer.add_tokens('<adjective>')

这会将”添加为单个令牌。

这还需要将模型更新为:

model.resize_token_embeddings(len(tokenizer))

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...