use embeddings stored in vector db to reduce work for LLM generating response

题意:使用存储在向量数据库中的嵌入来表示,以减少大型语言模型(LLM)生成响应的工作量。

问题背景:

I'm trying to understand what the correct strategy is for storing and using embeddings in a vector database, to be used with an LLM. If my goal is to reduce the amount of work the LLM has to do when generating a response, (So you can think of a RAG implementation where I've stored text, embeddings I've created using an LLM, and metadata about the text.) I'm then trying to generate responses using say openai model from queries about the data, and I don't want to have to spend a bunch of money and time chunking up the text and creating embeddings for it every time I want to answer a query about it.

我正在尝试理解在向量数据库中存储和使用嵌入的正确策略,以便与大型语言模型(LLM)一起使用。如果我的目标是减少LLM在生成响应时所需的工作量(你可以想象一个RAG实现,其中我存储了文本、使用LLM创建的嵌入以及关于文本的元数据),那么我试图通过使用例如OpenAI模型从关于数据的查询中生成响应,并且我不想每次想要回答关于数据的查询时都花费大量金钱和时间来分割文本并为其创建嵌入。

If I create a vector database, for example a chroma database and I use an LLM to create embeddings for a corpus I have. I save those embeddings into the vector database, along with the text and metadata. Would the database use those embeddings I created to find the relevant text chunks, or would it make more sense for the vector database to use it's own query process to find the relevant chunks (not using the embeddings the LLM created)?

如果我创建一个向量数据库,例如一个色度数据库,并使用一个大型语言模型(LLM)来为我已有的语料库创建嵌入表示。我将这些嵌入表示与文本和元数据一起保存到向量数据库中。那么,这个数据库会使用我创建的这些嵌入表示来找到相关的文本片段,还是让向量数据库使用它自己的查询过程来找到相关片段(而不是使用LLM创建的嵌入表示)会更合理呢?

Also do I want to pass the embeddings from the vector database to the LLM to generate the response, or do I pass the text that the vectore database found was most relevant to the LLM along with original text query so the LLM can then generate a response?

此外,我是否应该将向量数据库中的嵌入表示传递给大型语言模型(LLM)以生成响应,还是将向量数据库找到的最相关的文本与原始文本查询一起传递给LLM,以便LLM可以据此生成响应?

问题解决:

You'll initially chunk up your own content, create vector embedding using any embedding model (of your choice) and persist them to a vectore store (of your choice). Later, using techniques like prompt engineering, you will ask your questions to interact with your own proprietary data that is stored within the vector store to help find insights. During this process, your question/ask will need to be converted to embeddings (this is where embedding model comes in) to be able to sent to the vector store, which will in-turn use those embeddings to figure out the nearest / closest responses (see benefits of vector search) based on the corpus of data and will return back responses. One will then use these responses and pass it on the OpenAI (can be substituted w/ others of your choice) to prepare the final response.

首先,你需要将自己的内容切分成块,使用任何嵌入模型(你选择的)创建向量嵌入,并将它们保存到向量存储(你选择的)中。之后,通过诸如提示工程等技术,你可以向存储在向量存储中的专有数据提出问题以获取洞察。在这个过程中,你的问题/查询需要被转换为嵌入表示(这就是嵌入模型发挥作用的地方),以便能够发送到向量存储。向量存储将使用这些嵌入表示,基于数据语料库来确定最接近/最相关的响应(这就是向量搜索的优势),并返回这些响应。然后,你将使用这些响应,并将其传递给OpenAI(也可以替换为你选择的其他模型)以准备最终响应。

Would the database use those embeddings I created to find the relevant text chunks...

数据库会使用我创建的这些嵌入表示来找到相关的文本片段...

Yes, the vector store will use the vector embeddings to find the relevant match based on your input embedding

是的,向量存储将使用向量嵌入来根据你输入的嵌入表示找到相关的匹配项。

Also do I want to pass the embeddings from the vector database to the LLM to generate the response, or do I pass the text that the vectore database found was most relevant to the LLM along with original text query so the LLM can then generate a response?

另外,我是否应该将向量数据库中的嵌入表示传递给大型语言模型(LLM)以生成响应,还是将向量数据库找到的最相关的文本与原始文本查询一起传递给LLM,以便LLM可以据此生成响应?

With techniques like RAG, you would pass the text (using own proprietary data corpus) that the vector database found as relevant to the LLM to generate the final resposne.

使用如RAG(Retrieval-Augmented Generation)这样的技术,你会将向量数据库找到的相关文本(使用你自己的专有数据语料库)传递给大型语言模型(LLM),以生成最终响应。

You could check out some techniques as highlighted here to see how to build GenAI apps to take some inspiration.

你可以查看这里提到的一些技术,看看如何构建生成式人工智能(GenAI)应用,以获取一些灵感。

I hope that helps.        希望这有所帮助。

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

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

相关文章

重温react-08

react中的createContext使用方式 简介一下,就是组件之间可以互相通信的比较好用的传值方式,话不多说直接上代码。 以下介绍的是类组件中的方式,在函数组件中不是如此使用的。 定义一个通用的方法 import { createContext } from "react…

论文学习 --- RL Regret-based Defense in Adversarial Reinforcement Learning

前言 个人拙见,如果我的理解有问题欢迎讨论 (●′ω`●) 原文链接:https://www.ifaamas.org/Proceedings/aamas2024/pdfs/p2633.pdf 研究背景 深度强化学习(Deep Reinforcement Learning, DRL)在复杂和安全关键任务中取得了显著成果,例如自动驾驶。然而,DRL策略容易受…

【杂记-浅谈IPv6过渡技术之6to4网络技术】

IPv6过渡技术之 6to4网络技术 一、6to4网络概述二、6to4网络配置 一、6to4网络概述 6to4是一种IPv6转换技术,它允许IPv6流量通过IPv4网络传输。6to4网络的地址可以表示为2002:IPv4地址::/48,其中前48位(2002:a.b.c.d)由分配给路由…

python调用c++ ctype list传数组与for if 列表推导式

python调用c ctype list传数组 关于ctype与python list的转换很简单,大家记住下面两条就够用了,后面是练习 list传进C数组 import numpy as np from ctypes import * mylist [101, -101, ..., 101, -101]##your list mycbytearray (c_byte * len(my…

优刻得首个「国产千卡智算集群」落地,支持智源千亿大模型训练

在人工智能引领的时代浪潮中,算力已成为技术进步与创新的核心驱动力。面对当下AI算力需求的飙升、高端AI芯片供应受限的挑战,加之OpenAI带来的技术封锁,唯有坚定不移的发展自主可控的国产技术方案,持续壮大国产智算集群规模&#…

在postgrel中使用hints

在 PostgreSQL 中,可以使用查询提示(Query Hints)来影响查询优化器的行为,但需要注意的是,PostgreSQL 并不像一些商业数据库那样有丰富的提示语法,而是提供了一些基本的方式来引导优化器。 使用查询提示的基本方式 使用 /*+ … / 注释提示: PostgreSQL 支持在 SQL 查询…

参数调优论文

基于Java EE的性能调优方法研究 - 中国知网 (cnki.net) 基于机器学习的Hadoop参数调优方法 - 中国知网 (cnki.net) 基于机器学习的数据库系统自动调参研究 - 中国知网 (cnki.net) 基于强化学习的文件系统性能自动调优及参数安全评估技术 - 中国知网 (cnki.net) 基于贝叶斯优…

如何在ArcGIS Pro中提取行政区划

我们在《2024版有审图号的SHP行政区划》一文中,为你分享过全国省市县级的行政区划。 现在再为你分享一下,如何在ArcGIS Pro中提取目标范围行政区划的方法,你还可在以文末查看领取该行政区划数据的方法。 直接选择 在菜单栏上点击一下选择下…

这谁顶得住啊!AI绘画模型竟然可以画出质量逼真的黑丝!

今天看到一个有趣的AI绘画玩法,用SD画黑丝!话不多说,开始今天的实战演练。 首先做好准备工作:部署好本地Stable Diffuison 然后就轮到今天的主角上场了 黑丝Lora模型:perfectpantyhose 这是一款叫perfectpantyhose…

【最佳实践】前端如何搭建自己的cli命令行工具,让自己编码的时候如虎添翼

作为前端开发人员,搭建自己的前端CLI工具是一个有趣且有意义的事情。以下是一篇详细的教程,包括使用场景和案例。 使用场景 假设你是一个前端团队的一员,需要频繁地在不同的项目中执行一些标准化的任务,比如: 根据模…

重建大师引擎数0,本地引擎设置改不了,空三在跑,这样是正常的吗?

答:任务目录和引擎监控目录并没有按照网络集群设置,需要调整为网络路径。 重建大师是一款专为超大规模实景三维数据生产而设计的集群并行处理软件,输入倾斜照片,激光点云,POS信息及像控点,输出高精度彩色网…

TikTok API接口——获取视频评论信息

一、引言 TikTok,作为全球最受欢迎的短视频社交平台之一,不仅为用户提供了展示才华和分享生活的舞台,也为品牌和企业提供了与年轻用户互动的新渠道。在这个信息爆炸的时代,了解用户的声音、掌握舆论动向显得尤为重要。通过TikTok…

alibaba easyexcel 导出excel使用

需求 传统导出&#xff0c;一般都是通过Workbook > Sheet > Row > Cell 获取详细Cell 设置值&#xff0c;比较麻烦&#xff0c;偶然遇到alibaba easyexcel 直接通过注解设置哪些需要导出 哪些忽略&#xff0c;发现特别好用。 pom依赖 <dependency><groupId…

千年织锦:中国古代包文化的辉煌历程与现代传承

追溯至远古&#xff0c;我们的祖先就开始利用自然界的恩赐——皮革、植物纤维等&#xff0c;制作出最原始的包袋。随着时间的推移&#xff0c;技艺的提升&#xff0c;包的材质逐渐丰富起来&#xff0c;从粗糙到精致&#xff0c;从简单到复杂&#xff0c;每一次材质的革新都是人…

CentOS 7.9 CDH6.3.2集群生产环境实战部署指南

一、环境准备 1、系统环境&#xff1a; # cat /etc/os-release 2、准备工作&#xff1a; 部署资源分配 节点centos 7.9&#xff08;生产&#xff09;节点规划Postgresql部署组件备注pgsql32c、128G、2TB国产数据库Postgresql&#xff08;翰高&#xff09;可根据实际情况调整…

Wordpress图像编辑插件-palleon v3.8.1中文版语言包

Palleon是一个强大的WordPress图像编辑器&#xff0c;可以与您的WordPress网站无缝集成&#xff0c;让您快速高效地工作。它拥有为你的WordPress网站创建令人惊叹的图像所需的一切。 Palleon让您完全控制图像&#xff0c;允许您逐个像素进行更改。您可以轻松地裁剪、调整图像大…

漏洞利用开发基础学习记录

文章目录 简介Win32缓冲区溢出内容难点 SEH 溢出内容难点 Egg Hunters内容难点 Unicode 溢出内容难点 x86-64 缓冲区溢出内容难点 参考资料 简介 本文基于ERC.Xdbg漏洞分析文章进行初步归纳整理&#xff0c;主要有Win32 缓冲区溢出、SEH 溢出、Egg Hunters、Unicode 溢出、x86…

基于盲信号处理的人声分离

1.问题描述 在实际生活中&#xff0c;存在一种基本现象称为“鸡尾酒效应”&#xff0c;该效应指即使在非常嘈杂的环境中&#xff0c;人依然可以从噪声中提取出自己所感兴趣的声音。 在实际应用中&#xff0c;我们可能需要对混合的声音进行分离&#xff0c;此时已知的只有混合…

规上!西安市支持培育商贸企业达限纳统应统尽统申报奖励补助要求政策

西安市支持培育商贸企业达限纳统应统尽统工作方案 为加快培育消费市场主体&#xff0c;支持商贸企业扩大经营、做大做强&#xff0c;指导企业达限纳统、应统尽统&#xff0c;不断扩大我市限额以上商贸企业数量规模&#xff0c;促进全市经济社会高质量发展&#xff0c;结合我市…

springboot 集成阿里云 OSS

引入依赖 <!-- 阿里云oss依赖 --> <dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.9.1</version> </dependency><?xml version"1.0" encoding"…