Langchain-chatchat源码部署及测试实验

news/2024/11/14 15:09:42/

       一年多前接触到Langchain-chatchat的0.2版本,对0.2版本进行了本地部署和大量更新,但0.2版本对最新的大模型支持不够好,部署框架支持也不好且不太稳定,特别是多模态大模型,因此本次主要介绍0.3版本的源码部署,希望对大家有所帮助。Langchain-chatchat从0.3版本开始,支持更多的部署框架,如xinference、Ollama和FastChat,较多的是xinference框架,因此本文也是基于该框架进行模型部署。开始时参考了提供的开发指南进行部署,感觉步骤较多且麻烦,因此我就采用直接修改源码方式进行部署,作者提供的前端没有用,主要使用的是libs下面的后端接口和默认基于Streamlit提供的前端测试功能。另外,我更新完善了本地知识库加载的多种文件格式解析模块,增加了验证和路由过滤模块、返回数据格式等等,这里不详细介绍。

一、源码下载

直接去github上找Langchain-chatchat,进行下载,最后下载master线。

二、服务器环境准备

我的环境是Linux Redhat7.5,配置两种gpu显卡,合计96G
安装conda和python3.10环境
上述两步可参考相关文档,相对简单,这里不细说。

三、虚拟环境准备

conda create -n xinferenc


http://www.ppmy.cn/news/1528358.html

相关文章

Git使用详解:从安装到精通

前言 什么是Git Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(Java类、xml文件、html页面等),在软件开发过程中被广泛使用。 可以理解: git是一个管理源代码的工具,主要用于企业团队开…

JAVA毕业设计176—基于Java+Springboot+vue3的交通旅游订票管理系统(源代码+数据库)

毕设所有选题: https://blog.csdn.net/2303_76227485/article/details/131104075 基于JavaSpringbootvue3的交通旅游订票管理系统(源代码数据库)176 一、系统介绍 本项目前后端分离(可以改为ssm版本),分为用户、管理员两种角色 1、用户: …

(k8s)Kubernetes 从0到1容器编排之旅

一、引言 在当今数字化的浪潮中,Kubernetes 如同一艘强大的航船,引领着容器化应用的部署与管理。它以其卓越的灵活性、可扩展性和可靠性,成为众多企业和开发者的首选。然而,要真正发挥 Kubernetes 的强大威力,仅仅掌握…

Linux系统编程(基础指令)上

1.Linux常见目录介绍 Linux目录为树形结构 /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录。所有的东西都是从这里开始。当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录&…

【Git】Git Commit Angular规范详解

在团队协作开发中,保持Git提交记录的一致性和清晰性对于维护项目的可读性和历史追溯至关重要。Angular团队提出了一套详细的Commit Message格式化规范,旨在解决这一问题。下面将详细介绍如何遵循Angular规范来编写Git提交信息,并探讨其带来的…

Windows上创建批处理.bat文件并且注册为开机自启(Python-web微服务)

1. winodws桌面点击创建文本文件 (文件名称.txt) 2. 将如下代码写入txt文件中 echo off if "%1""h" goto begin start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h"…

性能调优

性能调优 应用程序在运行过程中经常会出现性能问题,比较常见的性能问题现象是: 通过top命令查看CPU占用率高,接近100甚至多核CPU下超过100都是有可能的。请求单个服务处理时间特别长,多服务使用skywalking等监控系统来判断是哪一…

50.面向对象进阶训练-学生类

//定义一个长度为3的数组,存储1-3名学生对象作为初始数据 //学生属性:学号 姓名 年龄,其中学号姓名各不相同 //要求:1.再次添加一个学生对象,并在添加的时候进行学号的唯一性判断//2.添加完毕之后,遍历所有…