2026年LangChain + DeepSeek 全流程开发详解

LangChain + DeepSeek 全流程开发详解Github 资料项目合集 50 个 AI 开源项目合集 80 款 AI 开源合集 戳上方蓝字 牛皮糖不吹牛 关注我 大家好 我是牛皮糖 最近看了很多的 Agent 项目 如果想要自己开发发现还是 Langchain 框架最适合我这样的小白 记录一下今天跑的一个 Demo LangChain 旨在简化 AI 应用开发 通过标准化接口将 LLM 与外部系统 数据源 工具

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



• Github 资料项目合集

• 50个 AI 开源项目合集• 80 款AI 开源合集

* 戳上方蓝字“牛皮糖不吹牛”关注我

大家好,我是牛皮糖!

最近看了很多的 Agent 项目, 如果想要自己开发发现还是 Langchain 框架最适合我这样的小白。记录一下今天跑的一个 Demo

LangChain 旨在简化 AI 应用开发,通过标准化接口将 LLM 与外部系统(数据源、工具、向量数据库等)无缝连接,帮助开发者构建可扩展、模块化的智能应用。 主要功能如下

  • • Prompt templates:Prompt templates 是不同类型提示的模板。例如“ chatbot ”样式模板、ELI5 问答等
  • • LLMs:像 GPT-3、BLOOM 等大型语言模型
  • • Agents:Agents 使用 LLMs 决定应采取的操作。可以使用诸如网络搜索或计算器之类的工具,并将所有工具包装成一个逻辑循环的操作。
  • • Memory:短期记忆、长期记忆。
  • • LangSmith:用于监控、调试和评估 LLM 应用性能(如跟踪 Agent 轨迹)。
  • • LangGraph:构建长期记忆和复杂状态控制的 Agent 工作流(被 LinkedIn、Uber 等企业采用)。
  • • LangGraph Platform:可视化部署和扩展 Agent 的云平台。

安装 LangChain 只有官方只支持Python 和 js 两个版本,我用的是Python 版本。

安装调用基础的依赖

 pip install -U langchain # 安装最新版

pip install -U langchain-core langchain-community langchain-openai # 安装核心库 pip install python-dotenv

使用新版 LangChain 语法(兼容 DeepSeek)

from langchain_core.prompts import ChatPromptTemplate 

from langchain_openai import ChatOpenAI # 虽然叫 OpenAI,但可兼容 DeepSeek from langchain.memory import ConversationBufferMemory from langchain_core.vectorstores import InMemoryVectorStore from langchain_openai import OpenAIEmbeddings

向量数据库和嵌入

embeddings = OpenAIEmbeddings(model=“text-embedding-3-large”) vector_store = InMemoryVectorStore(embeddings)

初始化DeepSeek LLM

# 创建提示模板

prompt = PromptTemplate(

input_variables=[“product”],

template=“为{product}写一个创意广告文案:”,

)

注意:这里使用 ChatOpenAI 但指向 DeepSeek 的 API

llm = ChatOpenAI(

api_key="sk-xxxxxx", base_url="https://api.deepseek.com/v1", # 注意 /v1 路径 model="deepseek-chat" 

)

新版链式调用

prompt = ChatPromptTemplate.from_template(“{input}”) chain = prompt | llm # 使用管道操作符替代旧版 LLMChain

调用流式返回

for chunk in chain.stream({“input”: “AI编程助手”}):

print(chunk.content, end="", flush=True) 

下面是整体的流程简介

from langchain_core.prompts import ChatPromptTemplate from langchain_openai import ChatOpenAI from langchain.memory import ConversationBufferMemory from langchain_core.vectorstores import InMemoryVectorStore from langchain_openai import OpenAIEmbeddings

这段导入语句展示了 LangChain 的模块化架构设计:

  • langchain_core:包含框架基础类和接口
  • langchain_openai:提供与 OpenAI 兼容的接口(可适配 DeepSeek)
  • langchain:集成高级功能如内存管理
版本提示:建议使用 langchain-core ≥0.1.0 和 langchain-openai ≥0.0.5
embeddings = OpenAIEmbeddings(model=“text-embedding-3-large”)

关键参数解析:

  • model=“text-embedding-3-large”:指定嵌入模型版本
  • • 虽然使用 OpenAIEmbeddings 类,但可通过 base_url 重定向到 DeepSeek
  • • 实际部署时应替换为 DeepSeek 的嵌入模型(如可用)

技术原理:

  • • 将文本转换为 3072 维向量(text-embedding-3-large 的默认维度)
  • • 支持余弦相似度等向量运算
vector_store = InMemoryVectorStore(embeddings)

特性说明:

  • InMemoryVectorStore:轻量级内存向量数据库
  • • 优点:零配置、快速原型开发
  • • 缺点:重启后数据丢失,不适合生产环境
  • • 生产替代方案:from langchain_community.vectorstores import Chroma
    vector_store = Chroma.from_documents(docs, embeddings)

llm = ChatOpenAI( 
api_key="sk-xxxxx", base_url="https://api.deepseek.com/v1", model="deepseek-chat" 

)

关键配置项:

安全建议:

import os llm = ChatOpenAI( 
api_key=os.getenv("DEEPSEEK_API_KEY"), base_url="https://api.deepseek.com/v1" 

)

prompt = ChatPromptTemplate.from_template(“{input}”)

模板系统进阶用法:

from langchain_core.prompts import ( 
SystemMessagePromptTemplate, HumanMessagePromptTemplate 

)

prompt = ChatPromptTemplate.from_messages([

SystemMessagePromptTemplate.from_template("你是一个{role}"), HumanMessagePromptTemplate.from_template("{input}") 

])

chain = prompt | llm

管道操作符 (|) 的等效实现:

from langchain_core.runnables import RunnableSequence chain = RunnableSequence(first=prompt, last=llm)

扩展链示例(带记忆):

from langchain_core.runnables import RunnablePassthrough 

memory = ConversationBufferMemory() chain = (

RunnablePassthrough.assign( history=memory.load_memory_variables ) | prompt | llm 

)

for chunk in chain.stream({“input”: “AI编程助手”}): 
print(chunk.content, end="", flush=True)

技术细节:

  • chunk 对象结构:class AIMessageChunk:
    content: str
    additional_kwargs: dict




  • • 网络优化:使用 Server-Sent Events (SSE) 协议
  • • 延迟对比:流式 vs 非流式




llm = ChatOpenAI( ..., max_retries=3, timeout=30.0, streaming=True 

)

from langsmith import Client 

client = Client() client.create_feedback(

run_id="...", key="accuracy", score=0.9 

)

from tenacity import ( 
retry, stop_after_attempt, wait_exponential 

)

@retry(

stop=stop_after_attempt(3), wait=wait_exponential(multiplier=1, min=4, max=10) 

) def safe_invoke(input_text):

return chain.invoke({"input": input_text})

通过上面内容完成了基础的Python调用介绍

·················END·················


关于AI工具

Github开源文本转语音神器Spark-TTS开源了,克隆声音仅需3秒?

github开源B站UP主都在用的下载神器!Cobalt让你轻松搬运高清素材!

Github 26k Stars 开源换脸神器

Github 开源无代码的 Web 数据提取平台,2分钟内训练机器人自动抓取网页数据

每日更新,期待与你一起成长

欢迎围观副业知识星球

https://t.zsxq.com/Q0Gmu (二维码自动识别)

本文使用 文章同步助手 同步
小讯
上一篇 2026-04-06 16:52
下一篇 2026-04-06 16:50

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/220315.html