Langchain调用模型使用FAISS
1.导包
from langchain_community.document_loaders import TextLoader
from langchain_community.vectorstores import FAISS
from langchain_openai.embeddings import OpenAIEmbeddings
from langchain_text_splitters import RecursiveCharacterTextSplitter
2.加载数据
loader = TextLoader("./demo.txt",encoding='utf8')
docs = loader.load()
3.文本分割符
text_splitter = RecursiveCharacterTextSplitter(chunk_size=500,chunk_overlap=40,separators=["\n\n", "\n", "。", "!", "?", ",", "、", ""]
)
4.文本分割
texts = text_splitter.split_documents(docs)
5.文本编码
embeddings_model = OpenAIEmbeddings(base_url="https://api.chatanywhere.tech/v1")
6.FAISS增强
db = FAISS.from_documents(texts, embeddings_model)
7.检索器
retriever = db.as_retriever()
8.检索
retrieved_docs = retriever.invoke("卢浮宫在哪年被命名为中央艺术博物馆")
print(retrieved_docs[0].page_content)
输出:
罗浮宫(法语:Musée du Louvre,英语 /ˈluːv(rə)/ ),正式名称为罗浮博物馆,位于法国巴黎市中心的塞纳河边,原是建于12世纪末至13世纪初的王宫,现在是一所综合博物馆,亦是世界上最大的艺术博物馆之一,以及参观人数最多的博物馆,是巴黎中心最知名的地标。
罗浮宫的建筑物始建于1190年左右,并在近代曾多次进行扩建,今天所见的模样则一个巨大的翼楼和亭阁建筑群,主要组成部分的总面积则超过60,600平方公尺(652,000平方英尺),馆内永久收藏则包括雕塑、绘画、美术工艺及古代东方、古代埃及和古希腊罗马等7个分类,主要收藏1860年以前的艺术作品与考古文物,罗浮宫博物馆在1793年8月10日开幕起正式对公众开放,平均每天有15,000名游客到此参观,其中65%是外国游客。
位置
罗浮宫与杜乐丽花园的卫星照片
罗浮宫博物馆位于巴黎市中心的卢浮宫内,位于塞纳河右岸,毗邻杜乐丽花园。最近的两个地铁站是皇家宫-罗浮宫站和卢浮-里沃利站,前者有直达地下购物中心 Carrousel du Louvre 的地下通道。
相关文章:
Langchain调用模型使用FAISS
1.导包 from langchain_community.document_loaders import TextLoader from langchain_community.vectorstores import FAISS from langchain_openai.embeddings import OpenAIEmbeddings from langchain_text_splitters import RecursiveCharacterTextSplitter2.加载数据 l…...
双向链表的实现
一.概念与结构 双向链表区别于单链表不同的地方在于,双链表多出于一个指针能指向前面结点,使得整个链表得以首位相连。带头链表里的头结点称为哨兵位,哨兵位结点不储存任何有效元素,只是放哨功能。 二.实现双链表 2.1双链表结构…...
Charles简单压力测试
1.接口请求次数,并发量,请求延迟时间均可配置 1.1选中需要进行测试的接口,鼠标右键选中【repeat advance】 2.设置并发参数 下面的图中,选择了1个接口,每次迭代中1个接口同时请求,迭代1000次(…...
MMSegmentation测试阶段推理速度非常慢的一种可能原因
问题背景 测试集约1000张图片。训练阶段在测试集上推理时,速度正常,推理速度约为30fps;而使用tools/test.py进行推理时,速度非常慢,推理速度不到0.1fps。 解决方案 检查配置文件中是否启用了visualizer,…...
数据结构之链式结构二叉树的实现(初级版)
本文内容将主会多次用到函数递归知识!!! 本节内容需要借助画图才能更好理解!!! 和往常一样,还是创建三个文件 这是tree.h #pragma once #include<stdio.h> #include<stdlib.h> …...
day01-MybatisPlus
目录 1.快速入门 1.2.快速开始 1.2.1引入依赖 1.2.2.定义Mapper 1.2.3.测试 1.3.常见注解 1.3.1.TableName 1.3.2.TableId 1.3.3.TableField 1.4.常见配置 2.核心功能 2.1.条件构造器 2.1.1.QueryWrapper 2.1.2.UpdateWrapper 2.1.3.LambdaQueryWrapper 2.2.自…...
Postgresql源码(137)执行器参数传递与使用
参考 《Postgresql源码(127)投影ExecProject的表达式执行分析》 0 总结速查 prepare p_04(int,int) as select b from tbl_01 where a $1 and b $2为例。 custom计划中,在表达式计算中使用参数的值,因为custom计划会带参数值&…...
韩国恋爱游戏:阿西, 美女室友竟然…?百度网盘下载
故事情节/出场人物 [阿西, 美女室友竟然…?]是一款 FMV 真人视频恋爱游戏,你将以第一人称与5位美女室友一起体验别样合租生活。 在本作中,您将扮演合租公寓的房东男主 吴宥万(直译:牛奶男),一直独来独往的你,生活…...
一个运维牛人对运维规则的10个总结
一个运维牛人对运维规则的10个总结 在运维领域,经验和流程往往决定了系统的稳定性与可靠性。一个运维人,总结出了以下10条运维规则,涵盖了从基础管理到高级策略的全面内容,旨在帮助运维人员更好地应对各种挑战,确保系…...
Istio基本概念及部署
一、Istio架构及组件 Istio服务网格在逻辑上分为数据平面和控制平面。 控制平面:使用全新的部署模式:Istiod,这个组件负责处理Sidecar注入,证书颁发,配置管理等功能,替代原有组件,降低复杂度&…...
基于 Python 的 Django 框架开发的电影推荐系统
项目简介:本项目是基于 Python 的 Django 框架开发的电影推荐系统,主要功能包括: 电影信息爬取:获取并更新电影数据。数据展示:提供电影数据的列表展示。推荐系统:基于协同过滤算法实现个性化推荐。用户系…...
离线数仓开发SQL编写和调试的最佳实践(如何又快又好完成任务,学会几条就不用当很辛苦的牛马)
目录 在开发阶段对数据进行抽样 理论基础 实践应用 使用Hive进行数据采样 使用Spark进行数据采样 采用CTE模块化设计 逐步验证 逐步验证案例实践: 验证sales_data CTE: 验证ranked_sales CTE: 验证top_sales CTE: 结论 用Doris或Impala等更快查询的代替Hive …...
PostgreSQL 增量备份:保护你的数据资产
全文目录: 开篇语📜 前言📚 增量备份概述🔑 增量备份的优势 🛠️ PostgreSQL 增量备份实施步骤🌟 环境准备🚀 第一步:全量备份⏳ 第二步:定期增量备份🔄 第三…...
字节青训-寻找最大葫芦
问题描述 在一场经典的德州扑克游戏中,有一种牌型叫做“葫芦”。“葫芦”由五张牌组成,其中包括三张相同牌面值的牌 aa 和另外两张相同牌面值的牌 bb。如果两个人同时拥有“葫芦”,我们会优先比较牌 aa 的大小,若牌 aa 相同则再比…...
el-checkbox勾选一个变成了勾选所有
问题: el-checkbox完成后勾选一个选项变成了所有选项都勾选了。非model值不正确,我的model值绑定的是数组,但是还是勾选一个变成了勾选多个。 解决 因为勾选的内容比较简单,且值不需要入库,所以我最开始定义的option为…...
ExpandingCard扩展卡片
文章目录 演示效果分析思路核心代码总结 源码 演示效果 分析思路 使用flex布局,每个卡片的宽度都由flex进行灵活调整交互可以增加和删除active,来实现宽度扩增和恢复还需要使用transition进行动画过渡,使得平滑切换 核心代码 首先创建一个…...
移远通信推出八款天线新品,覆盖5G、4G、Wi-Fi和LoRa领域
近日,全球领先的物联网整体解决方案供应商移远通信宣布,再次推出八款高性能天线新品,进一步丰富其天线产品阵容,更好地满足全球客户对高品质天线的更多需求。具体包括5G超宽带天线YECT005W1A和YECT004W1A、5G天线YECT028W1A、4G天…...
MySQL 9从入门到性能优化-创建触发器
【图书推荐】《MySQL 9从入门到性能优化(视频教学版)》-CSDN博客 《MySQL 9从入门到性能优化(视频教学版)(数据库技术丛书)》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) MySQL9数据库技术_夏天又到了…...
UE5 第三人称学习之动画 control rig
这个东西和建模软件里有的是一个东西,然后IK就是你动脚,他帮你算出小腿大腿该怎么动,FK就是你自己动了大腿,摆小腿,然后再摆脚 就是给每一根骨骼搞一个控制器,给他一个容易选中和操作更明显的图形作为控制…...
C++之--初见模板初阶
一、泛型编程 为了实现一个通用的函数,在此之前,我们学过函数重载,使用函数重载虽然可以实现,但是有一下几个不好的地方: 1. 重载的函数仅仅是类型不同,代码复用率比较低,只要有新类型出现时&a…...
避坑指南:uniapp调用支付宝授权时常见的5个错误及解决方案
Uniapp支付宝授权实战:5个高频错误与深度解决方案 移动应用开发中,第三方授权登录是提升用户体验的关键环节。作为国内主流支付平台,支付宝授权在电商、生活服务类App中应用广泛。但许多Uniapp开发者在实现支付宝授权功能时,总会遇…...
终极Bash Infinity代码审查指南:确保Bash框架代码质量的完整检查清单
终极Bash Infinity代码审查指南:确保Bash框架代码质量的完整检查清单 【免费下载链接】bash-oo-framework Bash Infinity is a modern standard library / framework / boilerplate for Bash 项目地址: https://gitcode.com/gh_mirrors/ba/bash-oo-framework …...
gte-base-zh在AIGC内容审核中的应用
gte-base-zh在AIGC内容审核中的应用 最近和几个做AIGC应用的朋友聊天,大家普遍反映一个头疼的问题:内容审核。用户生成的内容五花八门,数量巨大,单靠人工审核,不仅成本高,还容易漏掉一些打擦边球或者变着花…...
H3C交换机vlan隔离常见配置错误排查指南(附HCL模拟器案例)
H3C交换机VLAN隔离配置实战:从原理到排错的深度指南 在当今企业网络架构中,VLAN隔离技术已经成为网络分段和安全策略的基础支柱。作为网络管理员,我们经常需要在H3C交换机上配置VLAN隔离来实现不同部门或业务单元之间的逻辑隔离。然而&#…...
Unity资源引用:FileID+GUID的秘密
两个不起眼的数字,撑起了整个项目的引用大厦 一、开篇:一次差点毁掉项目的"手滑" 周三下午三点。 你的美术同事小王在整理项目文件夹。他觉得Assets目录太乱了——贴图、模型、材质散落在各处,像一个没人收拾的房间。 于是他开始整理: 把 Assets/player_text…...
ADC0808搭配51单片机测电压:从芯片手册解读到量程切换逻辑的代码实现
ADC0808与51单片机电压测量系统:从芯片手册到智能量程切换的工程实践 在嵌入式系统开发中,精确的电压测量是许多应用的基础功能。ADC0808作为经典的8位模数转换器,与51单片机的组合曾是工业控制和仪器仪表领域的黄金搭档。本文将带您深入探索…...
运维实战:思科NAT配置全解析与典型场景应用
1. 为什么企业网络离不开NAT技术 想象一下你公司的内网有200台电脑,但ISP只分配了5个公网IP地址——这就是NAT技术大显身手的场景。作为网络工程师,我处理过太多类似案例,最夸张的一个客户用1个公网IP支撑了整个500人办公区的上网需求。 NA…...
Pixel Mind Decoder 数据结构优化:提升批量文本情绪处理效率
Pixel Mind Decoder 数据结构优化:提升批量文本情绪处理效率 1. 为什么需要优化批量处理 当你需要分析成千上万条用户评论或社交媒体内容时,逐条调用情绪分析模型会变得非常低效。就像在快餐店点餐一样,一个一个处理订单远不如批量处理来得…...
OpenClaw+GLM-4.7-Flash数据助手:Excel报表自动生成与分析
OpenClawGLM-4.7-Flash数据助手:Excel报表自动生成与分析 1. 为什么需要自动化数据助手 作为一位经常与Excel报表打交道的分析师,我每天要花大量时间重复执行数据清洗、格式转换和基础分析。最痛苦的是每月底需要手动合并十几个分公司的销售数据&#…...
BMAD 开发者的日常如果你正在用
BMAD 开发者的日常如果你正在用 BMAD 方法论做开发,这套流程一定很熟悉:/bmad-bmm-create-story 1.1 # 创建故事 /bmad-bmm-dev-story 1.1 # 开发实现 /bmad-bmm-qa-automate 1.1 # 运行测试 /bmad-bmm-code-review 1.1 # 代码审查 # 发现 …...
