LangChain 36 深入理解LangChain 表达式语言优势一 LangChain Expression Language (LCEL)
LangChain系列文章
- LangChain 实现给动物取名字,
- LangChain 2模块化prompt template并用streamlit生成网站 实现给动物取名字
- LangChain 3使用Agent访问Wikipedia和llm-math计算狗的平均年龄
- LangChain 4用向量数据库Faiss存储,读取YouTube的视频文本搜索Indexes for information retrieve
- LangChain 5易速鲜花内部问答系统
- LangChain 6根据图片生成推广文案HuggingFace中的image-caption模型
- LangChain 7 文本模型TextLangChain和聊天模型ChatLangChain
- LangChain 8 模型Model I/O:输入提示、调用模型、解析输出
- LangChain 9 模型Model I/O 聊天提示词ChatPromptTemplate, 少量样本提示词FewShotPrompt
- LangChain 10思维链Chain of Thought一步一步的思考 think step by step
- LangChain 11实现思维树Implementing the Tree of Thoughts in LangChain’s Chain
- LangChain 12调用模型HuggingFace中的Llama2和Google Flan t5
- LangChain 13输出解析Output Parsers 自动修复解析器
- LangChain 14 SequencialChain链接不同的组件
- LangChain 15根据问题自动路由Router Chain确定用户的意图
- LangChain 16 通过Memory记住历史对话的内容
- LangChain 17 LangSmith调试、测试、评估和监视基于任何LLM框架构建的链和智能代理
- LangChain 18 LangSmith监控评估Agent并创建对应的数据库
- LangChain 19 Agents Reason+Action自定义agent处理OpenAI的计算缺陷
- LangChain 20 Agents调用google搜索API搜索市场价格 Reason Action:在语言模型中协同推理和行动
- LangChain 21 Agents自问自答与搜索 Self-ask with search
- LangChain 22 LangServe用于一键部署LangChain应用程序
- LangChain 23 Agents中的Tools用于增强和扩展智能代理agent的功能
- LangChain 24 对本地文档的搜索RAG检索增强生成Retrieval-augmented generation
- LangChain 25: SQL Agent通过自然语言查询数据库sqlite
- LangChain 26: 回调函数callbacks打印prompt verbose调用
- LangChain 27 AI Agents角色扮演多轮对话解决问题CAMEL
- LangChain 28 BabyAGI编写旧金山的天气预报
- LangChain 29 调试Debugging 详细信息verbose
- LangChain 30 ChatGPT LLM将字符串作为输入并返回字符串Chat Model将消息列表作为输入并返回消息
- LangChain 31 模块复用Prompt templates 提示词模板
- LangChain 32 输出解析器Output parsers
- LangChain 33: LangChain表达语言LangChain Expression Language (LCEL)
- LangChain 34: 一站式部署LLMs使用LangServe
- LangChain 35: 安全最佳实践深度防御Security
1. LangChain 表达式语言LangChain Expression Language(LCEL)
LangChain 表达式语言或 LCEL 是一种声明性的方式,可以轻松地组合链。LCEL 从第一天开始设计,支持将原型投入生产,而不需要进行任何代码更改,从最简单的“提示 + LLM”链到最复杂的链(我们已经看到人们成功地在生产中运行了具有数百个步骤的 LCEL 链)。以下是您可能想使用 LCEL 的几个原因:
1.1 Streaming support流支持
当您使用 LCEL 构建链时,可以获得最佳的时间到第一个令牌(时间,直到第一个输出块出现)的支持。对于某些链,这意味着我们直接从 LLM 流式传输令牌到流式输出解析器,您会得到解析后的增量输出块,其速率与 LLM 提供程序输出原始令牌的速率相同。
1.2 Async support LCEL支持异步
任何使用LCEL构建的链,既可以使用同步API(例如在Jupyter笔记本中进行原型设计),也可以使用异步API(例如在LangServe服务器中)。这使得可以在原型和生产环境中使用相同的代码,性能出色,并且能够在同一服务器上处理许多并发请求。
1.3 Optimized parallel execution 优化的并行执行
当您的LCEL链具有可以并行执行的步骤(例如,如果您从多个检索器中获取文档),我们会自动执行,无论是在同步接口还是异步接口中,以获得最小的延迟。
1.4 Retries and fallbacks 重试和回退
针对LCEL链的任何部分配置重试和回退。这是使您的链在规模上更加可靠的好方法。我们目前正在致力于为重试/回退添加流式支持,这样您就可以获得额外的可靠性而无需延迟成本。
1.5 Access intermediate results 访问中间结果
对于更复杂的链,通常在产生最终输出之前访问中间步骤的结果非常有用。这可以用于让最终用户知道正在发生某事,甚至只是为了调试您的链。您可以流式传输中间结果,并且它在每个LangServe服务器上都可用。
1.6 Input and output schemas 输入和输出模式
输入和输出模式根据您的链的结构推断出每个LCEL链的Pydantic和JSONSchema模式。这可用于验证输入和输出,并且是LangServe的一个组成部分。
1.7 Seamless LangSmith tracing integration 无缝的LangSmith追踪集成
随着您的链变得越来越复杂,准确了解每一步发生了什么变得越来越重要。使用LCEL,所有步骤都会自动记录到LangSmith中,以实现最大的可观察性和调试能力。
1.8 Seamless LangServe deployment integration 无缝的LangServe部署集成
使用LCEL创建的任何链都可以轻松使用LangServe进行部署。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!