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

建设一个网站多少钱呢网络营销推广方案案例

建设一个网站多少钱呢,网络营销推广方案案例,山西发布紧急通知疫情,寻找做网站的公司上一篇:(一)从零开始:用 LangChain 和 ZhipuAI 搭建简单对话 在上一篇文章中,我们成功搭建了一个基于 LangChain 和 ZhipuAI 的智能对话系统的基础环境。今天,我们将深入探讨输入输出处理的细节&#xff0…

上一篇:(一)从零开始:用 LangChain 和 ZhipuAI 搭建简单对话

在上一篇文章中,我们成功搭建了一个基于 LangChain 和 ZhipuAI 的智能对话系统的基础环境。今天,我们将深入探讨输入输出处理的细节,这是打造一个真正智能对话系统的关键环节。输入输出处理不仅仅是简单的数据传递,更是赋予对话系统灵魂的过程。通过精心设计的输入输出逻辑,我们可以让系统变得更加智能、灵活,甚至具有某种“人格魅力”。接下来,让我们一起揭开输入输出处理的神秘面纱。(建议从第一篇食用)

一、模板化对话:让对话更有风格

对话系统的第一印象往往来自于它的风格。一个有趣、有个性的对话系统更容易吸引用户的注意。LangChain 提供了强大的模板化对话功能,让我们可以轻松定制对话风格。

相关包

from langchain_community.chat_models import ChatZhipuAI
from langchain_core.messages import AIMessage, HumanMessage, SystemMessage
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.prompts import FewShotChatMessagePromptTemplate
from langchain_core.messages import AIMessage, HumanMessage, SystemMessage
from langchain_core.output_parsers import JsonOutputParser
from langchain_core.pydantic_v1 import BaseModel, Field
from langchain.output_parsers import CommaSeparatedListOutputParser

单轮对话模板:打造个性化评论家

想象一下,如果你的对话系统是一个“贴吧老哥”,它会用怎样的语气来评价 LangChain 呢?通过模板化对话,我们可以轻松实现这一点:

template = ChatPromptTemplate.from_messages([("system", "你是一位{style}风格的评论家"),("human", "请评价以下事物:{things}")
])
messages = template.format_messages(style="贴吧老哥", things="langchain")
response = chat.invoke(messages)

运行这段代码后,系统会以“贴吧老哥”的风格评价 LangChain。这种风格化的输出不仅增加了对话的趣味性,还让系统显得更加“人性化”。

运行结果如下:(模型不同运行结果也不同)

哈,老哥,来聊聊这个LangChain啊。这玩意儿在AI界可是挺火的,咱们就当个贴吧老哥,来聊聊这东西。首先,LangChain这名字听起来就挺高端大气,像是哪个科研机构或者大公司搞出来的。它本质上是一个构建大型语言模型的工具链,听起来就像是个AI界的瑞士军刀,能解决不少问题。优点嘛,老哥,首先它集成度挺高,把各种AI模型、数据处理、模型训练的功能都整合在一起,对于做语言模型开发的人来说,这简直就是福音,不用东拼西凑,一套工具链就能搞定很多事儿。其次,LangChain的扩展性也不错,可以方便地接入各种外部库和API,对于开发者来说,灵活性挺高,可以根据自己的需求来定制。但是,老哥,凡事都有两面性,LangChain也有它的槽点。首先,这玩意儿可能对新手不太友好。它那么强大,功能又多,不熟悉的人可能会觉得操作起来有点复杂,有点像是个大杂烩,需要一定的学习成本。再者,这么强大的工具链,资源消耗肯定不低。对于一些资源有限的小团队或者个人开发者来说,可能得掂量掂量自己的服务器配置能不能撑得住。最后,老哥,我得说说这东西的生态。虽然LangChain本身挺强大,但是周边的生态可能还不够完善,一些配套的工具和资源可能还需要时间去积累。总的来说,LangChain是个挺不错的工具,对于有需求的人来说,是个不错的选择。但是,老哥,用这东西之前,也得考虑清楚自己的需求、团队实力和资源情况,别到时候搞了个大新闻,自己却忙得焦头烂额。

多轮对话模板:管理对话历史的艺术

多轮对话是智能对话系统的核心功能之一。通过模板化对话,我们可以轻松管理对话历史,让对话更加连贯:

history_template = ChatPromptTemplate.from_messages([("system", "你正在与用户讨论{theme}。以下是之前的对话历史:\n{history}"),("human", "{input}")
])
messages = history_template.format_messages(theme="目前AI发展的趋势",history=[HumanMessage(content="国外的chatgpt怎么样"),AIMessage(content="还行,也就那样,我认为国内deepseek无敌")],input="详细说说他们的优势"
)
response = chat.invoke(messages)

这段代码不仅让对话历史得以保留,还通过模板化的方式让对话更加自然。这种技术在客服系统、教育辅导等领域有着广泛的应用前景。

运行结果如下:(模型不同运行结果也不同)

当然可以。ChatGPT 和 DeepSeek 都是人工智能领域的先进技术,它们各自有不同的优势。以下是对两者优势的详细说明:### ChatGPT 的优势:1. **强大的语言处理能力**:ChatGPT 是由 OpenAI 开发的,基于 GPT-3.5 模型,具有非常强大的自然语言处理能力,能够进行流畅的对话,理解复杂的语言结构和语境。2. **广泛的领域知识**:ChatGPT 接受了大量的文本数据训练,因此它对各种领域的知识都有所了解,能够回答各种问题。3. **跨平台应用**:ChatGPT 可以在多个平台上运行,包括网页、移动应用等,用户可以在不同的设备上与它互动。4. **社区支持**:由于 ChatGPT 是由 OpenAI 开发的,背后有一个强大的社区和团队支持,不断进行更新和改进。5. **商业应用潜力**:ChatGPT 在客户服务、内容创作、教育等多个商业领域都有广泛的应用潜力。### DeepSeek 的优势:1. **深度学习技术**:DeepSeek 利用深度学习技术,在图像识别、语音识别等领域表现出色,特别是在复杂场景下的图像理解能力。2. **国内研发**:DeepSeek 是中国自主研发的技术,体现了中国在人工智能领域的创新能力和技术实力。3. **特定领域的深度应用**:DeepSeek 在特定领域(如医疗、安防等)有深入的研究和应用,能够提供针对性强、专业化的解决方案。4. **高效的数据处理能力**:DeepSeek 在处理大量数据时表现出高效,能够快速从数据中提取有价值的信息。5. **安全性**:DeepSeek 在设计和应用过程中注重数据安全和隐私保护,符合国内外的数据保护法规。总的来说,ChatGPT 和 DeepSeek 在各自领域都有显著的优势。ChatGPT 强调的是通用性和跨领域的对话能力,而 DeepSeek 则在特定技术领域和安全性方面表现出色。两者都是人工智能技术发展的重要成果,代表了不同方向上的创新和突破。

二、Few-shot 提示:用示例引导模型

Few-shot 提示是一种通过提供少量示例来引导模型输出的技术。它在处理数学计算、逻辑推理等任务时表现尤为出色。

examples = [{"input": "5*6", "output": "30"},{"input": "4*6", "output": "24"}
]
example_template = ChatPromptTemplate.from_messages([("human", "{input}"),("ai", "{output}")
])
few_shot_prompt = FewShotChatMessagePromptTemplate(example_prompt=example_template,examples=examples
)
final_prompt = ChatPromptTemplate.from_messages([few_shot_prompt,("human", "{input}")
])
response = chat.invoke(final_prompt.format_messages(input="25*12"))
print(response.content)

通过 Few-shot 提示,我们可以让模型快速理解任务要求,并给出准确的输出。这种技术特别适合处理那些需要一定逻辑推理能力的任务。

运行结果如下

300

三、结构化输出解析:让模型输出更规范

在实际应用中,我们往往需要模型输出结构化的数据,比如列表或 JSON 格式。LangChain 提供了强大的输出解析功能,让模型的输出更加规范。

列表输出

parser = CommaSeparatedListOutputParser()
format_instructions = parser.get_format_instructions()
template = "列出3种{category}:\n{format_instructions}"
prompt = ChatPromptTemplate.from_template(template)
chain = prompt | chat | parser
result = chain.invoke({"category": "编程语言", "format_instructions": format_instructions})

通过列表解析器,我们可以让模型输出一个清晰的列表。这种输出方式在信息整理和提取场景中非常实用。

运行结果如下:(模型不同运行结果也不同)

['Python', 'JavaScript', 'Java']

JSON 输出

class Recipe(BaseModel):name: str = Field(description="菜谱名称")steps: list[str] = Field(description="制作步骤")parser = JsonOutputParser(pydantic_object=Recipe)
prompt = ChatPromptTemplate.from_template("生成{cuisine}菜谱,要求:{requirements}\n{format_instructions}"
)
chain = prompt | chat | parser
result = chain.invoke({"cuisine": "川菜","requirements": "辣度适中,包含牛肉","format_instructions": parser.get_format_instructions()
})

JSON 输出解析器可以将模型的输出转化为结构化的 JSON 数据。这种输出方式在需要复杂数据结构的场景中非常有用,比如菜谱生成、任务调度等。

运行结果如下

{'name': '辣味牛肉丝', 'steps': ['将牛肉切成细丝,用料酒、生抽、淀粉和少许盐腌制10分钟。', '将干辣椒剪成小段,蒜切成末,姜切成片。', '锅中放油,油热后放入干辣椒、蒜末和姜片爆香。', '加入腌制好的牛肉丝快速翻炒至变色。', '加入适量的生抽、老抽调色,再加入适量的料酒。', '加入青椒丝和红椒丝继续翻炒。', '最后加入适量的盐、糖、鸡精调味,炒匀后即可出锅。']}

四、工具调用:扩展模型的能力边界

工具调用是智能对话系统的一个重要功能。通过调用外部工具,我们可以扩展模型的能力边界,让它能够处理更多复杂的任务。

@tool
def get_weather(city: str) -> str:"""获取指定城市的天气信息"""return f"{city}:晴,25℃"prompt = ChatPromptTemplate.from_template("查询{city}天气")
chain = prompt | chat.bind_tools([get_weather])
response = chain.invoke({"city": "北京"})

在这段代码中,我们通过调用天气查询工具,让模型能够回答与天气相关的问题。这种工具调用的方式可以大大扩展模型的应用范围。

运行结果如下:(以下运行结果是工具的调用信息)

content='' additional_kwargs={'tool_calls': [{'function': {'arguments': '{"city": "北京"}', 'name': 'get_weather'}, 'id': 'call_-8828734222680606890', 'index': 0, 'type': 'function'}]} response_metadata={'token_usage': {'completion_tokens': 10, 'prompt_tokens': 147, 'total_tokens': 157}, 'model_name': 'glm-4-flash', 'finish_reason': 'tool_calls'} id='run-e2b810e0-c3bc-4ecf-8461-fcf705f04d53-0' tool_calls=[{'name': 'get_weather', 'args': {'city': '北京'}, 'id': 'call_-8828734222680606890', 'type': 'tool_call'}]

总结

输入输出处理是智能对话系统的核心环节,它不仅决定了对话的质量,还影响着用户的体验。通过模板化对话、Few-shot 提示、结构化输出解析和工具调用等技术,我们可以让对话系统变得更加智能、灵活和实用。

未来,我们可以进一步探索以下方向:

  • 更复杂的对话逻辑:结合 RAG 技术,让对话系统能够基于外部数据进行回答。
  • 多模态输入输出:支持图片、语音等多种输入输出形式,让对话系统更加多样化。
  • 情感分析与个性化推荐:通过情感分析技术,让对话系统能够根据用户的情绪提供个性化的建议。

祝我们学习愉快 😊

下一篇:(三)链式工作流构建——打造智能对话的强大引擎

http://www.cadmedia.cn/news/12697.html

相关文章:

  • 工厂 电商网站建设seo整站优化吧
  • 党建反腐倡廉建设网站排名点击软件怎样
  • 华强北附近网站建设地推拉新app推广平台有哪些
  • 网站怎么做引流呢怎样在百度上推广
  • 学校网站制作html西安网站seo工作室
  • 合肥外贸网站建设公司价格b站推广形式
  • 济南品牌网站建设推56论坛
  • flutter 如何做网站印度疫情最新消息
  • 网站手机端做排名靠前域名注册管理机构
  • 门户网站安全建设方案学管理培训班去哪里学
  • 外贸seo网站搭建线上推广方案
  • 阳泉建设公司网站企业推广方式
  • 网站建设域名什么意思太原seo推广
  • wordpress divi 2.5郑州seo外包公司哪家好
  • 淄博微信网站制作线上营销
  • 网站建设图片素材发帖推广平台
  • 怎么用小旋风网站建设教程厦门网站搜索引擎优化
  • 网站策划编辑招聘百度官网地址
  • 石家庄新华区网站建设河南靠谱seo地址
  • 中国企业500强榜单发布网站手机优化
  • 二手市场网站开发平台怎么推广技巧
  • 宁夏建设厅网站seo就业前景
  • 有关应用网站内容企业推广
  • 网站建设 上美天空精准客源引流平台
  • 二手车网站建设论文b2b采购平台
  • 建设视频网站流量营销软文模板
  • 广州技术网站建设知了seo
  • 邵阳县做网站竞价排名服务
  • 网站个人备案网页设计成品源代码
  • asp.net 4.0网站开...阿里网站seo