llava推理时环境报错

报错如下:

ValueError: Converting from Tiktoken failed, if a converter for SentencePiece is available, provide a model path with a SentencePiece tokenizer.model file.Currently available slow->fast convertors: ['AlbertTokenizer', 'BartTokenizer', 'BarthezTokenizer', 'BertTokenizer', 'BigBirdTokenizer', 'BlenderbotTokenizer', 'CamembertTokenizer', 'CLIPTokenizer', 'CodeGenTokenizer', 'ConvBertTokenizer', 'DebertaTokenizer', 'DebertaV2Tokenizer', 'DistilBertTokenizer', 'DPRReaderTokenizer', 'DPRQuestionEncoderTokenizer', 'DPRContextEncoderTokenizer', 'ElectraTokenizer', 'FNetTokenizer', 'FunnelTokenizer', 'GPT2Tokenizer', 'HerbertTokenizer', 'LayoutLMTokenizer', 'LayoutLMv2Tokenizer', 'LayoutLMv3Tokenizer', 'LayoutXLMTokenizer', 'LongformerTokenizer', 'LEDTokenizer', 'LxmertTokenizer', 'MarkupLMTokenizer', 'MBartTokenizer', 'MBart50Tokenizer', 'MPNetTokenizer', 'MobileBertTokenizer', 'MvpTokenizer', 'NllbTokenizer', 'OpenAIGPTTokenizer', 'PegasusTokenizer', 'Qwen2Tokenizer', 'RealmTokenizer', 'ReformerTokenizer', 'RemBertTokenizer', 'RetriBertTokenizer', 'RobertaTokenizer', 'RoFormerTokenizer', 'SeamlessM4TTokenizer', 'SqueezeBertTokenizer', 'T5Tokenizer', 'UdopTokenizer', 'WhisperTokenizer', 'XLMRobertaTokenizer', 'XLNetTokenizer', 'SplinterTokenizer', 'XGLMTokenizer', 'LlamaTokenizer', 'CodeLlamaTokenizer', 'GemmaTokenizer', 'Phi3Tokenizer']

解决办法:

pip install tiktoken sentencepiece
### 如何进行 LLaVA Med 模型推理 对于 LLaVA Med 这样的特定领域的大规模语言模型,其推理过程通常依赖于已有的框架和工具链。考虑到 BELLE 对中文效果良好并基于 Hugging Face Transformers 的情况[^1],可以推测 LLaVA Med 可能也遵循类似的架构。 #### 准备工作环境 为了能够顺利运行 LLaVA Med 推理,首先需要设置适当的工作环境: - 安装 Python 和 pip 工具; - 创建虚拟环境以隔离项目依赖项; - 使用 `pip` 或者 Conda 安装必要的库文件,比如 PyTorch、Transformers 等; ```bash conda create -n llava python=3.9 conda activate llava pip install torch transformers datasets evaluate accelerate bitsandbytes ``` #### 加载预训练模型 加载预先训练好的 LLaVA Med 模型可以通过 Hugging Face 提供的接口完成。这一步骤涉及指定正确的模型名称以及配置参数。 ```python from transformers import AutoModelForCausalLM, AutoTokenizer model_name_or_path = "path_to_llava_med_model" tokenizer = AutoTokenizer.from_pretrained(model_name_or_path) model = AutoModelForCausalLM.from_pretrained(model_name_or_path).to('cuda') ``` #### 执行推理任务 一旦完成了上述准备工作,则可以根据具体的应用场景编写相应的推理逻辑。这里给出一段简单的例子用于展示如何向模型输入文本并获取预测结果。 ```python input_text = "描述一种新型药物的作用机制及其潜在应用价值。" def generate_response(prompt): inputs = tokenizer(prompt, return_tensors="pt").to('cuda') outputs = model.generate(**inputs, max_length=500, do_sample=True, top_p=0.95, temperature=0.7) response = tokenizer.decode(outputs[0], skip_special_tokens=True) return response response = generate_response(input_text) print(response) ``` 此代码片段展示了如何准备输入数据并通过调用 `.generate()` 方法获得输出序列。注意,在实际操作过程中可能还需要调整一些超参数如最大长度 (`max_length`)、采样策略(`do_sample`, `top_p`, `temperature`)等来优化最终的结果质量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值