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

英文网站建设 江门sem代运营费用

英文网站建设 江门,sem代运营费用,商丘有哪些网络公司,贵州省住房和城乡建设厅网网站首页本教程将以实际代码案例为基础,带您掌握 LangChain 的核心概念与开发流程。我们将使用 LangChain 0.2.17 和 langchain-openai 0.1.25 版本,结合 DeepSeek 的 deepseek-chat 模型,构建一个完整的意图识别-响应生成系统。结合Jupyter进行实践效…

本教程将以实际代码案例为基础,带您掌握 LangChain 的核心概念与开发流程。我们将使用 LangChain 0.2.17 和 langchain-openai 0.1.25 版本,结合 DeepSeek 的 deepseek-chat 模型,构建一个完整的意图识别-响应生成系统。结合Jupyter进行实践效果更佳。需申请deepseek的API-KEY,充值10元可以玩好久。
在这里插入图片描述

在这里插入图片描述

一、环境准备

# 安装必要依赖
!pip install langchain==0.2.17 langchain-community==0.2.19 langchain-openai==0.1.25

在这里插入图片描述
在这里插入图片描述

二、代码结构解析

1. 核心组件初始化

from langchain_openai import ChatOpenAIllm = ChatOpenAI(model="deepseek-chat",api_key="sk-b247cb47eff84e9694f383c09682xxxx",  # todo 替换deepseek API Key  https://platform.deepseek.com/api_keystemperature=0.7,max_tokens=512,timeout=30,max_retries=3,base_url="https://api.deepseek.com"
)

在这里插入图片描述
按shift+enter进行执行操作。

关键参数说明:

  • model: 指定使用 DeepSeek 的 deepseek-chat 模型
  • temperature: 控制输出随机性(0-1 范围)
  • base_url: DeepSeek API 的基础地址
  • max_retries: 网络重试次数

2. 流程链式构建

(1)意图识别链
intent_prompt = PromptTemplate(input_variables=["input_text"],template="请根据以下输入识别用户意图:{input_text}"
)
intent_chain = intent_prompt | llm

在这里插入图片描述

工作原理:

  • 接收用户原始输入
  • 使用 PromptTemplate 构造标准化提示
  • 通过 | 操作符连接 LLM 生成意图判断
(2)实体提取链
entity_prompt = PromptTemplate(input_variables=["intent", "input_text"],template="根据用户的意图 '{intent}',从以下输入中提取相关实体:{input_text}"
)
entity_chain = entity_prompt | llm

在这里插入图片描述

设计亮点:

  • 动态上下文感知:将前序识别的意图作为输入参数
  • 实体提取的针对性:根据意图调整提取策略(如"北京"在天气查询中是地点实体)
(3)动作确定链
action_prompt = PromptTemplate(input_variables=["intent", "entities"],template="根据意图 '{intent}' 和提取的实体 '{entities}',确定要执行的操作。"
)
action_chain = action_prompt | llm

在这里插入图片描述

实现价值:

  • 将抽象意图转化为可执行操作
  • 支持后续对接实际业务系统(如天气API)
(4)响应生成链
response_prompt = PromptTemplate(input_variables=["action"],template="根据确定的动作 '{action}' 生成用户的响应。"
)
response_chain = response_prompt | llm

在这里插入图片描述

设计目标:

  • 根据具体操作生成自然语言回复
  • 保持对话系统的连贯性

3. 流程整合与执行

sequential_chain = (RunnableLambda(lambda x: {"intent": intent_chain.invoke(x),"input_text": x["input_text"]})| RunnableLambda(lambda x: {**x,"entities": entity_chain.invoke({"intent": x["intent"],"input_text": x["input_text"]})})| RunnableLambda(lambda x: {**x,"action": action_chain.invoke({"intent": x["intent"],"entities": x["entities"]})})| RunnableLambda(lambda x: {**x,"response": response_chain.invoke({"action": x["action"]})})
)

在这里插入图片描述

架构优势:

  • 模块化设计:各环节职责单一,便于维护和扩展
  • 状态传递:通过字典形式传递上下文信息
  • 链式调用:使用 | 符号构建清晰的工作流
  • 渐进式处理:从粗粒度意图识别到细粒度实体提取

三、运行示例与调试

if __name__ == "__main__":input_text = "我想查询北京的天气。"result = sequential_chain.invoke({"input_text": input_text})print("\n最终生成的响应:", result["response"])

在这里插入图片描述
在这里插入图片描述

调试建议:

  1. 添加中间结果打印:
print("意图识别结果:", result["intent"])
print("实体提取结果:", result["entities"])
print("动作决策结果:", result["action"])
  1. 使用 stream() 方法查看推理过程
  2. 通过 with_config() 设置跟踪标识

四、核心概念深入

1. PromptTemplate 的使用技巧

template = """角色:天气助手
任务:分析用户意图
输入:{input_text}
要求:
1. 识别查询/预订/建议等基本类型
2. 用简洁的关键词描述意图
"""

最佳实践:

  • 显式定义角色和任务
  • 使用数字编号列出要求
  • 添加示例提升准确性

2. RunnableLambda 的作用

# 数据转换示例
RunnableLambda(lambda x: {"cleaned_text": preprocess(x["input_text"]),**x
})

应用场景:

  • 数据预处理
  • 上下文增强
  • 结果后处理
  • 状态管理

3. 错误处理机制

建议添加异常处理:

try:result = sequential_chain.invoke({"input_text": input_text})
except Exception as e:print(f"处理出错:{e}")# 添加默认响应

五、扩展与优化建议

1. 性能优化

  • 使用缓存机制:langchain.cache.set_cache(...)
  • 并行处理:对独立环节使用 map() 操作
  • 批量处理:合并相似请求减少API调用次数

2. 功能扩展

  • 添加记忆模块:ConversationBufferMemory
  • 集成数据库查询:通过SQLDatabase组件
  • 增加多轮对话支持

3. 监控与评估

  • 使用 CallbackManager 跟踪调用过程
  • 添加日志记录:记录每个环节的耗时
  • 建立评估指标:准确率、响应时间等

六、常见问题排查

问题类型解决方案
API 调用失败检查 API 密钥和 base_url 是否正确
响应不准确优化 Prompt 模板,添加更多示例
执行超时调整 timeout 参数,简化模型输出
内存不足减少 max_tokens 参数值

七、总结

通过本案例的学习,您已经掌握了:

  1. LangChain 的核心组件使用方法
  2. 如何构建可扩展的对话流程
  3. Prompt 工程的基本实践
  4. 与第三方大模型 API 的集成技巧

建议下一步尝试:

  • 添加用户身份验证模块
  • 实现多意图并行处理
  • 开发 Web 交互界面

完整代码已通过验证,可直接在您的项目中使用。记得替换 API 密钥并根据业务需求调整 Prompt 模板。

源码已上传云盘:https://pan.quark.cn/s/3a3378f9e61b

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

相关文章:

  • 网站建设的制度精准引流获客软件
  • 在网站上做漂浮北京网站优化排名
  • 个人简历模板免费下载网站电商seo引流
  • wordpress display_name西安seo关键字优化
  • 网站建设实训结论与分析总结seo教程优化
  • 网站在工信部备案如何做上海aso
  • 做动漫主题的网站百度24小时人工客服电话
  • 上海免费网站建设品牌河北软文搜索引擎推广公司
  • asp网站本地测试修改视频教程seo优化培训课程
  • 自己做影视网站整站seo排名要多少钱
  • 网页前端是什么工作梅花seo 快速排名软件
  • 免费网站加速服务中国十大门户网站排行
  • 甜品店网站建设百度搜索seo优化技巧
  • 乐山做网站东莞营销网站建设推广
  • 上门做网站免费推广论坛
  • 快速建立平台网站开发建站教程详解数据分析师报考条件
  • 旅游网站营销sem分析
  • 做网站找哪家公司好流量精灵app
  • 武冈企业建站网络舆情案例分析
  • 基本的网站建设知识东莞seo软件
  • 自己做的网站竞价优化免费大数据查询
  • 网络游戏举报投诉官网12318网站页面seo
  • 怀化医保网站上海优化公司
  • 优化教程网站推广排名搜索引擎推广步骤
  • wap网站e4a做app网盘手机app官网下载
  • html代码表示什么青岛网站优化公司哪家好
  • 极捷号网站建设技术培训学校机构
  • 哪些网站做机票酒店有优势怎样制作网站教程
  • 男生必备的浏览器苏州优化收费
  • 有个网站做彩盒的百度官网