【RAG】内部外挂知识库搭建-本地GPT

2024-04-04 00:04

本文主要是介绍【RAG】内部外挂知识库搭建-本地GPT,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大半年的项目告一段落了,现在自己找找感兴趣的东西学习下,看看可不可以搞出个效果不错的local GPT,自研下大模型吧

RAG是什么?
检索增强生成(RAG)是指对大型语言模型输出进行优化,使其能够在生成响应之前引用训练数据来源之外的权威知识库。大型语言模型(LLM)用海量数据进行训练,使用数十亿个参数为回答问题、翻译语言和完成句子等任务生成原始输出。
https://github.com/chatchat-space/Langchain-Chatchat

搭建local GPT:https://github.com/PromtEngineer/localGPT
==》本地版的 GPT,可以下載 source code

学习视频:https://www.youtube.com/watch?v=MlyoObdIHyo

  • 1、Clone code
git clone https://github.com/PromtEngineer/localGPT.git
  • 2、安装 conda:https://www.anaconda.com/download-success
  • 3、安装pip依赖:pip install -r requirements.txt
  • 4、安装 LLAMA-CPP :
    LocalGPT 使用 LlamaCpp-Python 进行 GGML(需要 llama-cpp-python <=0.1.76)和 GGUF(llama-cpp-python >=0.1.83)模型。

苹果芯片用:

# Example: METAL
CMAKE_ARGS="-DLLAMA_METAL=on"  FORCE_CMAKE=1 pip install llama-cpp-python==0.1.83 --no-cache-dir

NVIDIA芯片用:

# Example: cuBLAS
CMAKE_ARGS="-DLLAMA_CUBLAS=on" FORCE_CMAKE=1 pip install llama-cpp-python==0.1.83 --no-cache-dir

docker官方文档:https://www.dockerdocs.cn/engine/index.html

基本概念
https://ithelp.ithome.com.tw/users/20120030/ironman/5515

效果
https://docs.google.com/presentation/d/1dkfd9cAwsHfM2jdKtn6RHixecoD6X1lF2Mby60YxmT4/edit#slide=id.g201e72434cd_0_245

参考学习:https://blog.csdn.net/u013010473/category_11657660.html?spm=1001.2014.3001.5482


将文件放入 SOURCE_DOCUMENTS 文件夹中。在 SOURCE_DOCUMENTS 文件夹中放置多个文件夹,代码将递归读取文件。

LocalGPT 目前支持以下文件格式。 LocalGPT 使用 LangChain 来加载这些文件格式。 Constants.py 中的代码使用 DOCUMENT_MAP 字典将文件格式映射到相应的加载器。为了添加对其他文件格式的支持,只需添加该字典以及该文件格式和来自 LangChain 的相应加载器即可。

DOCUMENT_MAP = {".txt": TextLoader,".md": TextLoader,".py": TextLoader,".pdf": PDFMinerLoader,".csv": CSVLoader,".xls": UnstructuredExcelLoader,".xlsx": UnstructuredExcelLoader,".docx": Docx2txtLoader,".doc": Docx2txtLoader,
}

这篇关于【RAG】内部外挂知识库搭建-本地GPT的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874326

相关文章

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

4B参数秒杀GPT-3.5:MiniCPM 3.0惊艳登场!

​ 面壁智能 在 AI 的世界里,总有那么几个时刻让人惊叹不已。面壁智能推出的 MiniCPM 3.0,这个仅有4B参数的"小钢炮",正在以惊人的实力挑战着 GPT-3.5 这个曾经的AI巨人。 MiniCPM 3.0 MiniCPM 3.0 MiniCPM 3.0 目前的主要功能有: 长上下文功能:原生支持 32k 上下文长度,性能完美。我们引入了

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

pico2 开发环境搭建-基于ubuntu

pico2 开发环境搭建-基于ubuntu 安装编译工具链下载sdk 和example编译example 安装编译工具链 sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib 注意cmake的版本,需要在3.17 以上 下载sdk 和ex

STM32内部闪存FLASH(内部ROM)、IAP

1 FLASH简介  1 利用程序存储器的剩余空间来保存掉电不丢失的用户数据 2 通过在程序中编程(IAP)实现程序的自我更新 (OTA) 3在线编程(ICP把整个程序都更新掉) 1 系统的Bootloader写死了,只能用串口下载到指定的位置,启动方式也不方便需要配置BOOT引脚触发启动  4 IAP(自己写的Bootloader,实现程序升级) 1 比如蓝牙转串口,

GPT系列之:GPT-1,GPT-2,GPT-3详细解读

一、GPT1 论文:Improving Language Understanding by Generative Pre-Training 链接:https://cdn.openai.com/research-covers/languageunsupervised/language_understanding_paper.pdf 启发点:生成loss和微调loss同时作用,让下游任务来适应预训

FreeRTOS内部机制学习03(事件组内部机制)

文章目录 事件组使用的场景事件组的核心以及Set事件API做的事情事件组的特殊之处事件组为什么不关闭中断xEventGroupSetBitsFromISR内部是怎么做的? 事件组使用的场景 学校组织秋游,组长在等待: 张三:我到了 李四:我到了 王五:我到了 组长说:好,大家都到齐了,出发! 秋游回来第二天就要提交一篇心得报告,组长在焦急等待:张三、李四、王五谁先写好就交谁的

java线程深度解析(一)——java new 接口?匿名内部类给你答案

http://blog.csdn.net/daybreak1209/article/details/51305477 一、内部类 1、内部类初识 一般,一个类里主要包含类的方法和属性,但在Java中还提出在类中继续定义类(内部类)的概念。 内部类的定义:类的内部定义类 先来看一个实例 [html]  view plain copy pu

JavaFX环境的搭建和一个简单的例子

之前在网上搜了很多与javaFX相关的资料,都说要在Eclepse上要安装sdk插件什么的,反正就是乱七八糟的一大片,最后还是没搞成功,所以我在这里写下我搭建javaFX成功的环境给大家做一个参考吧。希望能帮助到你们! 1.首先要保证你的jdk版本能够支持JavaFX的开发,jdk-7u25版本以上的都能支持,最好安装jdk8吧,因为jdk8对支持JavaFX有新的特性了,比如:3D等;

springboot+maven搭建的项目,集成单元测试

springboot+maven搭建的项目,集成单元测试 1.在pom.xml文件中引入单元测试的依赖包 <!--单元测试依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></depen