开源模型部署及使用

  • 1.Langchain-Chatchat
    • 1.环境
    • 2.运行
    • 3.效果
  • 2.facefusion
    • 1.环境
    • 2.运行
    • 3.效果
  • 3.Aquila
    • 1.环境
    • 2.运行

1.Langchain-Chatchat

Langchain-Chatchat这里面可以调用许多模型,我本地下载了chatglm3模型文件,所以就用这个模型。

1.环境

根据官网的步骤,我这里用了虚拟环境,这里注意几点:
1.环境里面先安装符合自己电脑配置的pytorch,再去安装requirements文件。
2.把这几个requirements文件里的jq包注释掉,因为这个包用conda安装,如果用pip会一直报错。

conda create -n langchain-chat Python==3.11.7conda activate langchaingit clone https://github.com/chatchat-space/Langchain-Chatchat.gitpip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121conda install jq==1.6.0pip install -r requirements.txt pip install -r requirements_api.txtpip install -r requirements_webui.txt

下载模型文件,我把这两个模型文件都下载到了这个目录下的model文件夹

git lfs installgit clone https://huggingface.co/THUDM/chatglm3-6bgit clone https://huggingface.co/BAAI/bge-large-zh

修在configs/model_config.py里面模型文件的地址,这里确保你的两个模型文件都放在MODEL_ROOT_PATH ,并名字都和代码里的一样。

MODEL_ROOT_PATH = "D:/Projects/Langchain-Chatchat-master/Langchain-Chatchat-master/model"EMBEDDING_MODEL = "bge-large-zh"LLM_MODELS = ["chatglm3-6b"] 

初始化知识库和配置文件

python copy_config_example.pypython init_database.py --recreate-vs

2.运行

python startup.py -a

这里我出现了sentenc-transformers不存在以及某些库不存在,不存在可以pip,但我这里是存在的,所以我就先unpip,然后再pip,并带上参数--no-cache-dir不适用缓存数据重新下载,最后就可以了。

3.效果

2.facefusion

facefusion换脸效果似乎很好,所以部署一个到win笔记本。可以参考博文。

1.环境

首先创建虚拟环境

conda create -n facefusion python==3.10conda activate facefusionpip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121pip install --no-cache-dir -r requirements.txtpip uninstall onnxruntime onnxruntime-gpupip install onnxruntime-gpuconda install cudnn

然后去下载模型文件,当然很多模型都可以,可以自行选择,下载到文件的.assets\models目录下。

2.运行

python run.py --execution-providers cuda

3.效果

3.Aquila

Aquila据说要开源33b大模型,而且还是中英双语,有些期待,可以先试试他们的7b,这里面竟然还有生成code和sql的模型,感觉可以跟一波。

1.环境

具体的安装使用可以根据官网手册。

conda create -n aquila python==3.8conda activate aquilapip install -U flagaipip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121pip uninstall transformerspip install --no-cache-dir transformerspip install ultrapip install bitsandbytes

2.运行

因为我安装的torch和库里的torch版本不一致,所以有问题No module named ‘torch._six‘,解决办法是在报错的代码处改为:

try:from torch._six import infexcept ModuleNotFoundError:from torch import inf

然后我在库里没找到Aquila模型,好像因为不支持win。具体用什么模型实现什么任务可以在flagai\auto_model\auto_loader.py里面看到可用的模型和方法,如果你用的不对也会有输出,可以根据提示选择。

import torchfrom flagai.auto_model.auto_loader import AutoLoaderfrom transformers import BitsAndBytesConfigmodel_name = 'glm-10b-ch'#显存不够没跑起来# model_name = 'AquilaChat2-7B'autoloader = AutoLoader("poetry", model_name=model_name, quantization_config=BitsAndBytesConfig(load_in_4bit=True,bnb_4bit_use_double_quant=True,bnb_4bit_quant_type="nf4",bnb_4bit_compute_dtype=torch.bfloat16,))model = autoloader.get_model()tokenizer = autoloader.get_tokenizer()print(model.predict("写一首过年主题的五言绝句", tokenizer=tokenizer, model_name=model_name))

win上显存不够,去linux上也没跑起来,算了,我放弃了。