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 的地下通道。

相关推荐
youcans_4 分钟前
2025年数学建模美赛 A题分析(4)楼梯使用人数模型
python·数学建模
查理零世2 小时前
【算法】数论基础——约数个数定理、约数和定理 python
python·算法·数论
Eiceblue3 小时前
Python 合并 Excel 单元格
开发语言·vscode·python·pycharm·excel
weixin_421133416 小时前
编写python 后端 vscode 安装插件大全
开发语言·vscode·python
hshpy7 小时前
start using Python 3.11 after installation
windows·python·python3.11
李智 - 重庆7 小时前
Python3 【高阶函数】水平考试:30道精选试题和答案
经验分享·python·编程技巧·案例学习·错误分析
日日行不惧千万里7 小时前
ultralytics 是什么?
python
我想学LINUX7 小时前
【2024年华为OD机试】 (C卷,200分)- 机器人走迷宫(JavaScript&Java & Python&C/C++)
java·c语言·javascript·python·华为od·机器人
uncle_ll8 小时前
ChatGPT大模型极简应用开发-CH5-使用 LangChain 框架和插件增强 LLM 的功能
gpt·chatgpt·langchain·llm·rag
西猫雷婶8 小时前
python学opencv|读取图像(四十五)增加掩模:使用cv2.bitwise_and()函数实现图像按位与运算
开发语言·python·opencv