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

河北专业信息门户网站定制写着网站建设图片

河北专业信息门户网站定制,写着网站建设图片,全网万能搜索引擎,购物网站asp源码在 LangChain 里#xff0c;LCEL 即 LangChain Expression Language#xff08;LangChain 表达式语言#xff09;#xff0c;本文为你详细介绍它的定义、作用、优势并举例说明#xff0c;从简单示例到复杂组合示例#xff0c;让你快速掌握LCEL表达式语言使用技巧。 定义 … 在 LangChain 里LCEL 即 LangChain Expression LanguageLangChain 表达式语言本文为你详细介绍它的定义、作用、优势并举例说明从简单示例到复杂组合示例让你快速掌握LCEL表达式语言使用技巧。 定义 LangChain Expression LanguageLCEL是 LangChain 推出的一种用于构建和编排链chains、代理agents等组件的声明式语言。它允许开发者以一种简洁、直观的方式将不同的 LangChain 组件组合在一起定义复杂的工作流而无需编写大量的传统 Python 代码来实现组件之间的连接和交互。 作用 快速构建工作流能够快速将各种 LangChain 组件如大语言模型、提示模板、工具等组合成一个完整的工作流。例如开发者可以轻松地将一个大语言模型与特定的提示模板以及一些外部工具如搜索引擎、数据库查询工具组合在一起实现一个具备信息检索和知识问答功能的应用。清晰表达逻辑以声明式的方式描述组件之间的交互逻辑使得代码更加清晰易懂。无论是简单的线性流程还是复杂的分支、循环逻辑都能通过 LCEL 清晰地表达出来便于开发者理解和维护。灵活配置和调整方便开发者对工作流进行灵活的配置和调整。可以根据不同的需求快速替换工作流中的某个组件或者修改组件之间的连接方式而不需要对整个代码结构进行大规模的改动。 优势 简洁性相比传统的 Python 代码实现方式LCEL 代码更加简洁。它减少了大量的样板代码让开发者能够更专注于业务逻辑的定义提高了开发效率。可读性声明式的语法使得代码的可读性大大提高。即使是非专业的开发者也能快速理解工作流的整体结构和各个组件之间的关系便于团队协作和知识共享。可组合性支持将多个较小的工作流组合成更大、更复杂的工作流。这种高度的可组合性使得开发者可以根据不同的场景和需求灵活地构建各种复杂的应用。 简单示例 以下是一个简单的 LCEL 示例展示了如何使用 LCEL 构建一个基本的问答链 from langchain.chat_models import ChatOpenAI from langchain.prompts import ChatPromptTemplate from langchain.schema.runnable import RunnablePassthrough import os# 设置 OpenAI API 密钥 os.environ[OPENAI_API_KEY] your_openai_api_key# 初始化大语言模型 llm ChatOpenAI(temperature0)# 定义提示模板 prompt ChatPromptTemplate.from_messages([(human, {question}) ])# 使用 LCEL 构建链 chain (RunnablePassthrough.assign() | prompt | llm )# 提出问题 question 苹果公司是哪一年成立的 answer chain.invoke({question: question})print(f问题: {question}) print(f答案: {answer.content})在这个示例中首先初始化了 OpenAI 的聊天模型和一个简单的提示模板。然后使用 LCEL 的语法通过 | 符号将 RunnablePassthrough、提示模板和大语言模型连接起来构建了一个完整的问答链。最后向链中输入一个问题调用 invoke 方法获取模型的回答并打印输出。 提示词链组合示例 我们只需将标题值嵌入到下一个提示模板中并使用RunnablePassthrough。现在如果我们想进一步延长这个过程我们可以简单地重复该过程。 import streamlit as st from langchain.chat_models import ChatOpenAI from langchain.prompts import PromptTemplate from langchain.schema import StrOutputParser from langchain.schema.runnable import RunnablePassthroughst.title(Story Creator) topic st.text_input(Choose a topic to create a story about)title_prompt PromptTemplate.from_template(Write a great title for a story about {topic} )story_prompt PromptTemplate.from_template(You are a writer. Given the title of story, it is your job to write a story for that title.Title: {title} )llm ChatOpenAI()title_chain title_prompt | llm | StrOutputParser() story_chain story_prompt | llm | StrOutputParser() chain {title: title_chain} | RunnablePassthrough.assign(storystory_chain)if topic:result chain.invoke({topic: topic})st.header(result[title])st.write(result[story])这里主要解释下核心代码 streamlit是一个用于快速构建数据应用和 Web 界面的 Python 库。如果未接触过可以简单理解未html表单下面是设置表单页面标题然后定义输入文本框。 st.title(Story Creator)在 Streamlit 应用中设置页面标题为 Story Creator。 st.text_input(Choose a topic to create a story about)创建一个文本输入框提示用户输入一个用于创作故事的主题并将用户输入的值存储在变量 topic 中。 title_chain将 title_prompt、llm 和 StrOutputParser 用 | 操作符连接起来形成一个链。这个链的作用是根据用户输入的主题生成故事标题并将模型的输出解析为字符串。 story_chain将 story_prompt、llm 和 StrOutputParser 用 | 操作符连接起来形成一个链。这个链的作用是根据生成的标题创作故事并将模型的输出解析为字符串。 chain将 title_chain 和 story_chain 组合起来。{title: title_chain} 表示将 title_chain 的输出作为键为 title 的值RunnablePassthrough.assign(storystory_chain) 表示将 story_chain 的输出作为键为 story 的值最终形成一个包含标题和故事内容的结果。 现在我们知道如何用RunnablePassthrough传递值。下面我们想进一步延长这个过程我们可以简单地重复该过程。 import streamlit as st from langchain.chat_models import ChatOpenAI from langchain.prompts import PromptTemplate from langchain.schema import StrOutputParser from langchain.schema.runnable import RunnablePassthroughst.title(Story Creator) topic st.text_input(Choose a topic to create a story about)title_prompt PromptTemplate.from_template(Write a great title for a story about {topic} )story_prompt PromptTemplate.from_template(You are a writer. Given the title of story, it is your job to write a story for that title.Title: {title} )review_prompt PromptTemplate.from_template(You are a critic. Given a story, it is your job to write a review for that story.Title: {title} Story: {story} )llm ChatOpenAI()title_chain title_prompt | llm | StrOutputParser() story_chain story_prompt | llm | StrOutputParser() review_chain review_prompt | llm | StrOutputParser() chain ({title: title_chain}| RunnablePassthrough.assign(storystory_chain)| RunnablePassthrough.assign(reviewreview_chain))if topic:result chain.invoke({topic: topic})st.header(result[title])st.write(result[story])st.header(Review)st.write(result[review])该示例在之前基础上增加了评论功能。 总结 LCEL能够快速将各种 LangChain 组件如大语言模型、提示模板、工具等组合成一个完整的工作流。让开发者可以轻松地将大语言模型与特定的提示模板以及一些外部工具组合在一起灵活地满足各类需求应用。
http://www.pierceye.com/news/508207/

相关文章:

  • 山东网站建设网站我国网站开发
  • 常见的网站类型有北京电力建设公司待遇
  • 网站分析流程wordpress表单统计插件下载
  • 南宁网站建设公司seo优化武鸣住房和城乡规划建设局网站
  • 在线制作网站门户站模板
  • 邵阳网站建设推广56m做图片视频的网站是什么
  • 如何提高网站的点击率域名空间网站推广
  • 上海松江做网站建设wordpress 拒绝连接
  • 有免费的个人网站吗富德生命人寿保险公司官方网站保单服务
  • 网站备案 子域名网页视频制作软件
  • 空间 网站网站建设哪个好
  • 公司网站域名价格云南免费网站建设
  • 网站跳转域名不变常见网站架构
  • 山东省建设厅电工证查询网站网站标题的选择
  • 网站建设是属于软件吗电话销售哪里找客户电话
  • 用vue做网站的实例网站制作郑州
  • 五个网站想自己在家做外贸网站
  • 收费的电影网站怎么做网页设计图片的应用
  • 班级网站建设步骤橘子皮主题wordpress
  • 网站模板源文件网站制作需求文档
  • 青岛注册公司网站建网站需要那些步骤
  • 深圳做网上商城网站小蘑菇网站建设软件
  • 广州住建网站网站空间购买价格
  • 金华永康网站建设公司做网站的优点
  • 有免费的微网站制作吗瑞安哪里有培训做网站的
  • 苏州住房和城乡建设局网站wordpress中文书
  • 盐城市滨海县建设局网站wordpress 4.8.1 漏洞
  • 荆州市城市建设投资开发有限公司网站百度人工服务24小时
  • 永久域名购买昆明网站建设优化企业
  • 自适应网站模板下载网页设计培训哪好