写点什么

Langchain 快速入门: 一行代码实现流式输出

  • 2025-04-20
    北京
  • 本文字数:1487 字

    阅读完需:约 5 分钟

Langchain快速入门: 一行代码实现流式输出

1. 什么是 LangChain?

  • 定义:LangChain 是一个用于构建大语言模型(LLM)应用的开发框架,支持链式调用、记忆管理、工具集成等。

  • 核心功能:

  • 连接 LLM(如 GPT-4、DeepSeek)与外部数据/工具

  • 构建多步骤任务的工作流(如问答、摘要、数据分析)

  • 支持对话记忆和上下文管理

2. 核心组件

  • Models(模型),LangChain 支持几乎所有的主流 LLM

  • Prompts(提示词),-态生成提示模板

  • Chains(任务链),多步骤任务串联

  • Memory(记忆),管理对话历史,甚至支持没有记忆能力的 LLM

  • Agents(智能代理),能自动选择工具执行相应的任务

3. 为什么选择 LangChain?



4. 实战案例

安装

pip install langchainpip install -U langchain-deepseek
复制代码

简单 chat 案例

from langchain.chat_models import init_chat_modelfrom langchain_core.messages import SystemMessage, HumanMessagefrom langchain_core.prompts import ChatPromptTemplate
# 这里只是示意,工程中建议使用getpass.getpass()来获取API密钥api_key = "your DeepSeek API key"api_base = "https://api.deepseek.com/"
def simpleDemo(): """ 简单的Langchain使用示例 """
model = init_chat_model( model="deepseek-chat", api_key=api_key, api_base=api_base, temperature=0.8, max_tokens=1024, model_provider="deepseek", )
messages = [ SystemMessage("Translate the following English text to Chinese"), HumanMessage("Hello, how are you?") ]
response = model.invoke(messages) print(response)
if __name__ == "__main__": simpleDemo()
复制代码


运行结果


# python ./langchain_demo.pyquestion: Hello, how are you?你好,最近怎么样?
复制代码

流式交互

你在使用各种 LLM 的时,看见 LLM 一个字一个字往外蹦字,是不是都惊呆了!别急,用 LangChain 十分容易的实现这种功能


def streamDemo():    """    流式输出的Langchain使用示例    """    model = init_chat_model(        model="deepseek-chat",        api_key=api_key,        api_base=api_base,        temperature=0.8,        max_tokens=1024,        model_provider="deepseek",    )
messages = [ SystemMessage("Translate the following English text to Chinese"), HumanMessage("Hello, how are you?") ]
for token in model.stream(messages): print(token.content, end="", flush=True) print("\n\n")
if __name__ == "__main__": streamDemo()
复制代码



是不是代码非常简单!赶快换上你的 API key 体验一下吧!

Prompt 模板

def promptTemplateDemo():    """    使用PromptTemplate的Langchain使用示例    """    model = init_chat_model(        model="deepseek-chat",        api_key=api_key,        api_base=api_base,        temperature=0.8,        max_tokens=1024,        model_provider="deepseek",    )
prompt = ChatPromptTemplate.from_messages([ SystemMessage("Translate the following English text to {language}"), HumanMessage("{text}") ])
messages = prompt.invoke({"language": "Chinese", "text":"Hello, how are you?"}) response = model.invoke(messages) print(response)
if __name__ == "__main__": promptTemplateDemo()
复制代码

5. 简单总结

LangChain 大幅降低了 LLM 应用开发门槛,确实是相当简单易用。并且为我们快速替换 LLM 提供了非常遍历的基础。

发布于: 刚刚阅读数: 4
用户头像

路虽远,行则必至;事虽难,做则必成 2020-07-21 加入

还未添加个人简介

评论

发布
暂无评论
Langchain快速入门: 一行代码实现流式输出_Python_AI时代的一滴水_InfoQ写作社区