问题标签 [huggingface-tokenizers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
deep-learning - Hugging Face Transformers 上的“TextInputSequence must be str”错误
我对 HuggingFace 很陌生,我在笔记本上遇到了这个错误“<strong>TextInputSequence must be str”,这对我在各种拥抱脸模型上做一些练习很有帮助。笔记本上的样板代码抛出了这个错误(我猜)由于拥抱脸的 API或其他东西的一些变化。所以我想知道是否有人可以建议我可以对代码进行一些更改以解决错误。
只需运行笔记本的所有单元即可轻松重现该错误。
链接:Colab 笔记本
这是引发错误的行 -
这是错误-
huggingface-transformers - Huggingface transformer export tokenizer and model
I'm currently working on a text summarizer powered by the Huggingface transformers library. The summarization process has to be done on premise, as such I have the following code (close to documentation):
#xA;My problem is that I cannot load the model in memory and have my server expose an API which can directly use model
and tokenizer
, I would like both of them to be initialized in a first process, and made available in a second one (one that will expose an HTTP API). I saw that you can export the model on the filesystem, but again, I don't have access to it (locked k8s environment), and I'd need to store it in a specific database.
Is it possible to export both the model
and the tokenizer
as string/buffer/something storable in a Database ?
Thanks a lot
python - 拥抱面部标记器无法正确加载文件
我正在尝试使用 HuggingFace 的 BartModel 架构从头开始训练翻译模型。我正在使用 ByteLevelBPETokenizer 来标记事物。
我面临的问题是,当我在训练后保存标记器时,它没有正确加载,即使它显然创建了正确的 vocab.json 和 merges.txt 文件。
这就是我训练和保存标记器的方式。打印语句打印:
但是,当我在通过以下代码行训练我的模型时尝试加载标记器时:
然后 print 语句打印以下内容:
现在这对我来说很奇怪,因为 vocab_size 应该是 8000 而不是零,因此它基本上停止工作。如果我重新训练并直接使用它而不保存和加载,那么它可以工作,但效率不高。
这是 vocab.json(截断)的视图。
这是对 merges.txt(截断)的视图。
如您所见,文件是正常的。对此问题的任何帮助将不胜感激。
tensorflow - 尝试在自定义 TF 网络中使用 huggingface TF longformer 变压器时出现 Tensorflow“索引超出范围”错误
我正在尝试将 longformer 的 Transformer TF 模型从 huggingface 调整为更大的三类分类模型,我已经编译了模型,但我无法在其上运行测试示例。模型和尝试输出如下:
哪个输出:
我将 4096 用于输入层,因为这是 longformer 论文中指定的输入长度。我尝试使用不同的值,而不是 64,我尝试在不指定索引的情况下迭代值(使用 for 语句,其中错误表示无法迭代不知道第一个维度)。
我对此很陌生,感觉我缺少一些基本的东西。
python - 如何在解码为 [UNK] bert tokenizer 的 vocab.txt 中添加标记
我正在解码来自bert tokenizer的标记化标记,它为 € 符号提供[UNK]。但我尝试在 vocab.txt 文件中添加 ##€ 标记。但它没有反映在预测结果中,与之前的结果相同,它再次给出[UNK]。请让我知道要解决这个问题,我是否需要再次微调模型以反映预测的变化。到目前为止,我一直在避免微调,因为它需要 10 多个小时。提前致谢
python - 拥抱脸管道:bert NER 任务抛出 RuntimeError:张量 a (921) 的大小必须与非单维 1 的张量 b (512) 的大小匹配
我尝试建立一个德国ner,通过huggingface管道用bert进行预训练。对于某些文本,以下代码针对“ner = classifier(text)”行抛出错误“RuntimeError:张量 a (921) 的大小必须与非单维 1 处的张量 b (512) 的大小相匹配”。
我已经对stackoverflow进行了一些研究,这是我发现的最相似的问题:张量a(707)的大小必须与非单维1的张量b(512)的大小相匹配
解决方案听起来不错,我只是不知道在使用拥抱脸管道时可以在哪里指定这些设置。我需要对代码进行哪些更改才能使其正常工作?
谢谢!
nlp - len(tokenizer) 和 tokenizer.vocab_size 有什么区别
我正在尝试在预训练的 HuggingFace Transformers 模型的词汇表中添加一些新词。我做了以下更改标记器的词汇表并增加了模型的嵌入大小:
但是在我的语料库上训练模型并保存后,我发现保存的分词器词汇量没有改变。再次检查后发现上述代码并没有改变词汇大小(tokenizer.vocab_size 仍然相同),只有 len(tokenizer) 发生了变化。
所以现在我的问题是;tokenizer.vocab_size 和 len(tokenizer) 有什么区别?
python - 具有自定义模型的自定义拥抱脸标记器
我正在研究具有称为 SMILES 的表示的分子数据。一个示例分子字符串看起来像Cc1ccccc1N1C(=O)NC(=O)C(=Cc2cc(Br)c(N3CCOCC3)o2)C1=O
。
现在,我想要一个Tokenizer
可以与 Huggingface 转换器 API 一起使用的自定义。我也不想使用现有的标记器模型等BPE
。我希望通过正则表达式解析 SMILES 字符串以将单个字符作为标记,如下所示:
执行上述操作相当简单,但我需要一个可以与BERT
Huggingface API 一起使用的标记器。另外,我不想使用小写转换,但仍然使用 BERT。