使用LangChain与ChatGLM实现本地知识库(一)

前言

本篇主要内容为介绍ChatGLM3的安装使用,后续才会涉及到使用LangChain实现本地知识库的内容;

ChatGLM为智谱与清华大学开源的一个大语言模型,支持多轮对话、内容创作等,ChatGLM3-6B为ChatGLM3系列中门槛相对较低的一个,本地部署提供兼容OpenAI的API;

LangChain用于快速开发基于大语言模型应用程序的框架,提供了一整套工具、组件、接口等使得程序与大语言模型轻松交互组件快速组合、集成;如在模型上外挂本地知识库等;

图片1.png

ChatGLM3安装

这里将安装使用int4量化版本的ChatGLM3-6B推理程序ChatGLM.cpp项目地址为:
  https://github.com/li-plus/chatglm.cpp 这里有详细的安装流程,安装完成并下载好预训练模型后即可在Python代码通过ChatGLM.cpp推理程序调用预训练模型;

示例如下:
import chatglm_cpp

pipeline = chatglm_cpp.Pipeline("/mnt/d/software/dev/gpt/chatglm.cpp/chatglm3-ggml.bin")
p = pipeline.chat([chatglm_cpp.ChatMessage(role="user", content="海南在哪里")])
print(p.content)



API Server模式:

安装组件:pip install ‘chatglm-cpp[api]’

启动基于LangChain Api的接口服务程序:

MODEL=./chatglm2-ggml.bin uvicorn chatglm_cpp.langchain_api:app --host 127.0.0.1 --port 8000

curl http请求调用:

curl http://127.0.0.1:8000 -H ‘Content-Type: application/json’ -d ‘{“prompt”: “你好”}’

LangChain调用:
from langchain.llms import ChatGLM
llm = ChatGLM(endpoint_url="http://127.0.0.1:8000")
llm.predict("你好")
'你好!我是人工智能助手,很高兴见到你,欢迎问我任何问题。'



结合gradio使用:
import gradio as gr
import chatglm_cpp

def chat(quetion,history):
    pipeline = chatglm_cpp.Pipeline("/mnt/d/software/dev/gpt/chatglm.cpp/chatglm3-ggml.bin")
    p = pipeline.chat([chatglm_cpp.ChatMessage(role="user", content=quetion)])
    return p.content

demo = gr.ChatInterface(chat)
demo.launch(inbrowser=True)



2.png

虽然只是60亿参数规模的模型,还只是int4量化版的,但从输出内容看算得上一个玩具;在与LangChain结合后可玩性将会提高;

最后的最后

感谢你们的阅读和喜欢,我收藏了很多技术干货,可以共享给喜欢我文章的朋友们,如果你肯花时间沉下心去学习,它们一定能帮到你。

因为这个行业不同于其他行业,知识体系实在是过于庞大,知识更新也非常快。作为一个普通人,无法全部学完,所以我们在提升技术的时候,首先需要明确一个目标,然后制定好完整的计划,同时找到好的学习方法,这样才能更快的提升自己。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

五、面试资料

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下。
在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

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

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

相关文章

成都跃享未来教育抖音小店深度解析靠谱与否

在如今网络购物日益繁荣的时代,抖音小店以其独特的平台优势和庞大的用户基础,吸引了越来越多的商家入驻。成都跃享未来教育咨询有限公司便是其中之一,它的抖音小店究竟靠不靠谱呢?今天,我们就来一起揭开这个谜底。 首…

vue实现拖拽元素;vuedraggable拖拽插件

效果图&#xff1a; 中文文档 以下代码可直接复制使用 安装依赖 npm i -S vuedraggable使用 <template><div class"container"><div>使用flex竖轴布局 <br>handle".mover" 可拖拽的class类名 <br>filter".forbid&qu…

解析ISP许可证:构建安全可靠的网络空间

在当今数字化时代&#xff0c;互联网已成为人们生活和工作中不可或缺的一部分。作为连接世界的纽带&#xff0c;互联网服务提供商&#xff08;ISP&#xff09;承担着重要的责任&#xff0c;为用户提供稳定、高效的网络接入和服务。而ISP许可证&#xff0c;则是保障这些服务合法…

SmartEDA:革新教育电路,点亮学生创新之光!

在当今快速发展的科技时代&#xff0c;电路设计与电子技术的融合已成为教育领域不可或缺的一部分。而SmartEDA作为一款新兴的电路设计工具&#xff0c;正以其独特的优势助力学生创新实践&#xff0c;引领教育界迈向更加智能化的未来。 SmartEDA不仅具备传统电路设计软件的基本…

maven在setting.xml配置文件中限制某个包不走某个镜像的配置案例

一、以阿里云镜像为例 1、验证示例&#xff0c;在 ideal 项目的父 pom.xml 文件中&#xff0c;配置了如下指定镜像 <repositories><repository><id>osgeo</id><url>https://repo.osgeo.org/repository/release/</url><snapshots>&l…

知识管理与集体创新——从企业到新型研发机构的实践与思考︱PMO大会

全国PMO专业人士年度盛会 鹏城实验室人力资源处人才发展主管&#xff0c;原华为供应链管理部知识管理负责人王万翎女士受邀为PMO评论主办的2024第十三届中国PMO大会演讲嘉宾&#xff0c;演讲议题为“知识管理与集体创新——从企业到新型研发机构的实践与思考”。大会将于6月29-…

72V降3.3V1A降压恒压WT6039

72V降3.3V1A降压恒压WT6039 WT6039是设计用于满足宽电压输入需求的一款高效DC-DC降压转换器芯片&#xff0c;它被优化以在12V到90V的宽电压范围内操作。该器件整合了多种功能&#xff0c;包括使能开关控制、精准的参考电源提供、误差放大器、以及为安全性能考虑的过热保护、限…

关于物料字段的前导零问题

一个需要CALL FUNCTION 一个可以直接用ALPHA&#xff0c;如果对物料用ALPHA的话&#xff0c;会导致将物料的前导零补成40位&#xff0c;导致问题出现。

小魔推-短视频矩阵批量创作一键分发同城引流工具

​小魔推是一款短视频营销裂变推广工具&#xff0c;主要服务于想做短视频营销的实体商家&#xff0c;通过BGC、PGC、UGC的打造帮助商家实现流量裂变与转化。 其中&#xff0c;小魔推AI矩阵营销是借助AI技术帮助企业/商家搭建营销矩阵&#xff0c;让商家拥有足够多的账号、足够…

在windows10 安装子系统linux(WSL安装方式)

在 windows 10 平台采用了WSL安装方式安装linux子系统 1 查找自己想要安装的linux子系统 wsl --list --online 2 在线安装 个人用Debian比较多&#xff0c;这里选择Debian&#xff0c;如下图&#xff1a; wsl --install -d Debian 安装过程中有一步要求输入用户名与密码&…

shell编程(四)—— 运算符

和其他编程语言一样&#xff0c;bash也有多种类型的运算符&#xff0c;本篇对bash的相关运算符做简单介绍。 一、运算符 1.1 算术运算符 常见的算术运算符&#xff0c;如加&#xff08;&#xff09;、减&#xff08;-&#xff09;、乘&#xff08;*&#xff09;、除&#xf…

qemu创建kvm虚拟机-x86模拟arm

1、虚拟机环境 虚拟机ubuntu22.042、下载需要的依赖 apt install openssh-server net-tools vim -yapt install qemu qemu-kvm qemu-system-arm bridge-utils uml-utilities qemu-efi-aarch64 cloud-image-utils -y#查看版本 qemu-img -V(1) 下载uefi固件 cd /optwget https…

RERCS系统开发实战案例-Part02 创建BOPF对应的业务对象(Business Object)

1、通过事务码 BOBF创建业务对象 2、输入debug&#xff0c;进入编辑模式新建BO对象&#xff1b; 选择对应的BO对象属性类别&#xff1a; 3、激活BO对象 接口页签&#xff1a; 属性页签&#xff1a;自动带出标准的常量 改接口类部分源码&#xff1a; 4、BO对象Node Elemen…

精酿啤酒未来市场的发展

当我们深入探讨中国啤酒产业时&#xff0c;不难发现这是一个既传统又充满创新活力的领域。特别是近年来&#xff0c;随着消费者对品质生活的追求和口味的多样化&#xff0c;精酿啤酒这一细分市场逐渐崭露头角&#xff0c;吸引了众多创业者的目光。 在中国&#xff0c;啤酒行业早…

linux笔记7--环境变量

文章目录 1. 什么是环境变量情景导入问题延申环境变量的作用总之 2. 环境变量的划分3. 用户和局部变量的设定4. 定义全局变量5. 注意6. 删除自己定义的全局变量、局部变量&#xff1a;问题 7. printenv8. 问题残留9. 默认的环境变量10. 如何添加环境变量11. Linux中如何永久配置…

如何分割3D模型

拆分 3D 模型进行打印可以解决许多问题。 你可以使用较小的 3D 打印机打印大型零件&#xff0c;你的零件不会出现太多翘曲&#xff0c;并且零件在清洁和后处理过程中更容易处理。 当然&#xff0c;你需要在打印后将 3D 打印部件粘合在一起&#xff0c;但对于那些无法使用大型 …

手机自动化测试笔记:1.appium的安装与使用

建议先安装前置的程序&#xff0c;同时建议使用anconda进行环境管理。 参考1&#xff1a; 深度学习笔记&#xff1a;1.anaconda安装-CSDN博客https://blog.csdn.net/weixin_42771529/article/details/139434840 参考2&#xff1a; 笔记&#xff1a;如何在pycharm中使用anaco…

【java计算机毕设】图书管理系统javaweb java MySQL springboot vue html maven送文档+ppt 代码源码计算机项目

1项目功能 【java计算机专业学长毕业设计分享】 智慧图书管理系统 Java SpringBoot vue HTML MySQL 前后端分离 2项目介绍 系统功能&#xff1a; 智慧图书管理系统包括管理员和用户两种角色。 管理员的功能包括在个人中心修改个人信息和密码&#xff0c;管理员功能模块管理管理…

第一百零二节 Java面向对象设计 - Java静态内部类

Java面向对象设计 - Java静态内部类 静态成员类不是内部类 在另一个类的主体中定义的成员类可以声明为静态。 例子 以下代码声明了顶级类A和静态成员类B&#xff1a; class A {// Static member classpublic static class B {// Body for class B goes here} }注意 静态成…

# RocketMQ 实战:模拟电商网站场景综合案例(七)

RocketMQ 实战&#xff1a;模拟电商网站场景综合案例&#xff08;七&#xff09; 一、RocketMQ 实战&#xff1a;模拟电商网站场景综合案例–生成预订单流程分析1 二、RocketMQ 实战&#xff1a;模拟电商网站场景综合案例–生成预订单流程分析2 在 shop-order-service 工程模…