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 ChatOpenAI

llm = 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 ChatPromptTemplate

system_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 仪表板 查看详细分析报告。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python测试之道

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值