-
Notifications
You must be signed in to change notification settings - Fork 5.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.增加对llama-cpp模型的支持;2.增加对bloom/chatyuan/baichuan模型的支持;3. 修复多GPU部署的bug;4. 修复了moss_llm.py的bug;5. 增加对openai支持(没有api,未测试);6. 支持在多卡情况自定义设备GPU #664
Conversation
… dev pull for 2023--6-15
…api,未测试);5.增加了llama-cpp模型部署的说明
modified: ../docs/INSTALL.md 在install.md里增加对llama-cpp模型调用的说明
"pretrained_model_name": "gpt-3.5-turbo", | ||
"provides":"FastChatOpenAILLM", | ||
"local_model_path": None, | ||
"api_base_url": "https://api.openapi.com/v1", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
你的provides写的是什么? |
貌似13B不适配 模型加载异常 |
报什么错误? |
大佬 请问 fnlp/moss-moon-003-sft-int4 支持了吗? 我这边加载报错ModuleNotFoundError: No module named 'transformers_modules.moss-moon-003-sft-int4.custom_autotune' |
|
def init_model():
|
没有,不过想来表现应该会好不少 |
llama-cpp模型需要在loader.py中调用llama-cpp-python中的Llama类,并使设定的参数兼容Llama类的generate方法,基于不
同时期的ggml 格式手动下载llama-cpp-python版本,重新InvalidScoreLogitsProcessor类,转换输入input_ids的格式等操作。
目前为兼容llama_llm.py脚本进行了参数阉割,后续似应考虑重新一个类。
通过cli_deom.py在lmsys/vicuna-13b-delta-v1.1/ggml-vicuna-13b-1.1-q5上,及llama-cpp-python v0.1.63上进行了测试。
在api.py\webui.py等下游调用脚本中,会在初始化后调用.set_history_len(LLM_HISTORY_LEN),但moss_llm.py对该方法的定义
与chatglm_llm.py不一致,导致调用失败。疑似能解决moss启动失败的问题不能本地加载moss模型吗? #652,加载本地moss模型报错Can't instantiate abstract class MOSSLLM with abstract methods _history_len #578,[BUG] moss模型本地加载报错 #577,[BUG] moss模型无法加载 #356,[BUG] moss_llm没有实现 #447
该错误在调用chatyuan模型时发现。
通过api.py脚本进行了测试
chatyuan模型需要调用在loader.py中基于AutoModel进行调用,并使用MOSSLLM类作为provides,但当前脚本虽然在
model_config.py中定义了模型配置字典,但并未进行正式适配,本次提交进行了正式支持。
通过api.py进行了测试
bloom模型对中文和代码的支持优于llama等模型,可作为候选模型。
通过api.py对bloom-3b进行了测试,bloomz-7b由于没有资源而没有测试
通过api.py进行了测试
改为使用accelerate的infer_auto_device_map。
该错误由于调用bloom等模型时发现。
通过api.py和cli_demo.py脚本进行了测试
没有openai的key,因此没有测试
要调用llama-cpp模型需要的手动配置的内容较多,需要额外进行说明
在某些情况下,如机器被多人使用,其中一个卡利用率较高,而另一些利用率较低,此时应该将设备指定在空闲的卡上,而不应自动进行多卡并行,但在现有版本中,load.py中_load_model没有考虑这种情况,clear_torch_cache函数也没有考虑这种情况。本次提交中,支持在model_config.py中设置llm_device的为类似“cuda:1”的方式自定义设备。