开源模型部署及使用

开源模型部署及使用

  • 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上也没跑起来,算了,我放弃了。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯(C++ 左移右移 买二增一 松散子序列 填充 有奖问答 更小的数 )

目录 左移右移 思路: 代码: 买二增一 思路: 代码: 松散子序列 思路: 代码: 填充 思路: 代码 : 有奖问答 思路: 代码: 更小的数 思路&#…

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…

面向社交网络语言隐写分析

论文:Linguistic Steganalysis Toward Social Network 发表在:IEEE Transactions on Information Forensics & Security是网络与信息安全领域的国际两大顶级期刊之一,中国计算机学会(CCF)推荐的A类期刊&#xff0c…

Git 删除已经 Push 到远程多余的文件

例如要删除 data/log 文件 1. 在当前项目下打开终端 2. 查看有哪些文件夹 dir 3. 预览将要删除的文件(如果不清楚该目录下是否存在不应该删除的文件) git rm -r -n --cached 文件/文件夹名称 加上 -n 这个参数,执行命令时,是不会…

ubuntu设置右键打开terminator、code

前言: 这里介绍一种直接右键打开本地目录下的terminator和vscode的方法。 一:右键打开terminator 1.安装terminator sudo apt install terminator 2.安装nautilus-actions filemanager-actions sudo apt-get install nautilus-actions filemanager…

Open CASCADE学习|圆柱螺旋线绘制原理探究

1、圆柱螺旋线绘制原理 在OCC中,圆柱面的参数方程为: 设P为(x0,y0,z0),则 xx0r*cos(u) yy0r*sin(u) zz0v 但u、v之间有关系时,此方程表达为圆柱螺旋线,u、v之间为线性关系时是等螺距螺旋线&#xff0…

数位dp,HDU 4151 The Special Number

一、题目 1、题目描述 In this problem, we assume the positive integer with the following properties are called ‘the special number’: 1) The special number is a non-negative integer without any leading zero. 2) The numbers in every digit of the special nu…

Linux基础指令大汇总

Linux的指令比较多,在学习的过程中要学会总结和归纳,同时结合实践多多使用,就像学数学一样,不是背过公式就等于掌握的,而是要知道在什么时候用,怎么用才是关键。 这篇文章会列举一系列常用的指令&#xff0…

springblade框架实现多数据源

文章目录 前言1、 application-dev.yml配置文件2、service层3、修改 spring.datasource.dynamic.enabled 备注总结 前言 公司要求使用springblade框架开发,需要用到多数据源的场景 1、 application-dev.yml配置文件 #数据源配置 spring:datasource:dynamic:primar…

腾讯云服务器一键部署幻兽帕鲁联机服务器详细教程(Linux系统)

腾讯云作为国内领先的云计算服务商,为广大用户提供了稳定、高效的云计算服务。本文将详细介绍如何在腾讯云服务器(Linux系统)实现一键部署幻兽帕鲁联机服务器,帮助大家快速搭建自己的游戏联机服务器。 第一步:购买服务…

初识数据库

数据库技术的基础术语 在学习数据库技术之前,我们先认识与该技术密切相关的基本术语,分别是数据库 (Database, DB)、数据库管理系统(Database Management System, DBMS)和数据库 系统(Database System, DBS),具体介绍如下。 1. 数据库 数…

【Linux install】详细的Ubuntu和win双系统安装指南

文章目录 1.前期准备1.1 制作启动盘1.2关闭快速启动、安全启动、bitlocker1.2.1 原因1.2.2 进入BIOSshell命令行进入BIOSwindows设置中高级启动在开机时狂按某个键进入BIOS 1.2.3 关闭Fast boot和Secure boot 1.3 划分磁盘空间1.3.1 查看目前的虚拟内存大小 2.开始安装2.1 使用…

代码随想录 Leetcode102. 二叉树的层序遍历

题目&#xff1a; 代码(首刷看解析 2024年1月24日&#xff09;&#xff1a; class Solution { public:vector<vector<int>> levelOrder(TreeNode* root) {vector<vector<int>> res;if(root nullptr) return res;queue<TreeNode*> que;TreeNode…

智能充电桩,机器人 wifi蓝牙 解决方案

新联鑫威低功耗高性价比sdio wifi/蓝牙combo的模块单频2.4g的CYWL6208&#xff0c;双频2.4g/5g CYWL6312可以应用到一些低延时 高性能 低功耗 联网需求的交流直流充电桩&#xff0c;扭力扳手&#xff0c;agv机器人&#xff0c;目前支持主流的stm32F4/GD32F4 瑞萨 psoc的主控&am…

博弈论(牛客练习赛)

思路&#xff1a;我们考虑小念赢 1、如果n>1并且p0&#xff0c;小念可以连续取两次&#xff0c;相当于小念有挂&#xff0c;可以从必败态转为必胜态&#xff0c;必赢。 2、如果n>1并且m>n-1&#xff0c;小念第一次取n-1个&#xff0c;小念必赢。 代码&#xff1a; …

(大众金融)SQL server面试题(2)-游戏打包销售折扣

今天&#xff0c;面试了一家公司&#xff0c;什么也不说先来三道面试题做做&#xff0c;第二题。 那么&#xff0c;我们就开始做题吧&#xff0c;谁叫我们是打工人呢。 题目是这样的&#xff1a; 销售平台进行游戏打包促销。将任意个游戏打包为一组&#xff0c;根据游戏数量…

RabbitMQ之死信交换机

前言 消息队列是分布式系统中常用的组件&#xff0c;用于异步通信、解耦和提高系统可靠性。然而&#xff0c;在实际应用中&#xff0c;难免会遇到一些异常情况&#xff0c;例如消息处理失败、超时等。为了更好地处理这些异常情况&#xff0c;死信交换机&#xff08;Dead Lette…

C++:组合、继承与多态

面向对象设计的重要目的之一就是代码重用&#xff0c;这也是C的重要特性之一。代码重用鼓励人们使用已有的&#xff0c;得到认可并经过测试的高质量代码。多态允许以常规方式书写代码来访问多种现有的且已专门化了的相关类。继承和多态是面向对象程序设计方法的两个最主要的特性…

使用vs2022将c语言文件打包成exe可执行程序分享给朋友(详解)

目录 1.给vs2022安装打包插件 2.新建打包项目 找到自己想要打包好的项目 3.拷贝必要的资源 3.1拷贝素材 3.2***导入输出文件***** 4.设置项目在桌面显示的图标 4.1找好图标素材&#xff0c;利用在线工具生成图标格式 4.2将图标放到桌面显示中来 5.最终生成打包 1.给vs…

鸿蒙ArkUI开发-实现增删Tab页签

场景介绍 部分应用在使用过程中需要自定义添加或删除标签的场景&#xff0c;比如在浏览器中的顶部标签栏中需要新打开或关闭网页页签&#xff0c;而这种场景与Tabs组件效果类似&#xff0c;但Tabs组件不提供增加或删除页签的功能&#xff0c;不能自由的增加删除页签&#xff0…