当前位置: 首页 > wzjs >正文

呼市网站制作招聘甘肃网站推广

呼市网站制作招聘,甘肃网站推广,宝安做棋牌网站建设多少钱,怎么把网站横幅做很大1 原理 VideoRag在LightRag基础上增加了对视频的处理,详细的分析参考LightRag的兄弟项目VideoRag系统分析-CSDN博客。 Quipus的底层的知识库的构建的核心流程与LightRag类似,但在技术栈的选择和处理有所不同。Quipus对于视频的处理实现,与Vi…

1  原理

    VideoRag在LightRag基础上增加了对视频的处理,详细的分析参考LightRag的兄弟项目VideoRag系统分析-CSDN博客。

     Quipus的底层的知识库的构建的核心流程与LightRag类似,但在技术栈的选择和处理有所不同。Quipus对于视频的处理实现,与VideoRag有所不同。本文重点描述Quipus的知识库的构建过程。

Quipus系统的介绍参考:Quipus,LightRag的Go版本的实现_golang lightrag-CSDN博客

1.1 文本知识库的构建

分为以下几个步骤:chunk、知识图谱构建、知识总结。

1.1.1 chunk

文本知识库在构建时,支持txt,doc,docx,html,pdf等类型。在处理时,读取文件的方式,分为三类:

文本类:直接读取

二进制文件:doc\docx\pdf等,为了便于统一处理,同时也为了避免文件加载时避免格式差异导致的失败,通过调用liboffice将doc\docx转换为pdf,再调用pdf工具按页读取pdf文档。

html:用户指定网页链接,在获取网页后,调用LLM服务,直接提取网页中的文本内容。

在chunk时,为避免超过llm模型的处理能力,需要计算token的数量,在达到预设的值时,进行切分。为了提高效率,在quipus中作了以下的优化:

假设token的数量为T,先加载3T长度的文本,计算3T长度的文本的token数量A,计算R=T-A。

然后计算后续的R长度文本,为了避免截取半个汉字,计算的token数量时,按句子的结束标点符号去要计算的文本段,当超过了token预设值,即为一个chunk,将该chunk添加到向量数据库中,在计算向量时,通过embedding计算Dim。

1.1.2 知识图谱的构建

知识图谱的知识的提取过程与LightRag类似。

知识提取时,需要将1.1.1所述的chunk取出来,向大模型请求,提取出Entity和Relation。

并以此创建需要存储Entity和Relation。

Entity中包含有:指定的知识库的Id,文件的Id,Entity的描述信息

Relation包含:srcEntity,targetEntity和关系描述

具体步骤如下:

1、遍历chunk库,从chunk向量库中取出知识,通过LLM进行知识结构的提取,提取出知识的Entity和Relation.将Entity和Relation存储到向量数据库中。

2、将Entity存储到图数据库中,将Relation存储到数据库,并与srcEntity指向的Entity,以及targetEntity指向的entity关联起来。在存储的时候,要先检索是否有实体或关系已存在,如果存在的话,则将知识进行比较,如果不同,则在知识后面进行追加,否则否略,在追加后进行知识的更新;否则进行知识的添加

1.1.3 知识总结

1、遍历chunk库,将chunk发送到LLM进行知识总结,对每个chunk进行总结,总结的知识为二级结构:一级为总的结论,二级为若干个知识点

2、将每个chunk的知识点打包,然后再送往LLM进行总结,总结的即为该文章的知识总结。总结的知识为二级:一级为该文章的总的结论,二级为该文章的若干知识点。

1.2 视频知识库的构建

对于视频知识库的构建,与文本库的差异点在于,前面的从视频中提取知识的困难。在从视频中根据音频和视频提出文本后,后续的文本处理过程为1.1相同。

因此这里重点关注音视频的处理。

在这里重点是使用ffmpeg进行音视的切分处理。

处理过程如下:

1、首先,获得文件的probe信息,从probe信息可以得到媒体文件的基本信息。

2、如果有音频,首先处理音频信息。按步长(例如120s),读取音频的内容,并将内容送到LLM识别音频内容,并将其存在transaction向量库中,id设置为文件名-starttime-endtime

3、如果有视频,将在指定的视频段时,按每5s(也可以设置更长或更短)进行抽帧,如果按步120s,则是抽取24帧到缓存,然后调用LLM,进行图像识别,得到相应的结果,再取出transaction向量库中中相同位置的音频的识别文本,组装结构体:

{"audio":"xxxx","video":"xxx"},存储chunk库

 后续的知识图谱的提取和短识的总结和1.1相同。

1.3 知识召回

知识召回有两种模式:向量方式,知识图谱增强方式。在进行向量检索时,距离越大意味知识的关联性越差,为避免召回知识的关联度偏低,设置距离差距到达一定值时,丢弃召回的知识,避免知识污染。

1.3.1 向量检索方式

(1)调用LLM服务分析关键词,调用llm embedding模型计算向量

(2)根据计算的向量从chunk向量库中检索内容。

(3)从检索内容中根据距离,从小到大,拼接召回的知识。计算拼接内容的长度不能超过预设的token的限制。设置token的限制时,要考虑prompt模板的长度。

(4)再将召回的知识,根据system prompt模板生成system prompt

(5)创建chat req,设置system role对应的内容为system prompt, user role对应的内容为用户的问题

(6)请求llm服务,得到答案。

1.3.2 知识图谱增加方式

(1)向LLM服务请求分析用户问题的关键词

(2)根据关键词从entitydb和relation db中分别检索实体和关系

(3)根据relation从图数据库,取出两端的entity,添加到entity列中

(4)根据entity 从图数据库,检索与之有关的relation,以及relation另一端的srcEntity或targetEntity,计算enttity与之有关联的relation的数量作为rank值

 (4)  根据rank进行排序,rank值越大,越放在前面

(5)根据entity中的值,从chunk中找到相应的chunk值

(6)组装知识:包括entity中的内容、realtion中的内容,chunk文本,生成csv文本

(7)组装的知识,根据system  prompt模板生成system prompt

  (8) 创建chat req,设置system role对应的内容为system prompt, user role对应的内容为用户的问题

(9)请求llm服务,得到答案。

2  使用的关键组件

项目本身使用的语言为golang,因此在选择相关的组件时,倾向使用有go-sdk的组件。

向量库使用Milivus

图数据库使用Dgraph

媒体处理使用开源的ffmpeg-go,实际上这是对ffmpeg命令的一个封装的库

3 与当前一些系统的区别

目前大多数的rag并不支持video的知识的提取,而quipus支持文本、doc文档、pdf、图片、音频、视频的处理。

核心处理流程参考LightRag,在视频处理与VideoRag有所不同。

4 使用过程

安装过程参考Quipus,LightRag的Go版本的实现_golang lightrag-CSDN博客

ollama目前尚不支持语音识别,但支持图片的识别

xinference支持openai模型,支持语音的识别,也支持图像识别。

这里的举例,配置语音识别使用xinference的语音识别,图像识别使用ollama,embedding使用ollama的nomic-embed-text

4.1 基础环境准备

4.1.1 安装xinference部署语音识别模型

通过容器部署xinfrence:

docker run --name xinference -d -p 9997:9997 -e XINFERENCE_HOME=/data -v /data/xinference:/data --gpus all xprobe/xinference:latest xinference-local -H 0.0.0.0

打开浏览器输入地址http://127.0.0.1:9997/打开管理页面,点击启动模型->音频模型,选择

SenseVoiceSmall

下载中心选择modelscope,然后点击左下角小火箭,开始部署。xinference自动从modelsocpe下载模型,并部署

部署成功后,可以点击运行模型->音频模型,看到正在运行的SenseVoiceSmall

4.1.2 安装ollama部署图像识别模型、embedding模型、chat模型

 用户可以自己下载ollama容器,也可以自动下载代码编译。

docker run -d --netowk host -v /ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

下载图像识别模型

docker exec -it ollama ollama pull minicpm-v:latest

下载embedding模型

docker exec -it ollama ollama pull nomic-embed-text:latest

下载chat模型

docker exec -it ollama ollama pull  qwen2:latest
docker ollama show --modelfile qwen2 > /ollama/Modelfile
修改模型文件Modelfile
PARAMETER num_ctx 32768
重新创建模型
docker ollama create -f /root/.ollama/Modelfile qwen2m

4.2 配置模型

点击配置-供应商,可以添加供应商,在添加供应商之后,选择相应的供应商后,添加相应的模型

4.3 创建知识库

点击知识库按钮->创建按钮,准备创建知识库

在这里输入知识库的名称,选择模型和构建的类型,分块无论是否选择,都是必须要做的。摘要和关键在知识总结后,才会有内容。点击保存后,空白的知识库创建完成,用户可以准备好上传的文件。

4.4 上传视频

4.5 开始构建

开始构建,构建有两种方式:增量构建和全量构建,全量构建是会删除之前的构建内容,从头开始,增量构建并不会删除以前的内容,而是处理未处理的文件。

4.6 进行知识问答测试

用户选择适当的chat模型进行测试,如果不选择,则默认是知识库进行知识提取时的模型。

http://www.dtcms.com/wzjs/259246.html

相关文章:

  • 做的网站打印全乱掉了免费建站网站大全
  • 个人网站建设教程信息流推广方式
  • 静安企业网站建设网络营销策划目的
  • 怎样做企业的网站怎么用手机制作网站
  • 免费设计装修公司网站湖南手机版建站系统开发
  • 起名网站建设安徽网络seo
  • 提供常州网站建设公司发广告去哪个平台
  • 高匿代理ip长春seo
  • 网站建设用书杭州网站排名seo
  • 网站开发的要注意基本原则网络营销外包
  • 做淘宝详情的网站长沙百度快速排名
  • c 做视频网站百度公司简介
  • 软件企业网站模板今日疫情最新消息
  • 做电商网站费用软文广告经典案例短的
  • 企业网站成功案例市场营销策略
  • 国外专门做杂志的共享网站网站优化包括哪些
  • 山西省住房与城乡建设厅网站seo技术助理
  • 网站开发过什么软件新平台怎么推广
  • 电子商务网站制作推广互联网营销
  • 怎么查询网站是什么时候做的建一个外贸独立站大约多少钱
  • 利川网站建设免费网站推广方式
  • 公司装修属于什么费用搜索引擎排名优化是什么意思
  • 做网页专题 应该关注哪些网站员工培训
  • 网站托管是什么意思百度有效点击软件
  • wordpress 地图xml生成关键词seo教程
  • 建站需要注意哪些中国舆情观察网
  • 做游戏能赚钱的网站营销手机都有什么功能啊
  • 南京做网站南京乐识好网站怎么收录
  • 天猫网站设计分析推广方案框架
  • 网站整体运营思路海外推广方案