开源模型部署及使用

news2025/1/8 5:46:27

开源模型部署及使用

  • 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.7
conda activate langchain
git clone https://github.com/chatchat-space/Langchain-Chatchat.git
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
conda install jq==1.6.0
pip install -r requirements.txt 
pip install -r requirements_api.txt
pip install -r requirements_webui.txt  

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

git lfs install
git clone https://huggingface.co/THUDM/chatglm3-6b
git 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.py
python 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.10
conda activate facefusion
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
pip install --no-cache-dir -r requirements.txt
pip uninstall onnxruntime onnxruntime-gpu
pip install onnxruntime-gpu
conda 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.8
conda activate aquila
pip install -U flagai
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
pip uninstall transformers
pip install --no-cache-dir transformers
pip install ultra
pip install bitsandbytes

2.运行

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

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

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

import torch
from flagai.auto_model.auto_loader import AutoLoader
from transformers import BitsAndBytesConfig
model_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上也没跑起来,算了,我放弃了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1412810.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python如何实现队列的同步实现

队列 q Queue.Queue(maxsize 10) 创建一个“队列”对象。Queue.Queue类即是一个队列的同步实现。队列长度可为或者有限。可通过Queue的构造函数的可选参数maxsize来设定队列长度。如果maxsize小于1就表示队列长度。 q.put()方法在队尾插入一个项目。put()有两个参数&#x…

解决Windows系统本地端口被占用

目录 一、被程序占用端口 1.通过终端杀掉占用端口的进程 2.任务管理器 二、被系统列为保留端口 前言: 首先了解为什么会出现端口被占用的情况 端口被占用的情况可能出现的原因有很多,主要有以下几点: 1.多个应用程序同时启动&…

如何对图片进行引用。

问题描述:如何对图片进行引用。 问题解答: 在图片描述处和图片标题处引用即可。

【C++11并发】mutex 笔记

简介 在多线程中往往需要访问临界资源,C11为我们提供了mutex等相关类来保护临界资源,保证某一时刻只有一个线程可以访问临界资源。主要包括各种mutex,他们的命名大都是xx_mutex。以及RAII风格的wrapper类,RAII就是一般在构造的时…

光伏设计——光伏合作的几种方式

鹧鸪云 随着光伏产业的发展,越来越多的企业和组织选择通过合作来提高效率、降低成本、实现共赢。以下是几种常见的光伏合作方式: 合资企业:合资企业是一种常见的合作方式,两个或多个公司共同出资、共同经营,共享利润和…

学习笔记-李沐动手学深度学习(四)(12-13,权重衰退、L2正则化、Dropout)

总结 【trick】过拟合及正则化项参数的理解 实际数据都有噪音,一般有噪音后,模型实际学习到的权重w就会比 理论上w的最优解(即没有噪音时)大。(QA中讲的) 【好问题】 (1)不使用正…

Java强训day4(选择题编程题)

选择题 接口中的方法是为了让重写编程题 题目 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int a_b sc.nextInt();int b_c sc.nextInt();int ab sc.nextInt();int bc sc.nextInt();for(in…

HttpHeaders 源码中headers成员变量为什么声明为final

源码如下 public class HttpHeaders implements MultiValueMap<String, String>, Serializable {private final Map<String, List<String>> headers;public String getFirst(String headerName) {List<String> headerValues (List)this.headers.get(…

THM学习笔记——OSI模型和TCP/IP模型

全是文字 比较枯燥 建议视频 OSI模型由七个层次组成&#xff1a; 第7层 -- 应用层&#xff1a; OSI模型的应用层主要为在计算机上运行的程序提供网络选项。它几乎专门与应用程序一起工作&#xff0c;为它们提供一个界面以用于传输数据。当数据传递到应用层时&#xff0c;它…

3dmax效果图渲染出现曝光怎么解决?

在使用3ds Max完成效果图渲染工作时&#xff0c;有时会遇到曝光过度的问题&#xff0c;这会使得渲染的图像出现光斑或者过亮&#xff0c;损害了效果的真实感和美观度。那么解决解决3dmax曝光问题呢&#xff1f;一起看看吧&#xff01; 3dmax效果图渲染出现曝光解决方法 1、相机…

yml配置文件怎么引用pom.xml中的属性

目录 前言配置测试 前言 配置文件中的一些参数有时要用到pom文件中的属性&#xff0c;做到pom文件变配置文件中也跟着变&#xff0c;那如何才能做到呢&#xff0c;下面咱们来一起探讨学习。 配置 1.首先要在pom.xml中做如下配置&#xff0c;让maven渲染src/main/resources下配…

YOLOv5全网独家首发:Powerful-IoU更好、更快的收敛IoU,效果秒杀CIoU、GIoU等 | 2024年最新IoU

💡💡💡本文独家改进:Powerful-IoU更好、更快的收敛IoU,是一种结合了目标尺寸自适应惩罚因子和基于锚框质量的梯度调节函数的损失函数 💡💡💡MS COCO和PASCAL VOC数据集实现涨点 收录 YOLOv5原创自研 https://blog.csdn.net/m0_63774211/category_1251193…

力扣1143. 最长公共子序列

动态规划 思路&#xff1a; 假设 dp[i][j] 是 text1[0:i] 和 text2[0:j] 最长公共子序列的长度&#xff1b;则 dp[0][j] 0&#xff0c;&#xff08;空字符串和任何字符串的最长公共子序列的长度都是 0&#xff09;&#xff1b;同理 dp[i][j] 0&#xff1b;状态转移方程&…

腾讯云服务器上发送邮件连接超时

腾讯云会将服务器25端口禁用&#xff08;腾讯云默认禁用&#xff09;&#xff0c;开启后发送正常 https://console.cloud.tencent.com/secctrl 参考 腾讯云服务器上发送邮件连接超时&#xff08;无法发送&#xff09;的相关问题

深度强化学习(王树森)笔记02

深度强化学习&#xff08;DRL&#xff09; 本文是学习笔记&#xff0c;如有侵权&#xff0c;请联系删除。本文在ChatGPT辅助下完成。 参考链接 Deep Reinforcement Learning官方链接&#xff1a;https://github.com/wangshusen/DRL 源代码链接&#xff1a;https://github.c…

防御保护---NAT实验

文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 一. 练习 PC4配置 FW2配置 sys int g0/0/0 ip add 192.168.100.3 24 service-manage all permit sys int l0 ip add 1.1.1.1 24 int g0/0/0 ip add 12.0.0.1 24 int g0/0/2 ip add 21.0.0.1 …

Qlik Sense : Store With Retry (保存重试机制)

Background sometime you cannot store the file directly ,maybe there are another process are reading/storeing the file , so you would need to wait another proecess done and retry . then we come up this solution . 有时您不能直接存储文件&#xff0c;可能还有…

四、Kotlin 表达式

1. 常量 & 变量 1.1 可读写变量&#xff08;var&#xff09; var x initValue // x 称为可读写变量注意&#xff1a;当 var 声明的变量做成员属性时&#xff0c;默认提供 setter/getter 方法。 1.2 只读变量&#xff08;val&#xff09; val x initValue // x 称为只…

vivado 预设文件、IP设置(_P)、用户参数、以太网时钟处理、GT位置限制、当前可识别板的IP列表

了解预设文件 预设文件有助于在特定配置中自定义IP核心。PS7、axi_emc和当linear_flash或DDR3_SDRAM 界面是在Vivado IP集成商的Board选项卡中选择的。预设文件使用XML格式。preset_file是为特定的Board文件定义的&#xff0c;可以是用于将预设应用于多个IP。 <ip_presets…

[SwiftUI]修改状态栏文字颜色

问题&#xff1a; 如图&#xff0c;在项目 Info.plist 中&#xff0c;将 UIViewControllerBasedStatusBarAppearance 设置为 NO&#xff0c;将UIStatusBarStyle设置为Light Content后&#xff0c;APP的状态栏字体颜色仍然是黑色没变成白色。 修复&#xff1a; https://stacko…