Issue 1:
Environment info

transformers version: 4.6.1

Platform: Darwin-20.4.0-x86_64-i386-64bit

Python version: 3.7.5

PyTorch version (GPU?): 1.7.1 (False)

Tensorflow version (GPU?): 2.4.1 (False)

Using GPU in script?: no

Using distributed or parallel set-up in script?: no

Who can help

@LysandreJik

@patrickvonplaten

Information

Model I am using (Bert, XLNet ...): GPT-2

The problem arises when using:

the official example scripts: (give details below)

my own modified scripts: (give details below)

The tasks I am working on is:

an official GLUE/SQUaD task: (give the name)

my own task or dataset: (give details below)

To reproduce

I have noticed that there are quite a few duplicate tokens in the tokenizer. Out of the vocab size of 50257 there are 353 duplicate tokens by my crude calculation. Am I doing anything wrong here?

VOCAB_SIZE = 50257
tokenizer = GPT2Tokenizer.from_pretrained('gpt2')

all_tokens = set()
duplicates = []
for i in range(VOCAB_SIZE):
x = tokenizer.decode(i).encode('utf8')
if x not in all_tokens:
all_tokens.add(x)
else:
print(f'{i}\t\t {x}')
duplicates.append(x)

When I print len(duplicates) I get 353. The output from this loop is

95	b'\xef\xbf\xbd'
96	b'\xef\xbf\xbd'
97	b'\xef\xbf\xbd'
98	b'\xef\xbf\xbd'
99	b'\xef\xbf\xbd'
100	b'\xef\xbf\xbd'
101	b'\xef\xbf\xbd'
102	b'\xef\xbf\xbd'
103	b'\xef\xbf\xbd'
104	b'\xef\xbf\xbd'
105	b'\xef\xbf\xbd'
106	b'\xef\xbf\xbd'
107	b'\xef\xbf\xbd'
108	b'\xef\xbf\xbd'
109	b'\xef\xbf\xbd'
110	b'\xef\xbf\xbd'
111	b'\xef\xbf\xbd'
112	b'\xef\xbf\xbd'
113	b'\xef\xbf\xbd'
114	b'\xef\xbf\xbd'
115	b'\xef\xbf\xbd'
116	b'\xef\xbf\xbd'
117	b'\xef\xbf\xbd'
118	b'\xef\xbf\xbd'
119	b'\xef\xbf\xbd'
120	b'\xef\xbf\xbd'
121	b'\xef\xbf\xbd'
122	b'\xef\xbf\xbd'
123	b'\xef\xbf\xbd'
124	b'\xef\xbf\xbd'
125	b'\xef\xbf\xbd'
126	b'\xef\xbf\xbd'
127	b'\xef\xbf\xbd'
128	b'\xef\xbf\xbd'
129	b'\xef\xbf\xbd'
130	b'\xef\xbf\xbd'
131	b'\xef\xbf\xbd'
132	b'\xef\xbf\xbd'
133	b'\xef\xbf\xbd'
134	b'\xef\xbf\xbd'
135	b'\xef\xbf\xbd'
136	b'\xef\xbf\xbd'
137	b'\xef\xbf\xbd'
138	b'\xef\xbf\xbd'
139	b'\xef\xbf\xbd'
140	b'\xef\xbf\xbd'
141	b'\xef\xbf\xbd'
142	b'\xef\xbf\xbd'
143	b'\xef\xbf\xbd'
144	b'\xef\xbf\xbd'
145	b'\xef\xbf\xbd'
146	b'\xef\xbf\xbd'
147	b'\xef\xbf\xbd'
148	b'\xef\xbf\xbd'
149	b'\xef\xbf\xbd'
150	b'\xef\xbf\xbd'
151	b'\xef\xbf\xbd'
152	b'\xef\xbf\xbd'
153	b'\xef\xbf\xbd'
154	b'\xef\xbf\xbd'
155	b'\xef\xbf\xbd'
156	b'\xef\xbf\xbd'
157	b'\xef\xbf\xbd'
158	b'\xef\xbf\xbd'
159	b'\xef\xbf\xbd'
160	b'\xef\xbf\xbd'
161	b'\xef\xbf\xbd'
162	b'\xef\xbf\xbd'
163	b'\xef\xbf\xbd'
164	b'\xef\xbf\xbd'
165	b'\xef\xbf\xbd'
166	b'\xef\xbf\xbd'
167	b'\xef\xbf\xbd'
168	b'\xef\xbf\xbd'
169	b'\xef\xbf\xbd'
170	b'\xef\xbf\xbd'
171	b'\xef\xbf\xbd'
172	b'\xef\xbf\xbd'
173	b'\xef\xbf\xbd'
174	b'\xef\xbf\xbd'
175	b'\xef\xbf\xbd'
176	b'\xef\xbf\xbd'
177	b'\xef\xbf\xbd'
178	b'\xef\xbf\xbd'
179	b'\xef\xbf\xbd'
180	b'\xef\xbf\xbd'
181	b'\xef\xbf\xbd'
182	b'\xef\xbf\xbd'
183	b'\xef\xbf\xbd'
184	b'\xef\xbf\xbd'
185	b'\xef\xbf\xbd'
186	b'\xef\xbf\xbd'
187	b'\xef\xbf\xbd'
222	b'\xef\xbf\xbd'
223	b'\xef\xbf\xbd'
224	b'\xef\xbf\xbd'
225	b'\xef\xbf\xbd'
226	b'\xef\xbf\xbd'
227	b'\xef\xbf\xbd'
228	b'\xef\xbf\xbd'
229	b'\xef\xbf\xbd'
230	b'\xef\xbf\xbd'
231	b'\xef\xbf\xbd'
232	b'\xef\xbf\xbd'
233	b'\xef\xbf\xbd'
234	b'\xef\xbf\xbd'
235	b'\xef\xbf\xbd'
236	b'\xef\xbf\xbd'
237	b'\xef\xbf\xbd'
238	b'\xef\xbf\xbd'
239	b'\xef\xbf\xbd'
240	b'\xef\xbf\xbd'
241	b'\xef\xbf\xbd'
242	b'\xef\xbf\xbd'
243	b'\xef\xbf\xbd'
244	b'\xef\xbf\xbd'
245	b'\xef\xbf\xbd'
246	b'\xef\xbf\xbd'
247	b'\xef\xbf\xbd'
248	b'\xef\xbf\xbd'
249	b'\xef\xbf\xbd'
250	b'\xef\xbf\xbd'
251	b'\xef\xbf\xbd'
252	b'\xef\xbf\xbd'
253	b'\xef\xbf\xbd'
254	b'\xef\xbf\xbd'
255	b'\xef\xbf\xbd'
447	b'\xef\xbf\xbd'
764	b'.'
837	b','
1209	b'\xef\xbf\xbd'
1587	b' \xef\xbf\xbd'
1792	b'\xef\xbf\xbd'
2343	b' \xef\xbf\xbd'
2515	b'\xef\xbf\xbd'
2644	b'...'
4210	b'\xef\xbf\xbd'
5008	b'\xef\xbf\xbd'
5099	b'\xef\xbf\xbd'
5145	b'!'
5525	b' \xef\xbf\xbd'
5633	b'?'
6184	b' \xef\xbf\xbd'
6353	b'\xef\xbf\xbd\xef\xbf\xbd'
6408	b'\xef\xbf\xbd\xef\xbf\xbd'
6552	b'\xef\xbf\xbd'
7134	b'\xef\xbf\xbd\xef\xbf\xbd'
7377	b' \xef\xbf\xbd'
8008	b'\xef\xbf\xbd\xef\xbf\xbd'
8582	b'\xef\xbf\xbd'
8955	b'\xef\xbf\xbd\xef\xbf\xbd'
10253	b'\xef\xbf\xbd\xef\xbf\xbd'
10263	b' \xef\xbf\xbd'
10310	b'\xef\xbf\xbd'
10545	b' \xef\xbf\xbd'
11019	b' \xef\xbf\xbd'
11485	b'..'
11737	b'\xef\xbf\xbd'
11805	b'\xef\xbf\xbd\xef\xbf\xbd'
11976	b'\xef\xbf\xbd'
12466	b' \xef\xbf\xbd'
12520	b' \xef\xbf\xbd'
12859	b'\xef\xbf\xbd'
13305	b' \xef\xbf\xbd'
13328	b' \xef\xbf\xbd'
13783	b'\xef\xbf\xbd'
13945	b'\xef\xbf\xbd\xef\xbf\xbd'
14360	b' \xef\xbf\xbd'
14519	b' \xef\xbf\xbd'
14524	b' \xef\xbf\xbd'
15139	b' \xef\xbf\xbd'
15926	b'\xef\xbf\xbd'
16268	b' \xef\xbf\xbd'
17312	b'\xef\xbf\xbd'
17358	b'\xef\xbf\xbd'
17433	b' \xef\xbf\xbd'
17550	b' \xef\xbf\xbd'
17683	b'\xe3\x81\xae\xef\xbf\xbd'
17739	b'\xef\xbf\xbd'
17804	b' \xef\xbf\xbd'
17992	b'\xef\xbf\xbd'
18004	b'\xef\xbf\xbd'
18074	b' \xef\xbf\xbd'
18433	b'\xef\xbf\xbd\xef\xbf\xbd'
18796	b'\xef\xbf\xbd'
18872	b' \xef\xbf\xbd'
18923	b' \xef\xbf\xbd'
19021	b'\xef\xbf\xbd'
19153	b'??'
19424	b'....'
19469	b'\xef\xbf\xbd'
19526	b'\xef\xbf\xbd'
19567	b'\xef\xbf\xbd'
20004	b'........'
20015	b'\xef\xbf\xbd'
20046	b'\xef\xbf\xbd'
20543	b' \xef\xbf\xbd'
20724	b' \xef\xbf\xbd'
20998	b'\xef\xbf\xbd'
21253	b'\xef\xbf\xbd\xef\xbf\xbd'
22135	b'."'
22522	b'\xef\xbf\xbd'
22755	b'\xef\xbf\xbd'
22880	b'\xef\xbf\xbd'
22887	b'\xef\xbf\xbd'
23294	b' \xef\xbf\xbd'
23329	b'\xef\xbf\xbd\xef\xbf\xbd'
23596	b'\xef\xbf\xbd\xef\xbf\xbd'
23626	b'\xef\xbf\xbd'
23821	b' \xef\xbf\xbd'
23877	b'\xef\xbf\xbd'
24231	b'\xef\xbf\xbd'
24457	b'./'
24583	b'\xef\xbf\xbd'
24861	b'\xef\xbf\xbd'
24966	b' \xef\xbf\xbd'
25001	b'\xef\xbf\xbd'
25081	b'\xef\xbf\xbd\xef\xbf\xbd'
25370	b' \xef\xbf\xbd'
26193	b'\xef\xbf\xbd'
26292	b'\xef\xbf\xbd'
26344	b'\xef\xbf\xbd'
26486	b'\xef\xbf\xbd'
26534	b'\xef\xbf\xbd\xef\xbf\xbd'
27032	b'\xe3\x81\xae\xef\xbf\xbd'
27332	b' \xef\xbf\xbd'
27670	b'\xef\xbf\xbd'
27764	b'\xef\xbf\xbd'
27950	b'\xef\xbf\xbd'
28053	b' \xef\xbf\xbd'
28156	b'\xef\xbf\xbd'
28225	b' \xef\xbf\xbd'
28839	b'\xef\xbf\xbd'
28938	b'\xef\xbf\xbd'
29705	b'\xef\xbf\xbd'
29773	b'\xef\xbf\xbd'
29785	b'\xef\xbf\xbd'
29826	b'\xef\xbf\xbd'
30266	b'\xef\xbf\xbd'
30298	b'\xef\xbf\xbd'
30325	b' \xef\xbf\xbd'
30585	b'\xef\xbf\xbd'
31204	b'\xef\xbf\xbd\xef\xbf\xbd'
31479	b'\xef\xbf\xbd'
31619	b' \xef\xbf\xbd'
31965	b'\xef\xbf\xbd'
32003	b'\xef\xbf\xbd'
32368	b'\xef\xbf\xbd'
32391	b'\xef\xbf\xbd'
32432	b'\xef\xbf\xbd'
32518	b'\xef\xbf\xbd'
32573	b'\xef\xbf\xbd'
32849	b'\xef\xbf\xbd'
33176	b'\xef\xbf\xbd'
33232	b'\xef\xbf\xbd'
33426	b'\xe3\x81\xae\xef\xbf\xbd'
33566	b'\xef\xbf\xbd'
33699	b'\xef\xbf\xbd'
33768	b'\xef\xbf\xbd'
34402	b'\xef\xbf\xbd'
34460	b'\xef\xbf\xbd'
34504	b' \xe8\xa3\x8f\xef\xbf\xbd'
34650	b'\xef\xbf\xbd'
34719	b' \xef\xbf\xbd'
34754	b' \xef\xbf\xbd'
34913	b'???'
34932	b'\xef\xbf\xbd'
35050	b'\xef\xbf\xbd\xef\xbf\xbd'
35069	b'\xef\xbf\xbd\xef\xbf\xbd'
35266	b'\xef\xbf\xbd'
35705	b'\xef\xbf\xbd'
35707	b'\xef\xbf\xbd'
35713	b'..."'
35975	b'\xef\xbf\xbd'
36181	b'\xef\xbf\xbd'
36365	b'\xef\xbf\xbd'
36469	b' \xef\xbf\xbd'
36596	b'\xef\xbf\xbd\xef\xbf\xbd'
36685	b'\xef\xbf\xbd'
37239	b'\xef\xbf\xbd'
37345	b'\xef\xbf\xbd'
37605	b'\xef\xbf\xbd'
37772	b'\xef\xbf\xbd'
37863	b'\xef\xbf\xbd'
37867	b'!!'
38184	b'\xef\xbf\xbd'
38461	b'\xef\xbf\xbd'
39333	b'\xef\xbf\xbd\xef\xbf\xbd'
39355	b'\xef\xbf\xbd'
39611	b'\xef\xbf\xbd'
39820	b'\xe9\xbe\x8d\xef\xbf\xbd'
40367	b'\xef\xbf\xbd'
41340	b'\xef\xbf\xbd'
41349	b'?)'
41365	b'\xef\xbf\xbd\xef\xbf\xbd'
41585	b'\xef\xbf\xbd'
41678	b'\xef\xbf\xbd\xef\xbf\xbd'
41753	b'\xef\xbf\xbd'
41840	b'\xef\xbf\xbd'
42062	b'\xef\xbf\xbd\xef\xbf\xbd'
42164	b' \xef\xbf\xbd'
42314	b' \xef\xbf\xbd'
42527	b' \xef\xbf\xbd'
42911	b',"'
43074	b' \xef\xbf\xbd'
43102	b'\xef\xbf\xbd'
43297	b'\xef\xbf\xbd'
43380	b'\xef\xbf\xbd'
43518	b'\xef\xbf\xbd\xef\xbf\xbd'
43636	b'\xef\xbf\xbd'
43718	b'\xef\xbf\xbd'
43769	b'\xef\xbf\xbd\xef\xbf\xbd'
43889	b'\xef\xbf\xbd'
43897	b'\xef\xbf\xbd'
44165	b'\xef\xbf\xbd'
44293	b'\xef\xbf\xbd'
44713	b'................'
45250	b'\xef\xbf\xbd'
45379	b'\xef\xbf\xbd'
45433	b'\xef\xbf\xbd\xef\xbf\xbd'
45495	b'\xef\xbf\xbd'
45539	b'\xef\xbf\xbd\xef\xbf\xbd'
45617	b'\xef\xbf\xbd'
45739	b'\xef\xbf\xbd'
45784	b'\xef\xbf\xbd'
45865	b'\xef\xbf\xbd\xef\xbf\xbd'
45911	b'\xef\xbf\xbd'
46237	b'\xef\xbf\xbd'
46256	b'\xef\xbf\xbd'
46328	b'.)'
46349	b'\xef\xbf\xbd'
46479	b'\xef\xbf\xbd'
46695	b'\xef\xbf\xbd'
46763	b'\xef\xbf\xbd'
46788	b'\xef\xbf\xbd\xef\xbf\xbd'
47078	b'\xef\xbf\xbd'
47082	b'......'
47249	b'\xef\xbf\xbd'
47540	b'._'
47728	b'\xef\xbf\xbd'
47797	b'\xef\xbf\xbd'
47947	b'\xef\xbf\xbd'
47991	b'\xef\xbf\xbd'
48071	b'\xef\xbf\xbd'
48585	b'\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd'
48953	b'\xef\xbf\xbd\xef\xbf\xbd'
48958	b'\xef\xbf\xbd'
49035	b'\xef\xbf\xbd'
49149	b'\xe3\x81\xae\xef\xbf\xbd'
49426	b'\xef\xbf\xbd'
49694	b'\xef\xbf\xbd'
50159	b'\xef\xbf\xbd\xef\xbf\xbd'
50169	b' \xef\xbf\xbd'

Expected behavior

I would expect that there are no duplicate tokens. I might be decoding tokens incorrectly which would explain why there are so many replacement character b'\xef\xbf\xbd' tokens but there are even duplicates in the normal utf8 characters such as ? which occurs in tokens 30 and 5633:

[i for i in range(VOCAB_SIZE) if tokenizer.decode(i) == '?']

Issue 2:
❓ Questions & Help

Does anyone knows how to mask a word in a sentence and then get predictions with probabilities from XLM models