File tree 1 file changed +12
-6
lines changed
api/core/model_runtime/model_providers/__base/tokenizers
1 file changed +12
-6
lines changed Original file line number Diff line number Diff line change 1
1
from threading import Lock
2
2
from typing import Any
3
3
4
- import tiktoken
5
-
6
4
_tokenizer : Any = None
7
5
_lock = Lock ()
8
6
@@ -33,9 +31,17 @@ def get_encoder() -> Any:
33
31
if _tokenizer is None :
34
32
# Try to use tiktoken to get the tokenizer because it is faster
35
33
#
36
- _tokenizer = tiktoken .get_encoding ("gpt2" )
37
- # base_path = abspath(__file__)
38
- # gpt2_tokenizer_path = join(dirname(base_path), "gpt2")
39
- # _tokenizer = TransformerGPT2Tokenizer.from_pretrained(gpt2_tokenizer_path)
34
+ try :
35
+ import tiktoken
36
+
37
+ _tokenizer = tiktoken .get_encoding ("gpt2" )
38
+ except Exception :
39
+ from os .path import abspath , dirname , join
40
+
41
+ from transformers import GPT2Tokenizer as TransformerGPT2Tokenizer # type: ignore
42
+
43
+ base_path = abspath (__file__ )
44
+ gpt2_tokenizer_path = join (dirname (base_path ), "gpt2" )
45
+ _tokenizer = TransformerGPT2Tokenizer .from_pretrained (gpt2_tokenizer_path )
40
46
41
47
return _tokenizer
You can’t perform that action at this time.
0 commit comments