推理代码 text-generation-webui
推理模型 Qwen1.5-7B-Chat
sys info
nvcc --version
cuda 11.8
import torch
>>> print(torch.__version__)
1 路径错误
2 依赖没安装
ImportError: This modeling file requires the following packages that were not found in your environment: transformers_stream_generator. Run `pip install
transformers_stream_generator`
3 c编译环境报错
RuntimeError: Failed to find C compiler. Please specify via CC environment variable.
4 RuntimeError: FlashAttention only supports Ampere GPUs or newer.
RuntimeError: FlashAttention only supports Ampere GPUs or newer.
修改 模型的文件config.json 将 use_flash_attn 改为 false 暂不用加速推理
5 不会stop
5.1 ui 端 配置 如下
Custom stopping strings : "<|im_start|>", "<|im_end|>", "<|endoftext|>"
Skip special tokens false
5.2 api接口
6 加载lora 推理报错
TypeError: LoraConfig.__init__() got an unexpected keyword argument 'layer_replication'
更换 peft 版本
pip install peft==0.5.0
7 加载多个lora 报错
https://github.com/oobabooga/text-generation-webui/issues/4371
没解决,手动合并多个adapter
合并 lora adapter 和加载lora推理不知道是不是一样的效果
在变压器适配器上加载多个 LORA 时出错 ·问题 #4371 ·oobabooga/文本生成-webui (github.com)
引用github站友一句话
我在 (#3120) 中写道,PR 使用过时的 PEFT 代码,但无论如何它已被合并。所以¯\_(ツ)_/¯
这种方法存在的问题远不止使合并工作有效。例如,下次您尝试将 Loras 合并到相同的适配器名称中时,add_weighted_adapter会默默地纾困,使用户认为您应用了新的适配器名称,但实际上什么也没做等等......但这在合并中根本没有处理。
但我不知道如何说服人们这是错误的方法。
- main 中的 Lora 下拉列表应该只允许添加一个 Lora 使用from_pretrained - 这是最安全且始终有效的方法。重置模型,然后使用from_pretrained。没有奇怪的秘密合并到第三个适配器中。这不像稳定扩散那样起作用。
- Lora 合并和切换的新选项卡(但我更喜欢扩展)需要在用户完全控制它的地方完成,否则它毫无用处。它需要对用户透明(例如合并两个 lora 实际上在物理上创建了第三个 lora),并且它需要允许更改权重,因为 99.99% 合并两个权重为 1 的 lora 不会产生您想要的结果。它也需要处理PEFT的特殊性......
我知道人们希望它像稳定扩散一样工作,但文本不是图像。一个有趣的 Lora 和一首诗歌 Lora 不会创造有趣的诗歌合并。因此,我们应该处理它是什么,而不是人们想象它是什么。
编辑:撤回我的声明(但在此处未编辑)。由于 Lora 合并在 exllama2 上工作正常,因此上述 1 和 2 不是解决方案,因为它仅适用于 Transformers.
标签:7B,generation,Lora,适配器,合并,报错,webui,lora From: https://www.cnblogs.com/linzm14/p/18181749