我正在使用Anaconda,python 3.7,windows 10。
我试图用https://huggingface.co/transformers/在我的env上安装变压器。我知道我必须安装了或者是TF,我已经安装了--就像在anaconda导航环境中看到的那样。
我会得到许多类型的错误,这取决于我卸载和重新安装的火把和变压器的位置(anaconda /提示)。最后一次尝试使用conda安装电筒、火炬、-c和conda安装-c康达锻造变压器,我得到了一个错误:
from transformers import BertTokenizer
bert_tokenizer = BertTokenizer.from_pretrained('bert-base-uncased', do_lower_case=True)
def tok(dataset):
input_ids = []
attention_masks = []
sentences = dataset.Answer2EN.values
labels = dataset.Class.values
for sent in sentences:
encoded_sent = bert_tokenizer.encode(sent,
add_special_tokens=True,
max_length = 64,
pad_to_max_length =True)TypeError:_tokenize()得到了一个意外的关键字参数'pad_to_max_length‘
有人知道使用Anaconda安全安装变压器吗?谢谢
发布于 2020-06-23 19:36:05
问题是,conda只提供2.1.1版本(存储库信息)中的转换器库,而这个版本没有pad_to_max_length参数。如果有不同的参数,我不想查找它,但是您可以简单地填充结果(这只是一个整数列表):
from transformers import BertTokenizer
bert_tokenizer = BertTokenizer.from_pretrained('bert-base-uncased', do_lower_case=True)
sentences = ['this is just a test', 'this is another test']
max_length = 64
for sent in sentences:
encoded_sent = bert_tokenizer.encode(sent,
add_special_tokens=True,
max_length = max_length)
encoded_sent.extend([0]* (max_length - len(encoded_sent)))
###your other stuff在我看来,更好的选择是创建一个新的conda环境,并通过pip而不是conda安装所有的东西。这将允许您使用最新的变压器版本(2.11)。
发布于 2022-03-25 17:34:43
正如cronoik已经提到的,conda只安装了2.1.1版本的变压器,尽管后来的版本似乎是可用的(参见:https://anaconda.org/conda-forge/transformers/files)
对于conda来说,解决它的办法是,它也可以通过链接来安装。
因此,我使用以下命令安装了最新版本:
conda install https://anaconda.org/conda-forge/transformers/4.16.2/download/noarch/transformers-4.16.2-pyhd8ed1ab_0.tar.bz2只需浏览它们的存储库和右click>copy链接目标即可
编辑:我注意到,cronoik的回答是在同一时间,condas存储库实际上还没有提供任何其他版本。然而,在我回答时,它确实提供了其他版本,但是,如果没有指定其他版本,则仍然只安装2.1.1版本。
发布于 2022-04-29 02:46:29
答:洪为我工作,但在收到错误后,我也需要更新打包版本:“huggingface 0.5.1需要packaging>=20.9,但是打包20.4是不兼容的”。
另一个职位已经通过运行以下程序解决了这个问题:
pip install --upgrade huggingface-hubhttps://stackoverflow.com/questions/62538079
复制相似问题