InternLM大模型实战-3.InternLM+Langchain搭建知识库

文章目录

  • 前言
  • 笔记正文
    • 大模型开发范式
      • RAG
      • Finetune
    • LangChain简介
    • 构建向量数据库
    • 搭建知识库助手
      • 1 InternLM+Langchain
      • 2 构建检索问答链
      • 3 优化建议
    • Web Demo 部署
    • 搭建知识库

前言

本文是对于InternLM全链路开源体系系列课程的学习笔记。【基于 InternLM 和 LangChain 搭建你的知识库】 https://www.bilibili.com/video/BV1sT4y1p71V/?share_source=copy_web&vd_source=99d9a9488d6d14ace3c7925a3e19793e

笔记正文

大模型开发范式

LLM的局限:知识的时效性(最新知识)、专业能力有限(垂直领域)、定制化成本高(个人专属)

两种开发范式用于解决这种局限性

RAG

检索增强生成。
低成本、可实时更新、受基座模型影响大、单次回答知识有限
在这里插入图片描述

Finetune

微调。
可个性化微调、知识覆盖面广、成本高昂、无法实时更新

LangChain简介

LangChain是一个开源工具,通过为各种LLM提供通用接口来简化应用程序的开发流程,帮助开发者自由构建LLM应用。其核心组成模块是Chains,可以见各种组建组合实现应用。
在这里插入图片描述

构建向量数据库

加载个人数据
加载源文件 -> 文档分块 -> 文档向量化

  • 确定源文件的类型,针对不同类型的源文件选用不同的加载器
  • 单个文档超出模型上下文的上限,所以需要切分
  • 使用向量数据库来支持语义检索,需要将文档向量化存入向量数据库

虽然源文件可以是各种格式的,但是存入向量数据库之后都会成为纯的以向量形式存储的字符串

搭建知识库助手

1 InternLM+Langchain

可以全部采用本地部署本地加载的形式,Langchain有提供自定义大模型的部署方式,将InternLM的接口封装为符合Langchain的LLM的一个类。

2 构建检索问答链

Langchain提供了检索问答链模板,可以自动实现只是检索、Prompt嵌入、LLM问答的全流程。
也就是说,只需要自己来进行模型的部署和向量知识库的创建。

3 优化建议

在这里插入图片描述

Web Demo 部署

建议web demo部署的有gradio和streamlit.

搭建知识库

见第三次作业博客中。

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

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

相关文章

今年春节联欢晚会中的扑克魔术到底是咋变的?

今年的刘谦给全国观众带来了俩魔术,一个是洗牌一个是撕牌,前面第一个魔术看不出来太神奇了,但是第二魔术感觉挺有趣的我可以简单分析分析。 然后我们列出这个魔术的关键步骤: 打乱四张牌 1 2 3 4 对折、撕开、面向同一个方向重…

Windows下搭建Redis Sentinel

下载安装程序 下载Redis关于Windows安装程序,下载地址 下载成功后进行解压,解压如下: 配置redis和sentinel 首先复制三份redis.windows.conf,分别命名为:redis.6379.conf、redis.6380.conf、redis.6381.conf&…

无心剑中译佚名《春回大地》

The Coming of Spring 春回大地 I am coming, little maiden, With the pleasant sunshine laden, With the honey for the bee, With the blossom for the tree. 我来啦,小姑娘 满载着欣悦的阳光 蜂儿有蜜酿 树儿有花绽放 Every little stream is bright, All …

机器学习:分类决策树(Python)

一、各种熵的计算 entropy_utils.py import numpy as np # 数值计算 import math # 标量数据的计算class EntropyUtils:"""决策树中各种熵的计算,包括信息熵、信息增益、信息增益率、基尼指数。统一要求:按照信息增益最大、信息增益率…

iOS AlDente 1.0自动防过充, 拯救电池健康度

经常玩iOS的朋友可能遇到过长时间过充导致的电池鼓包及健康度下降问题。MacOS上同样会出现该问题,笔者用了4年的MBP上周刚拿去修了,就是因为长期不拔电源的充电,开始还是电量一半的时候不接电源会黑屏无法开机,最后连着电源都无法…

春晚刘谦魔术的模拟程序

昨晚春晚上刘谦的两个魔术表演都非常精彩,尤其是第二个魔术,他演绎了经典的约瑟夫环问题! 什么是约瑟夫环问题? 约瑟夫环(Josephus problem)是一个经典的数学问题,最早由古罗马历史学家弗拉维…

VUE学习——数组变化侦测

官方文档 变更方法: 使用之后,ui可以直接发生改变。改变原数组 替换数组: 使用之后需要接受重新赋值,不然ui不发生改变。不改变原数组

JavaScript表单元素

🧑‍🎓 个人主页:《爱蹦跶的大A阿》 🔥当前正在更新专栏:《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》 ​ ​ ✨ 前言 表单作为页面的重要交互组件,JavaScript 提供了丰富的表单元素操作方…

计算机网络第6章(应用层)

6.1、应用层概述 我们在浏览器的地址中输入某个网站的域名后,就可以访问该网站的内容,这个就是万维网WWW应用,其相关的应用层协议为超文本传送协议HTTP 用户在浏览器地址栏中输入的是“见名知意”的域名,而TCP/IP的网际层使用IP地…

Flink-CDC实时读Postgresql数据

前言 CDC,Change Data Capture,变更数据获取的简称,使用CDC我们可以从数据库中获取已提交的更改并将这些更改发送到下游,供下游使用。这些变更可以包括INSERT,DELETE,UPDATE等。 用户可以在如下的场景使用cdc: 实时数据同步:比如将Postgresql库中的数据同步到我们的数仓中…

每日五道java面试题之java基础篇(一)

第一题 什么是java? PS:碎怂 Java,有啥好介绍的。哦,⾯试啊。 Java 是⼀⻔⾯向对象的编程语⾔,不仅吸收了 C语⾔的各种优点,还摒弃了 C⾥难以理解的多继承、指针等概念,因此 Java 语⾔具有功能强⼤和简单易…

微信小程序checkbox多选

效果图 <view class"block"><view class"header"><view class"header-left"><text class"pu-title">数据</text><text class"pu-tip">至少选择一个指标</text></view>&l…

WebSocketServer方法里注入不了其他类

请直接看原文: WebSocketServer无法注入其他对象的问题 - 知乎 (zhihu.com) WebSocket服务无法使用自动注入解决方法_websocket sever不可以直接注入吧-CSDN博客 ------------------------------------------------------------------------------------------------------…

【数据结构】二叉树的顺序结构及实现(堆)

目录 1.二叉树的顺序结构 2.堆的概念及结构 3.堆的实现 3.1堆向下调整算法 3.2堆的创建 3.3建堆的时间复杂度 3.4堆的插入 3.5堆的删除 3.6堆的代码实现 3.7堆的应用 3.71堆排序 3.72 TOP-K问题 1.二叉树的顺序结构 普通的二叉树是不适合用数组来存储的&#xff0c;因…

vue父子组件通讯的几种方式总结学习

一直都是公司前端在写组件&#xff0c;我想着自己也写一波&#xff0c;然后先看看父子组件传值的内容&#xff0c;想写一写小demo然后练习一下这个内容&#xff0c;也算是系统学习一下怎么处理这个内容 其实就是2种父传子和子传父 1.父组件传子组件数据 其实就是父在标签中可…

学习Android的第八天

目录 Android ImageView 图像视图 ImageView 的基本使用 src属性和background属性的区别 范例 解决 anndroid:blackground 属性拉伸导致图片变形的方法 设置透明度的问题 范例 android:src 和 android:background 结合 范例 Java 代码中设置 blackground 和 src 属性…

分享66个表单按钮,总有一款适合您

分享66个表单按钮&#xff0c;总有一款适合您 66个表单按钮下载链接&#xff1a;https://pan.baidu.com/s/19lOG5sxI2Uy3KBIscffHRw?pwd8888 提取码&#xff1a;8888 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集整理更不…

社区店经营策划书:从零到一,打造特色店铺

作为一名资深的鲜奶吧创业者&#xff0c;我深知开一家社区店并非易事&#xff0c;但凭借五年的经营经验和不断的学习&#xff0c;我成功地将我的鲜奶吧打造成为了一个特色店铺。 今天&#xff0c;我将与大家分享这份经营策划书&#xff0c;希望能为那些想开鲜奶吧或开其他店铺…

国产光耦2024:发展机遇与挑战全面解析

随着科技的不断进步&#xff0c;国产光耦在2024年正面临着前所未有的机遇与挑战。本文将深入分析国产光耦行业的发展现状&#xff0c;揭示其在技术创新、市场需求等方面的机遇和挑战。 国产光耦技术创新的机遇&#xff1a; 国产光耦作为光电器件的重要组成部分&#xff0c;其技…

TELNET 远程终端协议

远程终端协议 TELNET TELNET 是一个简单的远程终端协议&#xff0c;也是互联网的正式标准。 用户用 TELNET 就可在其所在地通过 TCP 连接注册&#xff08;即登录&#xff09;到远地的另一个主机上&#xff08;使用主机名或 IP 地址&#xff09;。 TELNET 能将用户的击键传到…