charent / ChatLM-mini-Chinese

中文对话0.2B小模型(ChatLM-Chinese-0.2B),开源所有数据集来源、数据清洗、tokenizer训练、模型预训练、SFT指令微调、RLHF优化等流程的全部代码。支持下游任务sft微调,给出三元组信息抽取微调示例。
Apache License 2.0
1.22k stars 146 forks source link

Hello, 第一次使用,请问运行时出现 unsupported operand type(s) for |: 'types.GenericAlias' and 'type' 是什么问题? #15

Closed yugu91 closed 9 months ago

yugu91 commented 9 months ago

官方的demo都已经运行使用了,使用git仓库运行api、训练和微调都遇到了这个错误,具体位置是:

Traceback (most recent call last): File "/Users/xxxx/xxx/ChatLM-mini-Chinese/sft_train.py", line 16, in from utils.functions import get_T5_config File "/Users/xxxx/xxx/ChatLM-mini-Chinese/utils/functions.py", line 27, in def _get_doc_mini_hash(doc: list[str] | str, num_perm: int) -> MinHash: TypeError: unsupported operand type(s) for |: 'types.GenericAlias' and 'type'

charent commented 9 months ago

你的python版本是多少?我这边python3.10、3.11都没有问题。 你试试把27行改成下面这行试试,

def _get_doc_mini_hash(doc, num_perm):

应该是你的环境不支持list[str] | str这种写法,如果还有其他行报类似的错,就把参数:的冒号及后面的参数类型删掉。

yugu91 commented 9 months ago

我这边是3.9,我升级一下试试