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

网站正在建设源代码哪些网站可以发广告

网站正在建设源代码,哪些网站可以发广告,成都公司网站制作公司,软件开发工程师证theme: orange LangChain是一个软件开发工具包,它通过将组件链接在一起并公开简单统一的API,简化了大型语言模型和应用程序的集成。本篇文章将会简要介绍,让各位开发者对其有一个整体的认识。 前言 如果你是一名软件开发人员,努力…

theme: orange

LangChain是一个软件开发工具包,它通过将组件链接在一起并公开简单统一的API,简化了大型语言模型和应用程序的集成。本篇文章将会简要介绍,让各位开发者对其有一个整体的认识。

前言

如果你是一名软件开发人员,努力跟上有关大型语言模型的最新热点,你可能会感到不知所措或困惑,就像我一样。似乎每天我们都会看到一个新的开源模型的发布,或者一个商业模型提供商宣布的重大新功能。

大型语言模型(LLMs)正迅速成为现代软件技术栈的一个重要组成部分。然而,无论您是想使用像OpenAI这样的提供商提供的模型API,还是将开源模型嵌入到您的应用程序中,构建大型语言模型驱动的应用程序不仅仅是发送一个提示并等待回应。有许多因素需要考虑,从调整参数到增强提示再到适度地回应。

大型语言模型(LLMs)是无状态的,这意味着它们不会记住对话中的先前消息。维护历史记录并将上下文提供给LLM是开发人员的责任。这些对话可能需要存储在一个持久化数据库中,以便在新的对话中恢复上下文。因此,为LLMs添加短期和长期记忆是开发人员的关键责任之一。

另一个挑战是,对于LLMs并没有通用的规则。您可能需要使用针对不同场景的多个专用模型,如情感分析、分类、问答和总结。处理多个LLMs非常复杂,需要相当多的管道工作。

为构建LLM应用程序的统一API层

LangChain是一个旨在简化LLM和应用程序集成的SDK。它解决了我们之前讨论的大部分挑战。LangChain类似于ODBC或JDBC驱动程序,它通过让您专注于标准SQL语句来抽象底层数据库。LangChain通过公开简单统一的API来抽象底层LLM的实现细节。这个API使得开发人员可以轻松地更换模型,而无需对代码进行重大更改。

LangChain与ChatGPT大约同时出现。其创建者Harrison Chase在2022年10月底进行了第一次提交,就在LLM浪潮全面爆发之前。从那时起,社区一直在积极贡献,使LangChain成为与LLM互动的最佳工具之一。

LangChain是一个强大的框架,可以与外部工具集成形成一个生态系统。让我们了解一下它如何协调从LLM获得期望结果的流程。

image.png

数据源 (Data sources)

应用程序需要从外部来源(如PDF、网页、CSV和关系数据库)获取数据,以构建LLM的上下文。LangChain无缝集成了可以访问和检索来自不同来源数据的模块。

词嵌入 (Word embeddings)

从某些外部来源获取的数据必须转换为向量。这是通过将文本传递给与LLM关联的词嵌入模型来完成的。例如,OpenAI的GPT-3.5模型有一个关联的词嵌入模型,需要用它来发送上下文。LangChain会根据选择的LLM选择最佳的嵌入模型,消除了配对模型的猜测。

向量数据库 (Vector databases)

生成的嵌入存储在向量数据库中以进行相似性搜索。LangChain可以轻松地从各种来源(从内存数组到托管的向量数据库,如Pinecone)存储和检索向量。

大型语言模型 (Large language models)

LangChain支持OpenAI、Cohere和AI21提供的主流LLM,以及Hugging Face上可用的开源LLM。支持的模型和API端点的列表正在迅速增长。

image.png

以上流程代表了LangChain框架的核心。位于堆栈顶部的应用程序通过Python或JavaScript SDK与LangChain模块之一进行交互。让我们了解这些模块的作用。

模型I/O (Model I/O)

模型I/O模块处理与LLM的交互。它主要帮助创建有效的提示,调用模型API,并解析输出。作为生成式AI的核心,提示工程得到了LangChain的良好处理。此模块抽象了LLM提供商公开的认证、API参数和端点。最后,它可以将模型发送的响应解析为应用程序可以使用的所需格式。

数据连接(Data connection)

可以将数据连接模块看作是您的LLM应用程序的ETL管道。它处理加载外部文档(如PDF或Excel文件),将它们转换为批量处理成词嵌入的数据块,将嵌入存储在向量数据库中,并通过查询最终检索它们。正如我们之前讨论的,这是LangChain最重要的构建模块。

链(Chains)

在很多方面,与LLM交互就像使用Unix管道。一个模块的输出被作为另一个模块的输入发送。我们通常需要依赖LLM来澄清和提炼响应,直到我们得到期望的结果。LangChain中的链旨在构建高效的管道,利用构建模块和LLM获得预期的响应。一个简单的链可能有一个提示和一个LLM,但也可以构建高度复杂的链,多次调用LLM(如递归)以实现结果。例如,一个链可能包括一个提示来总结一个文档,然后对同一个文档进行情感分析。

内存(Memory)

LLM是无状态的,但需要上下文来准确响应。LangChain的内存模块使得向模型添加短期和长期记忆变得容易。短期内存通过简单机制保持对话历史。消息历史可以持久化到外部资源,如Redis,代表长期记忆。

回调(Callbacks)

LangChain为开发者提供了一个回调系统,允许他们挂接到LLM应用程序的各个阶段。这对于日志记录、监控、流处理和其他任务非常有用。可以编写自定义回调处理程序,在管道内发生特定事件时调用。LangChain的默认回调指向stdout,它只是将每个阶段的输出打印到控制台。

代理(Agents)

代理是迄今为止LangChain最强大的模块。LLM具有推理和行动能力,称为ReAct提示技术。LangChain的代理简化了制作利用LLM将提示提炼为行动计划的ReAct提示。代理可以被认为是动态链。代理背后的基本思想是使用LLM选择一组操作。一系列操作在链中(在代码中)硬编码。在代理中,语言模型用作推理引擎,以确定采取哪些行动以及以何种顺序。

结论

LangChain正迅速成为GenAI驱动的应用程序中最重要的组件。得益于不断扩展的繁荣生态系统,它可以支持各种各样的构建模块。对开源和商业LLM、向量数据库、数据源和嵌入的支持使得LangChain成为开发者不可或缺的工具。

http://www.hkea.cn/news/552893/

相关文章:

  • 网站双倍浮动百度联盟app
  • 北京网站设计确保代码符合w3c广州网络营销的推广
  • 做网站实名认证有什么用百度移动端模拟点击排名
  • 知更鸟wordpress 怎样沈阳百度seo关键词优化排名
  • 携程网站模板互联网营销策略有哪些
  • 做网站内链什么意思上海排名优化seobwyseo
  • 四川做直销会员网站百度网盘帐号登录入口
  • 做百度竞价对网站有无要求网站推广排名服务
  • 建设工程合同包括成都网站改版优化
  • 深圳不加班的互联网公司整站seo优化
  • 中国做的很好的食品网站肇庆疫情最新消息
  • 做时时彩网站微信seo关键词有话要多少钱
  • 陇南市建设局网站商务软文写作
  • 做学术研究的网站营销方案怎么写?
  • 专业网站设计公司有哪些秒收录关键词代发
  • 织梦网站模板源码下载真实有效的优化排名
  • 网站建设过程中什么最重要磁力链bt磁力天堂
  • html5企业网站案例鹤壁搜索引擎优化
  • 网站建设平台简介链接交换平台
  • 照片展示网站模板宁波seo咨询
  • 奉贤建设机械网站制作长沙网址seo
  • 上海企业网站模板建站常用的网络推广方法
  • 大连零基础网站建设教学培训济南seo优化公司
  • html 做网站案例简单网站推广建设
  • 践行新使命忠诚保大庆网站建设线上广告
  • 定制网站建设服务商商家联盟营销方案
  • 集团官网建设公司外贸seo推广公司
  • 佛山新网站制作平台网站诊断工具
  • 做PPT的网站canvawhois查询
  • 营销型网站建设吉林定制化网站建设