win11部署自己的privateGpt(2024-0304)

news2024/12/27 12:26:44

什么是privateGpt?

privategpt开源项目地址

https://github.com/imartinez/privateGPT/tree/main

官方文档

https://docs.privategpt.dev/overview/welcome/welcome

PrivateGPT是一个可投入生产的人工智能项目,利用大型语言模型(LLMs)的强大能力,即使在没有互联网连接的情况下,也能够提出关于您文档的问题。项目100%私密,任何时候都不会有数据离开您的执行环境。
该项目提供了一个API,提供构建私密、上下文感知的人工智能应用程序所需的所有基本功能。它遵循并扩展了OpenAI API标准,并支持正常和流式响应。
API分为两个逻辑块:
高级API,抽象了RAG(检索增强生成)管道实现的所有复杂性:
文档摄取:内部管理文档解析、拆分、元数据提取、嵌入生成和存储。
使用来自摄取文档的上下文进行聊天和完成:抽象了上下文的检索、提示工程和响应生成。
低级API,允许高级用户实现自己的复杂管道:
基于文本的嵌入生成。
给定查询,检索从摄取的文档中返回最相关的文本块。
除此之外,提供了一个可用于测试API的工作Gradio UI客户端,以及一组有用的工具,如批量模型下载脚本、摄取脚本、文档文件夹监视等。

开源平台 语言模型网站

https://huggingface.co/welcome

Hugging Face是一个提供自然语言处理(NLP)模型和工具的开源平台。该平台致力于构建和分享先进的NLP模型,并提供易于使用的API和工具,使研究人员和开发者能够快速使用和部署这些模型。
Hugging Face的主要特点包括:
模型存储库: Hugging Face提供了一个庞大的模型存储库,其中包含各种NLP任务的预训练模型,如文本生成、文本分类、命名实体识别等。这些模型基于最新的研究成果,并由全球社区进行不断更新和改进。
Transformers库: Hugging Face发布了一个名为Transformers的开源库,该库提供了访问各种NLP模型的简单API。该库支持多种流行的深度学习框架,如TensorFlow和PyTorch,使用户能够轻松地在其项目中使用这些模型。
任务特定工具: Hugging Face的平台包括一些任务特定的工具,例如文本生成、文本分类和对话生成的API。这些工具简化了NLP模型的使用,并允许用户针对特定任务进行微调和部署。
总体而言,Hugging Face通过提供易于访问、使用和共享的NLP模型,推动了自然语言处理领域的进步,并促进了开发者和研究人员之间的合作。

开始搭建

虚拟独立python环境

使用anaconda安装

https://www.anaconda.com/download/
在这里插入图片描述

进入Anaconda cmd命令行

在这里插入图片描述

设定独立虚拟环境python版本

安装python 3.11.0版本
conda create -n gpt python==3.11.0

在这里插入图片描述

设定环境

conda activate gpt

在这里插入图片描述

搭建C++编译环境(必须)

下载 VisualStudioSetup.exe 安装包
https://c2rsetup.officeapps.live.com/c2r/downloadVS.aspx?sku=community&channel=Release&version=VS2022&source=VSLandingPage&cid=2030:a866cb1891624541a3f9b092d2429dfd
在这里插入图片描述
选择C++
在这里插入图片描述

nvidia显卡驱动(gpu) 可选,默认是用cpu

安装显卡驱动
https://developer.nvidia.com/cuda-downloads
点击历史版本
在这里插入图片描述
安装11.8.0版本
在这里插入图片描述

使用nvidia 配置 (使用 Anaconda powershell)

$env:CMAKE_ARGS='-DLLAMA_CUBLAS=on'
poetry run pip install --force-reinstall --no-cache-dir llama-cpp-python

下载privateGpt 源码

git clone  https://github.com/imartinez/privateGPT.git

进入privateGpt 目录

安装poetry

使用pip安装poetry

pip install poetry
## docx解析支持
pip install docx2txt 

在这里插入图片描述

poetry安装 ui&local

poetry install --with ui,local
## 使用默认的配置,下载大语言模型
poetry run python scripts/setup

在这里插入图片描述
在这里插入图片描述

启动服务

set PGPT_PROFILES=local
python -m private_gpt

在这里插入图片描述

访问: localhost:8001
在这里插入图片描述
支持的文件格式
privateGPT默认支持包含明文的所有文件格式(例如,.txt文件,.html等)。然而,这些基于文本的文件格式仅被视为文本文件,不会以任何其他方式进行预处理。
注意文件的编码必须为utf-8

它还支持以下文件格式:

.hwp
.pdf
.docx
.pptx
.ppt
.pptm
.jpg
.png
.jpeg
.mp3
.mp4
.csv
.epub
.md
.mbox
.ipynb
.json

常用的配置:
https://docs.privategpt.dev/manual/advanced-setup/llm-backends

Using OpenAI
If you cannot run a local model (because you don’t have a GPU, for example) or for testing purposes, you may decide to run PrivateGPT using OpenAI as the LLM and Embeddings model.

In order to do so, create a profile settings-openai.yaml with the following contents:

llm:
  mode: openai
openai:
  api_base: <openai-api-base-url> # Defaults to https://api.openai.com/v1
  api_key: <your_openai_api_key>  # You could skip this configuration and use the OPENAI_API_KEY env var instead
  model: <openai_model_to_use> # Optional model to use. Default is "gpt-3.5-turbo"
  # Note: Open AI Models are listed here: https://platform.openai.com/docs/models

And run PrivateGPT loading that profile you just created:

PGPT_PROFILES=openai make run

cmd use:

make run PGPT_PROFILES=openai

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

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

相关文章

Windows安装SSH教程

Windows安装SSH教程 一、SSH1.SSH简介2.SSH功能3.SSH验证3.1 第一种级别&#xff08;基于口令的安全验证&#xff09;3.2 第二种级别&#xff08;基于密匙的安全验证&#xff09; 4.SSH层次4.1 传输层协议 [SSH-TRANS]4.2 用户认证协议 [SSH-USERAUTH]4.3 连接协议 [SSH-CONNEC…

场景问题: VisualVM工具Profiler JDBC不是真实执行的SQL

1. 问题 诡异的问题表象&#xff1a; 前端反馈分页接口的Total字段一直为0 使用Visualvm中的 Profiler 注入到应用后&#xff0c;查看JDBC监控得到了分页接口执行的SQL&#xff0c;复制出来执行是55. 此时还没有注意到 IN 的范围中有一个特别的值 NULL &#x1f928; 2. 排查…

【运维必学】2.零基础搞IT运维之服务器操作系统基础知识储备

微信改版了&#xff0c;现在看到我们全凭缘分&#xff0c;为了不错过【全栈工程师修炼指南】重要内容及福利&#xff0c;大家记得按照上方步骤设置「接收文章推送」哦~ 文章目录&#xff1a; 温馨提示&#xff1a;作者最近开通的知识星球&#xff0c;全栈系列从门到实践教程将会…

QT----写完的程序打包为APK在自己的手机上运行

目录 1、qt安装android组件2、打开qt配置Android 环境3、手机打开开发者模式&#xff0c;打开usb调试&#xff0c;连接电脑4、运行代码 1、qt安装android组件 qtcreater–工具-QTMaintenaceTool-startMaintenaceTool—登陆—添加或修改组件—找到android&#xff0c;安装 若是…

Windows环境MySQL全量备份+增量备份

目录 一、环境准备 1.1.安装MySQL 1.2.添加log-bin日志配置 二、创建测试数据库和表 2.1.创建测试数据库 2.2.创建测试数据表 三、全量备份恢复数据库 3.1.全量备份数据库 3.2全量恢复数据库 四、增量备份恢复数据库 4.1.增量备份数据库 4.2.增量恢复数据库 五、…

抽象步骤条(2.0版本)

vue3 router ele-plus 猜猜看为什么使用组件库&#xff01; 他呀的&#xff01;查看密码要自己写&#xff0c;验证信息也要自己写&#xff0c;所以说会用组件库会轻松一点&#xff0c;&#xff0c;&#xff0c; 代码如下 <template><div class"main"&g…

自动化构建平台(五)之Jenkins初始化配置以及插件安装操作

文章目录 前言一、安装必要插件二、系统参数配置三、全局工具配置总结 前言 上一篇我们介绍了Jenkins的安装和登录等相关操作&#xff0c;今天给大家介绍登录Jenkins后的一些初始化配置和插件安装的操作。因为如果要使用Jenkins来进行代码构建&#xff0c;必须先安装相关的插件…

WebDAV之π-Disk派盘+人生Life

人生Life是一款日程软件,在这款待办的日程软件当中各种功能极为的完善,完全的足够用户在日常当中的使用,你的待办方面的各种内容都能够在软件上面进行规划和填充,通过待办事项来帮助用户提高在日常当中的效率,对于用户来说这款待办事项的软件是绝佳的选择。 π-Disk派盘 …

VScode---php环境搭建

文章目录 1.下载php Dehug;php server2.下载php环境3.配置环境变量5.配置php.ini文件6.设置vscode6.测试遇到的问题 1.下载php Dehug;php server 2.下载php环境 下载地址&#xff1a;https://www.php.net/downloads.php 3.配置环境变量 C:\Users\hacker>php -v PHP 8.3.3 (…

c++编程复习之字符数组:电报文字

电报文字 内存限制&#xff1a;128Mb 时间限制&#xff1a;1000s 提交&#xff1a;138 解决&#xff1a;13 题目描述 输入一行电报文字&#xff0c;将字母变成其下一字母&#xff08;如’aa’变成’bb’……’zz’变成’&#xff41;&#xff41;’其它字符不变&#xff09;。 …

【leetcode】随机链表的复制

大家好&#xff0c;我是苏貝&#xff0c;本篇博客带大家刷题&#xff0c;如果你觉得我写的还不错的话&#xff0c;可以给我一个赞&#x1f44d;吗&#xff0c;感谢❤️ 点击查看题目 思路: struct Node* copyRandomList(struct Node* head) {struct Node* curhead;//1.copy原链…

温湿度传感器SHT21

SHT21是一款基于IIC的温湿度传感器&#xff0c;它的引脚及定义如下&#xff1a; 标准的IIC器件&#xff0c;没有其他多余的引脚&#xff0c;应用框图如下&#xff1a; 温度的测量范围是-40到125℃&#xff0c;湿度测量范围0-100%RH&#xff0c;具体参数及采样精度见下图&#x…

利用excel文件增量同步一个库的数据并自动校正两端数据库条数不一致

利用excel文件增量同步一个库的数据并自动校正两端数据库条数不一致 现在有sqlserver和mysql两个库上的表在进行同步&#xff0c;sqlserver上的是源表&#xff0c;mysql上是目标表。 我们就把sqlserver上的数据同步到mysql上 mysql 是没有数据的。 sqlserver的三个表只是创建了…

Java-集合/容器

集合的概念 当我们需要保存一组一样&#xff08;类型相同&#xff09;的元素的时候&#xff0c;我们应该使用一个容器来存储&#xff0c;数组就是这样一个容器。 数组的特点&#xff1a; 数组是一组数据类型相同的元素集合&#xff1b; 创建数组时&#xff0c;必须给定…

Rabbitmq消息丢失-生产者消息丢失(一)

说明&#xff1a;消息生产者在将数据发送到Mq的时候&#xff0c;可能由于网络等原因造成数据投递失败。 消息丢失大致分三种&#xff1a;这里说的是生产者消息丢失&#xff01; 分析原因&#xff1a; 1.有没有一种可能&#xff0c;我刚发送消息&#xff0c;消息还没有到交换…

Matlab|配电网智能软开关(sop)规划模型

目录 1 主要内容 目标函数 2 部分程序 3 程序结果 3.1 sop选址定容优化模型 3.2 对比算例&#xff08;不含sop&#xff09; 4 下载链接 1 主要内容 该程序参考文献《基于改进灵敏度分析的有源配电网智能软开关优化配置》&#xff0c;采用二阶锥算法&#xff0c;以改进的…

Vue3+element-plus复杂表单分组处理

一、为什么表单要分组处理&#xff1f; 方便表单字段的复用&#xff1a;例如&#xff0c;你的表单有十个字段会在很多的表单都会用到&#xff0c;那么表单则需要进行分组进行表单复用&#xff1b;实现不同角色的表单权限控制&#xff1a;例如一个表单有60个字段&#xff0c;角…

STM32 NAND FLASH知识点

1.NAND FLASH的简介 NAND FLASH 的概念是由东芝公司在 1989 年率先提出&#xff0c;它内部采用非线性宏单元模式&#xff0c;为固态大容量内存的实现提供了廉价有效的解决方案。 NAND FLASH 存储器具有容量较大&#xff0c;改写速度快等优点&#xff0c;适用于大量数据的存储&…

【MySQL】事务、锁

目录 事务案例场景模拟实现转账&#xff1a;从张三的账户转账500元到李四的账户SQL示例异常 什么是事务事务的特性&#xff0c;简称ACID 属性实现原理redo logundo log MySQL 中一条 SQL 更新语句的执行过程( InnoDB 存储引擎)事务的提交流程隔离性并发事务产生的问题事务隔离级…

434G数据失窃!亚信安全发布《勒索家族和勒索事件监控报告》

最新态势快速感知 最新一周全球共监测到勒索事件90起&#xff0c;与上周相比数量有所增加。 lockbit3.0仍然是影响最严重的勒索家族&#xff1b;alphv和cactus恶意家族也是两个活动频繁的恶意家族&#xff0c;需要注意防范。 Change Healthcare - Optum - UnitedHealth遭受了…