前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >大语言模型(LLM)LangChain介绍

大语言模型(LLM)LangChain介绍

作者头像
产品言语
发布2023-09-09 08:54:40
6300
发布2023-09-09 08:54:40
举报
文章被收录于专栏:产品笔记

LangChain是一个利用大语言模型的能力开发各种下游应用的开源框架,它的核心理念是为各种大语言模型应用实现通用的接口,简化大语言模型应用的开发难度,主要的模块示意图为:

  • Index:提供了各类文档导入、文本拆分、文本向量化存储和检索的接口,导入的文档类型除常见的 word、excel、PDF、txt 外,还包括 API 和数据库接口,向量化存储包括各类向量数据库。通过 Index 模块,非常容易处理各类型的外部数据,来提供给大模型进行推理。
  • Prompts:将用户输入和其他外部数据转化为适合大语言模型的提示词,包括提示词管理、提示词优化和提示词序列化等功能。通过调整提示词,可以让大语言模型执行各类任务,如文本生成文本(包括聊天、问答、摘要、报告等)、文本生成 SQL、文本生成代码等,另外还可以通过提示词让模型进行小样本学习,目前对各任务的提示词最优实践在如火如荼的研究中,通过提示词不断探索大语言模型的能力边界,LangChain 提供了一个易用的提示词管理工具。
  • Models:提供了对各类大语言模型的管理和集成,除闭源的大语言模型 API 接口外,还提供对多个开源模型仓库中开源大语言模型的集成接口,以及在云上部署的大语言模型接口。
  • Memory:用来保存与模型交互时的上下文状态,是实现多轮对话的关键组件。
  • Chains:LangChain 的核心组件,能对上面的各组件组合在一起以完成特定的任务,如一个 chain 可以包含 prompt 模版、大语言模型及输出处理组件,来完成用户聊天功能。对各种不同的任务,LangChain 提供不同的 chain,如问答任务提供了 Question Answering Chain,文本摘要任务提供了 Summarization Chain,文本生成 SQL 任务提供了 SQL Chain,数学计算任务提供了 LLM Math Chain 等,同时可以自定义 Chain,Chain 组件提供了不同的模型推理模式,包括 stuff、map_reduce、refine、map-rerank 等,可以根据具体的任务需求,选择合适的 Chain 以及模型推理模式来完成任务。
  • Agents:LangChain 的高级功能,能根据用户的输入来决定调用哪些工具,同时能组合一系列的 Chain 来完成复杂的任务,如提问:我的账号余额能买多少两黄金?Agents 通过 SQL chain 查询账号余额,通过调用网页查询接口的 LLM 查找实时黄金价格,通过调用 LLM Math 计算能买到的黄金数量完成最终的任务,这一系列的逻辑操作均可以在 Agents 中配置。

除 LangChain 外,目前另一个比较常用的开源大语言模型应用开发框架是 LIamaIndex。LIamaIndex 有丰富的数据导入接口,特别是对结构化数据的支持更友好,另外 LIamaIndex 的 Index 对多种模式的问答逻辑进行了封装,易于使用但缺少灵活性。LIamaIndex 支持与 LangChain 集成,2 个框架可以互相调用。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 产品言语 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • LangChain是一个利用大语言模型的能力开发各种下游应用的开源框架,它的核心理念是为各种大语言模型应用实现通用的接口,简化大语言模型应用的开发难度,主要的模块示意图为:
相关产品与服务
向量数据库
腾讯云向量数据库(Tencent Cloud VectorDB)是一款全托管的自研企业级分布式数据库服务,专用于存储、检索、分析多维向量数据。该数据库支持多种索引类型和相似度计算方法,单索引支持千亿级向量规模,可支持百万级 QPS 及毫秒级查询延迟。腾讯云向量数据库不仅能为大模型提供外部知识库,提高大模型回答的准确性,还可广泛应用于推荐系统、自然语言处理等 AI 领域。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档