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

设计的网站都有哪些内容我要下载中国建设网站

设计的网站都有哪些内容,我要下载中国建设网站,英雄联盟手游小程序被投诉,建筑工程东莞网站建设Langchain实战 一. Langchain介绍二. 项目背景三. 代码实现3.1 导入必要的库并调用GPT大模型3.2 输出解析器(指定输出格式)3.3 定义Prompt模板3.4 构造LLMChain并推理3.5 解析推理结果3.6 异步调用 四. 参考文献 一. Langchain介绍 LangChain 是一个用于开发由语言模型驱动的应… Langchain实战 一. Langchain介绍二. 项目背景三. 代码实现3.1 导入必要的库并调用GPT大模型3.2 输出解析器(指定输出格式)3.3 定义Prompt模板3.4 构造LLMChain并推理3.5 解析推理结果3.6 异步调用 四. 参考文献 一. Langchain介绍 LangChain 是一个用于开发由语言模型驱动的应用程序的框架。它使得应用程序能够 具有上下文感知能力将语言模型连接到上下文来源提示指令少量的示例需要回应的内容等。具有推理能力依赖语言模型进行推理根据提供的上下文如何回答采取什么行动等。 LangChain 包的主要价值主张是 组件用于处理语言模型的可组合工具和集成。无论你是否使用 LangChain 框架的其余部分组件都是模块化的易于使用现成的链用于完成高级任务的组件的内置组合 现成的链使得开始变得容易。组件使得定制现有链和构建新链变得容易。 LangChain的安装与入门请参考快速入门指南 二. 项目背景 假设有一串长文本我们希望利用大模型提取出文本中与指定类型的商品品牌、型号等相关的信息并通过JSON格式将商品信息输出如下所示 文本内容我今天买了一台Huawei Mate 60, 请你帮我送到华中科技大学南大门, 手机是蓝色的, 512G 输出 json {品牌: Huawei,品类: 手机,属性: {型号: Mate 60,颜色: 蓝色,存储容量: 512G},商品名称: Huawei Mate 60 蓝色 512G }三. 代码实现 3.1 导入必要的库并调用GPT大模型 # 导入Langchain相关的库 from langchain.llms import OpenAI from langchain.prompts import PromptTemplate from langchain.chains import LLMChain from langchain.prompts import (ChatPromptTemplate,PromptTemplate,SystemMessagePromptTemplate,AIMessagePromptTemplate,HumanMessagePromptTemplate ) from langchain.output_parsers import StructuredOutputParser, ResponseSchema from langchain.chat_models import ChatOpenAI from langchain.schema import (AIMessage,HumanMessage,SystemMessage )OPENAI_API_KEY 和 OPENAI_API_BASE 是两个与 OpenAI API 交互时常用的环境变量它们各自有不同的用途 OPENAI_API_KEY 用途这是一个用于身份验证的密钥允许你访问 OpenAI 的服务。当你通过 API 发送请求时需要在请求头中包含这个 API 密钥以便 OpenAI 能够验证请求者的身份。 格式通常是一个由数字和字母组成的字符串长度固定。 OPENAI_API_BASE 用途这个环境变量用于指定 OpenAI API 的基础 URL。它决定了你的请求将被发送到哪个服务器。 默认值通常情况下你不需要更改它因为默认值已经指向了 OpenAI 的生产环境服务器。 如何使用如果你需要将请求发送到不同的服务器如沙盒环境、自定义端点或其他地区特定的服务器你可以设置这个环境变量。 import os os.environ[OPENAI_API_KEY] ... os.environ[OPENAI_API_BASE] ...# 导入ChatModel chat ChatOpenAI(temperature0)3.2 输出解析器(指定输出格式) 在Langchain中封装了结构化输出的功能通过Promt的输出解析器可以直接将LLM的输出结果转化为指定格式结构化输出解析器 structured 比如前面提到我们希望输出为JSON格式那么 #定义输出格式 response_schemas [ResponseSchema(name品牌, description商品的品牌),ResponseSchema(name品类, description商品的品类),ResponseSchema(name属性, description商品除品牌、品类外能够提炼的其他属性),ResponseSchema(name商品名称, description根据提取的信息输出商品名称), ]# 初始化解析器 output_parser StructuredOutputParser.from_response_schemas(response_schemas)format_instructions output_parser.get_format_instructions()format_instructions将作为Prompt的一部分输入大模型中。 3.3 定义Prompt模板 LangChain 提供了不同类型的 MessagePromptTemplate。最常用的是 AIMessagePromptTemplate、SystemMessagePromptTemplate 和 HumanMessagePromptTemplate分别用于创建 AI 消息、系统消息和人工消息与聊天相关的提示模板 # 创建SystemMessagePromptTemplate SystemPrompt PromptTemplate(template你是一个 {industry} 行业的专家你对行业内各个品牌的名称和型号了如指掌。,input_variables[industry] ) SystemMessagePrompt SystemMessagePromptTemplate(promptSystemPrompt) # 创建HumanMessagePromptTemplate HumanPrompt PromptTemplate(template用户问题给你一段输入文本,请从里面提炼与{goods}相关的以下信息品牌:商品的品牌品类:商品的品类属性:商品除品牌、品类外能够提炼的其他属性,以json形式给出商品名称根据提取的信息输出商品描述context{ocr_result}/context根据context里的信息回答用户问题输出格式: {format_instructions}让我们一步一步分析,给出你分析的过程,并注意以下要点:1.只提取和{goods}相关的信息,如果无法提炼返回空json.只输出一个可能性最大的商品信息,输出的json只包含一种商品;2:参考{industry}行业内的常见品牌并将文本中识别错误的品牌信息,根据字体之间的相似性与已有品牌进行对应;3.一般来说商品的品牌会在商品描述的前面,并且他们距离不会太远,如果提取到多个品牌信息,则考虑品牌和商品描述之间的距离;4.你需要判断提取到的品牌是否属于{industry}行业,若提取到的品牌明显不属于{industry}行业,则忽略该品牌信息;5.保证输出json的合法性,输出你分析的过程.,input_variables[goods,ocr_result,format_instructions,industry] ) HumanMessagePrompt HumanMessagePromptTemplate(promptHumanPrompt)# 组合多个Prompt chat_template ChatPromptTemplate.from_messages([SystemMessagePrompt,HumanMessagePrompt])在上面的Prompt中我们需要外部导入四个参数分别是 goods商品类别比如手机电脑等。ocr_result希望大模型提取信息的文本。format_instructions3.2中定义的输出解析器。industry该商品所处的行业比如3C家用电器等。 关于Prompt如何设计请参考Prompt之美如何设计提示词让大模型变“聪明” 3.4 构造LLMChain并推理 链允许我们将多个组件组合在一起创建一个单一的、一致的应用程序。例如我们可以创建一个链该链接接受用户输入使用 PromptTemplate 对其进行格式化然后将格式化后的响应传递给 LLM。我们可以通过将多个链组合在一起或者通过将链与其他组件组合在一起来构建更复杂的链快速开始: 使用LLMChain chainLLMChain(llmchat, promptchat_template)接下来就可以推理了 ocr 我今天买了一台Huawei Mate 60, 请你帮我送到华中科技大学南大门, 手机是蓝色的, 512G res chain.run(industry电子产品,ocr_resultocr,goods手机,format_instructionsformat_instructions) print(res)#输出 1. 首先从文本中提取可能与手机相关的信息- 品牌Huawei- 商品名称Mate 60- 属性蓝色、512G2. 根据电子产品行业内的常见品牌确认Huawei属于电子产品行业的品牌无需修正。3. 根据文本中的描述品牌信息在商品描述前面且距离不远因此可以确定Huawei是商品的品牌。4. 综合以上信息得出提取的手机相关信息如下json {品牌: Huawei,品类: 手机,属性: 蓝色, 512G,商品名称: Huawei Mate 60 }3.5 解析推理结果 在得到输出结果后我们希望解析输出的字符串中的JSON信息从而提取我们想要的品牌、品类相关信息 output output_parser.parse(res) print(output)#输出 {品牌: Huawei, 品类: 手机, 属性: 蓝色, 512G, 商品名称: Huawei Mate 60}解析出来的信息为字典格式然后就可以从中提取我们想要的信息。 3.6 异步调用 上文展示了如何推理一条文本信息当我们有大量的文本信息时采用串行执行的方式将会非常耗时因此考虑能不能采用并行执行的方式提高推理速度。Langchain支持通过利用asyncio库为代理提供异步支持 如何使用异步API进行代理 Langchain五进阶之异步调用 import time,sys import asyncio #异步调用#测试 async def async_function():print(Hello, async!)sys.stdout.flush() # 刷新标准输出流await async_function()假设我们有如下的五条文本信息 ocr_results [ 我今天买了一台Huawei Mate 60, 请你帮我送到华中科技大学南大门, 手机是蓝色的, 512G, 这款红米Note 13 Pro手机现在在京东有优惠活动原价1399元的商品通过领取满1000元减100元、满99元减30元的优惠券后实付价格低至1262.01元。如果购买京东PLUS会员还可以享受立减6.99元的优惠。这款手机采用了6.67英寸超细四窄边直屏搭载了Pro同款金刚骨骼架构和第二代1.5K高光护眼屏。, 2023 年 10 月 31 日苹果发布了全新 M3 系列芯片M3、M3 Pro、M3 Max首次采用 3nm 工艺同时发布了搭载 M3 系列芯片的全新 MacBook Pro 14/16 英寸以及 24 英寸的 iMac。, 据外媒 FujiFrmors 报道富士 X-T50 相机有望于 5 月 16 日发布这款相机将引入机身五轴防抖IBIS功能同时还将搭载 X-T5 同款 X-Trans V CMOS 传感器内置 1 个 SD 卡插槽。, 联想旗下新款ThinkBook 16笔记本电脑现已上架其中集成显卡版本售价为7699元配备RTX 4060独立显卡的版本售价为9999元。 ]首先不采用异步调用串联推理 result [] s time.perf_counter() for ocr in ocr_results:res chain1.run(industry电子产品,ocr_resultocr,goods电子产品,format_instructionsformat_instructions)output output_parser.parse(res)result.append(output[商品名称]) print(result) elapsed time.perf_counter() - s print(\033[1m fSerial executed in {elapsed:0.2f} seconds. \033[0m)输出 [Huawei Mate 60, 红米Note 13 Pro手机, 苹果 MacBook Pro 16 英寸搭载 M3 系列芯片, 富士 X-T50 相机, 联想ThinkBook 16 笔记本电脑] Serial executed in 18.15 seconds.采用异步调用并联推理 async def async_generate(ocr_result):res await chain.arun(industry电子产品,ocr_resultocr_result,goods电子产品,format_instructionsformat_instructions)output output_parser.parse(res)return output[商品名称]async def generate_concurrently(data):tasks [async_generate(ocr) for ocr in data]return await asyncio.gather(*tasks) ####异步调用s time.perf_counter() resultawait generate_concurrently(ocr_results) print(result) elapsed time.perf_counter() - s print(\033[1m fConcurrent executed in {elapsed:0.2f} seconds. \033[0m)输出 [Huawei Mate 60, 红米Note 13 Pro手机, Apple MacBook Pro with M3 Series Chip, 14/16-inch, 富士 X-T50 相机, ThinkBook 16笔记本电脑] Concurrent executed in 7.21 seconds.可以看到二者输出的商品描述几乎一致但是推理时间从18.15s减少到了7.21s速度快了一倍还要多。 四. 参考文献 LangChain 中文网500页码中文文档教程 LangChain 中文文档 v0.1.7
http://www.zqtcl.cn/news/70320/

相关文章:

  • 集约化网站建设管理山西住房建设厅官方网站
  • 制作网站要多少钱网站建设网站制作提供服务
  • 织梦网站查看原有文章论坛源码哪个好
  • 把excel做数据库分享成网站专业企业网站建设定制
  • 网站后台如何更换在线qq咨询代码惠州抖音seo策划
  • 校园网站做等级保护竞价托管哪家效果好
  • 做网站开源框架wordpress怎么静态
  • 网站推广优化方法伊春网络推广
  • wordpress回收站python制作网页教程
  • 贵州网站推广公司动画做a视频在线观看网站
  • 东莞东城招聘网最新招聘seo优化工作内容做什么
  • 哪里有网站建设中心北京必去的十大景点
  • 网站栏目名跨境电商app
  • 做网站业务员vue网站引导页怎么做
  • 网站设计 网站开发 西安做一个商城网站
  • 医药类网站前置审批规范门户网站建设
  • 做的好的营销型网站有哪些山东省建设部网站官网
  • 博客网站模板下载什么网站做执法仪
  • 道路建设网站问答类网站怎么做
  • 博客园网站开发北京市环境建设办公室网站
  • 网站未做安全隐患检测怎么拿shell上海建筑设计院招聘
  • 网站app制作教程郑州市建设工程信息网站
  • 搭建网站吧wordpress调用ajax刷新
  • 创新的网站建设江阴高端网站建设
  • 电子商务网站建设中ftp怎么连接网站
  • 江苏省建设执业中心网站wordpress 提权攻击
  • 沈阳自助模板建站免费网页游戏源码
  • 东莞 传媒 网站建设珠海seo全网营销
  • 怎么用wordpress打开网站网络维护是什么工作
  • iis能建设网站吗建设一个网站的硬件要求吗