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

LangChain + LangSmith + DeepSeek 入门实战:构建代码生成助手

本文基于 Jupyter Notebook 实践代码,结合 LangChain、LangSmith 和 DeepSeek 大模型,手把手演示如何构建一个代码生成助手,并实现全流程追踪与优化。


一、环境准备与配置

1. 安装依赖

pip install langchain langchain_openai

2. 设置环境变量(Jupyter 中运行)

请注意,LangSmith 不是必需的,但它很有帮助。如果您确实想使用 LangSmith,请在LangSmith注册后,确保设置环境变量以开始记录跟踪。当我们使用 LLM 构建 AI 智能体应用程序时,LangSmith 可以帮助你理解和改进它们。它就像一个仪表板,显示应用程序内部发生的情况。
在这里插入图片描述

# 启用 LangSmith 跟踪
true=True
LANGSMITH_TRACING=true
LANGSMITH_ENDPOINT="https://api.smith.langchain.com"
LANGSMITH_API_KEY="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"
LANGSMITH_PROJECT="pr-untimely-house-95"# 配置 DeepSeek API
os.environ["DEEPSEEK_API_KEY"] = "sk-e3f022d1746f415c9b0f4bc9a52a4xxx"  # todo 调整为自己的api_key

二、集成 DeepSeek 大模型

1. 初始化模型客户端

from langchain_openai import ChatOpenAIllm = ChatOpenAI(model="deepseek-chat",api_key=os.getenv("DEEPSEEK_API_KEY"),temperature=0.7,max_tokens=512,timeout=30,max_retries=3,base_url="https://api.deepseek.com"
)# 测试调用
llm.invoke("hello world")

输出示例
在这里插入图片描述


三、构建提示模板系统

1. 定义结构化提示模板

from langchain_core.prompts import ChatPromptTemplatesystem_template = "将以下用户输入的信息转化为{language}代码"
prompt_template = ChatPromptTemplate.from_messages([("system", system_template), ("user", "{text}")]
)

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

2. 生成具体提示内容

输出示例

Content: 将以下用户输入的信息转化为python代码
Content: 请帮我写一个冒泡算法

3. 转换为消息格式

prompt.to_messages()

输出示例


四、执行链式调用与结果生成

1. 调用 DeepSeek 生成代码

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

输出示例(模型生成结果)

在这里插入图片描述


五、LangSmith 全流程监控

1. 自动追踪功能

  • 所有调用链(Prompt → LLM → Output)将自动上传至 LangSmith 仪表板
  • 可查看:
    • 调用树状结构
    • 每个步骤耗时
    • Token 消耗统计
    • 中间输出结果

2. 项目管理

  • 所有运行记录归类到 pr-untimely-house-95 项目
  • 支持版本对比、性能分析和团队协作

完整代码与调试日志已通过 LangSmith 实现全流程追踪,您可以通过 LangSmith 仪表板 查看详细分析报告。

相关文章:

  • Tomcat 安装和配置
  • 定位触发DMA2_Stream1_IRQHandler中断的具体原因简述
  • Jenkins构建时出现报错`ERROR: Failed to install JDK. Exit code=2`的终极解决方案
  • 深入理解Optional:处理空指针异常
  • 造成服务器重启的原因都有哪些?
  • RKNN开发环境搭建2-RKNN Model Zoo 环境搭建
  • 游戏盾的功能是什么
  • 力扣-35.搜索插入位置
  • 科伦药业:从“生命袋”突围到抗衰老“新贵” 硬核创新铸就医药标杆
  • 华为智选携手IAM:突破技术边界,重塑智慧健康家居新时代
  • LLMs 系列实操科普(1)
  • linux下安装elasticsearch及ik分词器
  • TripGenie:畅游济南旅行规划助手:个人工作纪实(二十三)
  • Niushop商城系统
  • 【PX4飞控】mavros gps相关话题分析,经纬度海拔获取方法,卫星数锁定状态获取方法
  • Sass具有超能力的CSS预处理器
  • 中山大学GaussianFusion:首个将高斯表示引入端到端自动驾驶多传感器融合的新框架
  • 【渲染】Unity-分析URP的延迟渲染-DeferredShading
  • 基于大模型预测原发性急性闭角型青光眼的技术方案研究大纲
  • 【若依】框架项目部署笔记
  • wordpress自动加内链/网站seo课设
  • 建站平台塔山双喜/最好的免费信息发布平台
  • 北京网站制作建设公司/大型网站制作
  • 室内设计公司的运营模式/seo关键词优化最多可以添加几个词
  • 国外自助建站/收录之家
  • 怎么做淘宝网站赚钱吗/企业站seo价格