LangChain中的向量数据库抽象基类-VectorStore

文章目录

  • 前言
  • 一、原型定义
  • 二、常用说明
    • 1、添加或更新文档
    • 2、添加或更新文本
    • 3、通过文档初始化VectorStore对象
    • 4、通过文本初始化VectorStore对象
    • 5、获得VectorStoreRetriever对象
    • 6、查询最相似的文档
  • 三、代码解析
    • 1、add_documents方法
    • 2、add_texts方法
    • 3、from_documents方法
    • 4、from_texts方法
    • 5、as_retriever方法
    • 6、similarity_search方法
  • 写在结尾


前言

  LangChain 是一个用于开发由语言模型驱动的应用程序的框架。LangChain 为处理语言模型所需的组件提供模块化的抽象。LangChain 还为所有这些抽象提供了实现的集合。
  本文主要记录LangChain_Core代码包中提供的一个VectorStore的基础抽象类,其中定义的几个常用的操作向量数据库的方法。

一、原型定义

在这里插入图片描述

二、常用说明

1、添加或更新文档

  在向量库中添加或更新文档。

add_documents(self, documents: list[Document], * * kwargs: Any) - > list[str]

入参

  • documents:要添加到向量库的文档。
  • kwargs:其他关键字参数。
      如果kwargs包含id并且文档包含idkwargs中的id将获得优先权。

返回值
  添加文本的ID列表。

异常
  ValueError:如果ID的数量与文档的数量不匹配。

2、添加或更新文本

  在嵌入中运行更多文本并添加到向量库中。

add_texts(self, texts: Iterable[str], metadatas: Optional[list[dict]] = None, * , ids: 

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

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

相关文章

5G光网络新突破:<Light: Science Applications>报道可适应环境扰动的DRC实时校准技术

前言摘要 近日,国际顶尖光学期刊《Light: Science & Applications》刊登了一项来自中国国防科技大学研究团队的重要成果。该团队由姜天教授、张军教授和郝浩教授领衔,成员包括严秋全、欧阳灏(共同一作)等研究人员。他们提出了…

C++:Hash拓展--布隆过滤器

布隆过滤器 问题前景: 之前学习了位图,我们知道位图在大量数据查找时候是很方便的。但位图的缺陷在于只能用于整型数据。而在实际中,我们的数据更多的是更复杂的字符串或者自定义类型。那么此时位图就显得有点无力,所以就诞生了叫布隆过滤器…

快速了解JVM中的深堆与浅堆

在Java虚拟机(JVM)的内存管理世界里,深堆与浅堆是两个重要的概念。它们如同衡量对象内存占用的两把标尺,对于优化程序性能、排查内存泄漏问题起着关键作用。接下来,让我们快速且深入地了解它们。 一、浅堆&#xff08…

开疆智能ModbusTCP转Devicenet网关连接FANUC机器人配置案例

本案例是ModbusTCP主站通过开疆智能ModbusTCP转Devicenet网关连接发那科机器人的配置案例,操作分为三个配置1:ModbusTCP主站配置2:ModbusTCP转Devicenet网关配置3:FANUC机器人配置,具体过程如下 配置过程 主菜单—IO—…

详解RabbitMQ高级特性之发送方确认机制

目录 发送方确认 添加配置 常量类 声明队列和交换机并绑定二者关系 confirm确认模式 编写生产消息代码 生产消息1 解决方法 多次生产消息2 解决方法 生产消息3 return 模式 编写生产消息代码(路由正确) 生产消息1 编写生产消息代码&…

Google Play开发者账号8.3/10.3政策违规自救指南

最近,有一位开发者焦急地向我们诉说,其辛苦开发的多个应用,毫无征兆地全部下架,账户提示违反政策 8.3 和 10.3。经过连夜排查,原来是换皮应用与误导性描述导致的问题。 这并非个例,在 2024 年,G…

pythonday50

作业: 1.好好理解下resnet18的模型结构 2.尝试对vgg16cbam进行微调策略 import torch import torch.nn as nn import torch.optim as optim import torchvision import torchvision.transforms as transforms from torchvision import models from torch.utils.d…

天猫618高增长背后:电商迈入价值战新周期

作者 | 曾响铃 文 | 响铃说 这次618,来“真”的了。 天猫618玩法变得极致简单,只设了“官方立减”的85折的基础优惠,再叠加行业品类券、国补等优惠,最高立减可达50%,十分直观。 让消费者省心的结果也是显而易见的&…

tauri+vue自动更新客户端打包配置

拉取最新代码打开项目根目录下"~.tauri\myapp.key"文件并复制内容 打开项目的powershell窗口,输入如下内容并回车 $env:TAURI_SIGNING_PRIVATE_KEY"复制的myapp.key" $env:TAURI_SIGNING_PRIVATE_KEY_PASSWORD""然后修改tauri.conf.…

硬件------51单片机

一.基本概念 1.裸机程序 BSP BSP:bord suppord pack 板级支持包 就是程序编写的内容是没有操作系统的,直接通过代码去控制寄存器,让硬件按照要求去工作。 主要内容:51单片机 IMAX6ULL 2.linux驱动部分 在裸机BSP程序的基础…

java 基础方法 list分页

新增一个list 泛型分类方法 hutools没这个方法, mybatis 里面的方法不好用 故新增此方法 package com.common.base.util.page;import lombok.Data;import java.util.List;/*** className: VoPage* description: list分页* author: chenyuanlong* date: 2025年6月16日 0016 上午…

操作系统期末复习--操作系统初识以及进程与线程

操作系统概念与主要功能 操作系统的概念 在信息化时代,软件是计算机系统的灵魂,而作为软件核心的操作系统,已与现代计算机系统密不可分、融为一体。计算机系统自下而上大致分为4部分:硬件、操作系统、应用程序和用户 操作系统管…

使用jhat查看dump.hprof文件内具体对象的属性值信息

jhat是JDK自带的堆转储分析工具,可以用来查看.hprof文件中对象的具体内容。本文演示使用的是JKD8. 一、启动jhat 执行启动命令。 jhat -J-Xmx4g your_heap_dump.hprof -J-Xmx4g表示为jhat分配4GB内存,根据你自己情况调整大小。your_heap_dump.hprof是…

freeRTOS之队列(queue)

一.概述 1.介绍 队列(queue)可以用于"任务到任务"、“任务到中断”、"中断到任务"直接传输信息。 2.核心功能 线程安全:自动处理多任务访问时的互斥问题。 数据复制:入队时复制数据(而非引用),…

【python】typing用法

一、基础类型提示 1. 基本类型注解 # 变量类型注解 age: int 30 name: str "Alice" is_student: bool False height: float 1.752. 函数注解 def greet(name: str, age: int) -> str:return f"Hello {name}, you are {age} years old!"二、组合类…

web前端开发核心基础:Html结构分析,head,body,不同标签的作用

前端技术协同关系 协作流程:HTML构建页面框架—>css美化样式(选择器属性)—>JavaScript实现交互(类似于python的脚本语言)扩展基础:在上面三项基础上学习Vue\React、构建工具WePack和浏览器工作原理…

精益数据分析(105/126):移动应用核心指标解析与用户分层营收策略

精益数据分析(105/126):移动应用核心指标解析与用户分层营收策略 在移动应用市场竞争白热化的今天,单纯追求下载量已无法保证商业成功,精细化运营核心指标成为盈利关键。本文将深入解析每日活跃用户平均营收&#xff…

被CC攻击了,对服务器有什么影响?

博客正文: 最近,不少网站管理员和运维人员反映遭遇了CC攻击,导致服务器性能异常甚至瘫痪。那么,CC攻击究竟会对服务器造成哪些影响?本文将为你简要解析CC攻击的原理及其带来的危害,帮助你更好地理解并应对…

Tensorflow安装出现dependency conflict错误

Python版本: 3.11.4 pip版本已升到最新 电脑上有mac的原装Python2.x,我装的3.11.4,还有个什么依赖的3.9 运行 pip3 install tensorflow 出现类似以下错误 (我报错的是另一个不是tensorflow—estimator,但基本就是…

2025年HTTP半开与错误攻击防御指南:原理拆解与实战防护

你以为限流就能防住HTTP攻击?黑客用协议畸形包AI调度正在撕裂传统防线! 一、HTTP半开攻击:慢速绞杀服务器资源 ▶ 攻击原理剖析 HTTP半开攻击(如Slowloris)是一种应用层DoS攻击,通过建立大量半开连接耗尽…