Langchain调用模型使用FAISS

1.导包

python 复制代码
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.加载数据

python 复制代码
loader = TextLoader("./demo.txt",encoding='utf8')
docs = loader.load()

3.文本分割符

python 复制代码
text_splitter = RecursiveCharacterTextSplitter(
    chunk_size=500,
    chunk_overlap=40,
    separators=["\n\n", "\n", "。", "!", "?", ",", "、", ""]
)

4.文本分割

python 复制代码
texts = text_splitter.split_documents(docs)

5.文本编码

python 复制代码
embeddings_model = OpenAIEmbeddings(base_url="https://api.chatanywhere.tech/v1")

6.FAISS增强

python 复制代码
db = FAISS.from_documents(texts, embeddings_model)

7.检索器

python 复制代码
retriever = db.as_retriever()

8.检索

python 复制代码
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 的地下通道。

相关推荐
aiguangyuan5 小时前
使用LSTM进行情感分类:原理与实现剖析
人工智能·python·nlp
小小张说故事5 小时前
BeautifulSoup:Python网页解析的优雅利器
后端·爬虫·python
luoluoal5 小时前
基于python的医疗领域用户问答的意图识别算法研究(源码+文档)
python
Shi_haoliu5 小时前
python安装操作流程-FastAPI + PostgreSQL简单流程
python·postgresql·fastapi
小天呐5 小时前
08—langchain Retrieval
langchain
ZH15455891315 小时前
Flutter for OpenHarmony Python学习助手实战:API接口开发的实现
python·学习·flutter
小宋10215 小时前
Java 项目结构 vs Python 项目结构:如何快速搭一个可跑项目
java·开发语言·python
一晌小贪欢6 小时前
Python 爬虫进阶:如何利用反射机制破解常见反爬策略
开发语言·爬虫·python·python爬虫·数据爬虫·爬虫python
躺平大鹅6 小时前
5个实用Python小脚本,新手也能轻松实现(附完整代码)
python