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

网站关键词 公司我想做网络推广找谁

网站关键词 公司,我想做网络推广找谁,湖南湘冠网络科技有限公司,单页面网站做百度推广零基础langchain实战一:模型、提示词和解析器-CSDN博客 书接上文 大模型输出格式化 在下面例子中:我们需要将大模型的输出格式化成json。 import os from dotenv import load_dotenvload_dotenv() # 加载 .env 文件 api_key os.getenv("DEEPS…

零基础langchain实战一:模型、提示词和解析器-CSDN博客

书接上文

大模型输出格式化

在下面例子中:我们需要将大模型的输出格式化成json。

import os
from dotenv import load_dotenvload_dotenv()  # 加载 .env 文件
api_key = os.getenv("DEEPSEEK_API_KEY")from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model="deepseek-chat",temperature=0.0,max_tokens=None,timeout=None,max_retries=2,base_url="https://api.deepseek.com",api_key=api_key,
)

 调用ResponseSchema定义输出格式json:

最后生成的json格式为:

from langchain.output_parsers import ResponseSchema
from langchain.output_parsers import StructuredOutputParseraffection_schema = ResponseSchema(name="affection", description="评价这段话总体的情感是积极的还是消极的,并为其打分,输出为-1.0 至 1.0 的一位小数")
positive_content_schema = ResponseSchema(name="positive", description="总结这段话评价了物品的哪些优点,列举出物品的优点。如果没有输出 None")
negative_content_schema = ResponseSchema(name="negative", description="总结这段话评价了物品的哪些缺点,列举出物品的缺点。如果没有输出 None")response_schema = [affection_schema, positive_content_schema, negative_content_schema]

因此实例化三个ResponseSchema,一个相当于json中的一个key。

并将三个实例添加到列表中。

output_parser = StructuredOutputParser.from_response_schemas(response_schema)
format_instructions = output_parser.get_format_instructions()

StructuredOutputParser:创建一个 结构化输出解析器,用于将 LLM 的文本输出解析为预定义的结构化格式。

format instructions:生成 格式化指令,这些指令会直接插入到提示模板中,指导 LLM 如何按结构化格式输出结果。

按照之前的方法定义system_prompt:

from langchain.prompts import ChatPromptTemplateprompt = """下面这段话是用户评价商品的一段话 \请你帮忙判断这段话总体来说为“好评”还是“差评” \告诉我用户为物品的哪些特征打“好评” \哪些特征打差评text:{comment}{format_instructions}
"""prompt_template = ChatPromptTemplate.from_template(prompt)prompt_template.messages[0].prompt
comment = """尺码正常买就行,不用买太大。 \鞋底非常高~鞋楦较宽,高脚背胖脚也能穿。 \鞋底非常软弹,很容易踩开,确实超出预期。 \鞋子非常轻,真的很轻哈哈哈~差不多和竞训碳板鞋一样轻了[爱心_blue][爱心_blue]。 \因为是防泼水鞋面嘛,所以鞋面有点不透气,室外温度30度穿这鞋会有点热,可以秋天再入手。 \补充一下哈,因为是全黑的鞋,所以刚开始看起来会有点怪怪的,时间长了就更耐看了 """
messages = prompt_template.format_messages(comment = comment,format_instructions = format_instructions)print(messages[0].content)

输出如下:

调用大模型:

response = llm.invoke(messages)
print(response.content)

输出如下:

最后调用先前的 结构化输出解析器 将大模型输出结果解析成json格式:

output_dict = output_parser.parse(response.content)

最后的结果为:

总结:

LangChain 中的 Output Parser(输出解析器)Prompt Template(提示模板) 相当于在调用大模型的输入前输出后添加了两个中间层,它们共同作用,确保大模型的输出符合预定义的格式规范。这种设计的核心目标是让大模型的输出更结构化、可解析、可验证,从而满足实际应用的需求。

Q&A:

  •         为什么需要这两个中间层?

1, 解决自由文本的不确定性

大模型默认输出是自由文本,但实际应用中需要结构化数据(如 JSON、表格)。例如,智能客服需要提取订单号、价格、物流信息等字段。

示例:如果用户问“我的订单什么时候到货?”,模型需要从回答中提取字段,而不是返回一段话。


 2,提高开发效率和可维护性
通过预定义格式,开发者无需手动处理自由文本的解析逻辑,框架自动完成字段提取和类型校验。
优势:
        减少代码量(如 50% 以上的开发效率提升)。
        错误隔离性强(格式校验失败时抛出明确异常,如 OutputParserException)。


3,适配复杂业务场景
对于需要多步骤推理的任务(如旅行规划、数据分析),模型需要按步骤调用工具(如天气查询、航班搜索),每一步的输出都需要结构化。

http://www.dtcms.com/wzjs/307352.html

相关文章:

  • php网站开发实训报告seo网站排名优化软件
  • 河南科技网站建设seo诊断优化专家
  • 网站域名年费深圳网站设计公司
  • 找印度人做网站搜索引擎关键词优化
  • 实体店100个营销策略广州网站营销优化qq
  • wordpress超级开关福州关键词排名优化
  • 网站免费建站百度关键词排名十大排名
  • 自己做的网站怎么放图片百度竞价推广培训
  • 阐述商业网站开发岗位需求分析如何建站
  • 网站建设树状图怎么自己制作网站
  • 聊城住房和城乡建设部网站百度建立自己的网站
  • 做ppt卖给网站电商代运营收费标准
  • cad做兼职区哪个网站网站怎么优化排名
  • php网站好吗怎样制作一个网页
  • 政府制作网站收费标准网上互联网推广
  • jsq项目做网站中国第一营销网
  • 网站排名必做阶段性seo策略怎么创建网站教程
  • 合优人才网合川郑州seo外包顾问热狗
  • 网页设计与网站建设实战大全宁波关键词排名优化
  • 培训网站建设学校常州seo外包公司
  • 网易做相册的网站哪里有学电脑培训班
  • 硬件开发平台是什么临沂seo推广外包
  • 郑州市 网站建设目前好的推广平台
  • 网站开发中怎么样对接接口日照seo优化
  • 哪个网站可以找设计师做设计十大免费网站推广入口
  • 长沙网页培训深圳的seo网站排名优化
  • wordpress设置默认首页淘宝seo优化
  • 变性人做网站网络推广招聘
  • 东莞网站建设公司直播seo搜索优化招聘
  • 商务网站制作公司seo和sem的区别与联系