当前位置: 首页 > article >正文

【GPT入门】第21课 langchain核心组件

【GPT入门】第21课 langchain核心组件

  • 1. langchain 核心组件
  • 2.文档加载器 Document loader
  • 3.文档处理器
  • 3.1 langchain_text_splitters
  • 3.3 FAISS向量数据库和向量检索
      • 主要作用
      • 应用场景
  • 4. 对话历史管理

1. langchain 核心组件

模型 I/O 封装
LLMs:大语言模型
Chat Models:一般基于 LLMs,但按对话结构重新封装
PromptTemple:提示词模板
OutputParser:解析输出
数据连接封装
Document Loaders:各种格式文件的加载器
Document Transformers:对文档的常用操作,如:split, filter, translate, extract metadata, etc
Text Embedding Models:文本向量化表示,用于检索等操作(啥意思?别急,后面详细讲)
Verctorstores: (面向检索的)向量的存储
Retrievers: 向量的检索
对话历史管理
对话历史的存储、加载与剪裁

在这里插入图片描述

2.文档加载器 Document loader

from langchain_community.document_loaders import PyMuPDFLoader

loader = PyMuPDFLoader("llama2.pdf")
pages = loader.load_and_split()
print(pages[0].page_content)
print(len(pages))

3.文档处理器

3.1 langchain_text_splitters

from langchain_text_splitters import RecursiveCharacterTextSplitter
text_splitter = RecursiveCharacterTextSplitter(
    chunk_size=200,
    chunk_overlap=100,
    length_function=len,
    add_start_index=True
)
paragraphs = text_splitter.create_documents([pages[0].page_content])
for para in paragraphs:
    print(para)
    print('-'*20)

输出结果:

page_content='models outperform open-source chat models on most benchmarks we tested, and based on
our human evaluations for helpfulness and safety

http://www.kler.cn/a/587575.html

相关文章:

  • vscode--工作区和相对路径
  • 【Linux内核系列】:文件系统收尾以及软硬链接详解
  • 在windows上通过idea搭建doris fe的开发环境(快速成功版)
  • Redis 数据结构及使用场景介绍
  • Linux练级宝典->动态库和静态库
  • Vue 3 vs Vue 2:深入解析从性能优化到源码层面的进化
  • 深入React Redux:原理剖析与高效实践指南
  • Sequelize:Node.js 项目中数据库管理的 “秘密武器”
  • 洛谷 P2801 教主的魔法 题解
  • Mac 上编译 Ragflow
  • 《灵珠觉醒:从零到算法金仙的C++修炼》卷三·天劫试炼(39)玲珑棋局摆硬币 - 零钱兑换(完全背包)
  • python列表基础知识
  • 3.4 Spring Boot整合Elasticsearch:全文检索与聚合分析
  • 信奥赛CSP-J复赛集训(模拟算法专题)(16):P6386 [COCI 2007/2008 #4] VAUVAU
  • Linux下对2TB磁盘的分区、格式化、挂截目录介绍
  • 用Python和Pygame实现打砖块游戏
  • HTML编辑MP4保存名称
  • DBeaver部分操作指南(数据库连接,构造ERD图,格式化SQL)
  • Hive函数大全:从核心内置函数到自定义UDF实战指南(附详细案例与总结)
  • 无电池也能通信!中国移动5G-A芯片重塑物联网未来