手把手教你用 FastAPI + LangGraph搭建 AI 工作流
在这篇指南中,你将学习如何将 LangGraph 工作流封装在 FastAPI 中,变成一个生产就绪的 endpoint。
Large Language Models (LLMs) 擅长推理,但现实世界的应用往往需要有状态、多步骤的工作流。这就是 LangGraph 的用武之地——它让你可以通过由 LLM 驱动的节点图来构建智能工作流。

但如果你想把这些工作流暴露为 APIs,让其他应用(或用户)可以调用呢?这时候 FastAPI 就派上用场了——一个轻量级、高性能的 Python Web 框架。
在这篇指南中,你将学习如何将 LangGraph 工作流封装在 FastAPI 中,变成一个生产就绪的 endpoint。
为什么选择 LangGraph + FastAPI?
- • LangGraph:创建多步骤、有状态的 LLM 工作流(例如,多智能体推理、数据处理)。
- • FastAPI:轻松将这些工作流暴露为 REST APIs,以便与 Web 应用、微服务或自动化流水线集成。
- • 结合两者:构建可从任何地方访问的可扩展 AI 智能体。
1. 项目设置
创建一个新项目文件夹并安装依赖:
mkdir langgraph_fastapi_demo && cd langgraph_fastapi_demo
python -m venv .venv
source .venv/bin/activate # 在 Windows 上:.venv\Scripts\activate
pip install fastapi uvicorn langgraph langchain-openai python-dotenv
创建一个 .env 文件来存储你的 API 密钥:
OPENAI_API_KEY=你的_openai_密钥_在此
2. 构建一个简单的 LangGraph 工作流
让我们构建一个简单的 LangGraph,它接收用户的问题并返回 AI 生成的答案。
# workflow.py
from langgraph.graph import StateGraph, START, END
from langchain_openai import ChatOpenAI
from langchain_core.messages import HumanMessage
import os
from dotenv import load_dotenv
load_dotenv()
llm = ChatOpenAI(model="gpt-4o") # 可以切换到 gpt-4o-mini 以降低成本
# 定义状态
defanswer_question(state: dict) -> dict:
user_input = state["user_input"]
response = llm.invoke([HumanMessage(content=user_input)])
return {"answer": response.content}
# 构建图
workflow = StateGraph(dict)
workflow.add_node("answer", answer_question)
workflow.add_edge(START, "answer")
workflow.add_edge("answer", END)
graph = workflow.compile()
这个图:
- • 接收 user_input
- • 将其发送到 GPT-4o
- • 返回 AI 生成的响应
3. 让它生产就绪
在向全世界开放之前,让我们为真实用例加固它。
错误处理与重试
LLM APIs 可能会失败或超时。用 try/except 包装调用:
from tenacity import retry, wait_exponential, stop_after_attempt
@retry(wait=wait_exponential(multiplier=1, min=2, max=10), stop=stop_after_attempt(3))
def safe_invoke_llm(message):
return llm.invoke([HumanMessage(content=message)])
def answer_question(state: dict) -> dict:
user_input = state["user_input"]
try:
response = safe_invoke_llm(user_input)
return {"answer": response.content}
except Exception as e:
return {"answer": f"错误:{str(e)}"}
输入验证
我们不想让别人发送巨大的数据负载。添加 Pydantic 约束:
from pydantic import BaseModel, constr
class RequestData(BaseModel):
user_input: constr(min_length=1, max_length=500) # 限制输入大小
日志记录
添加日志以提高可见性:
import logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
def answer_question(state: dict) -> dict:
logger.info(f"收到输入:{state['user_input']}")
response = safe_invoke_llm(state['user_input'])
logger.info("已生成 LLM 响应")
return {"answer": response.content}
4. 使用 FastAPI 暴露工作流
现在,让我们将这个工作流封装在 FastAPI 中。
# main.py
from fastapi import FastAPI
from workflow import graph, RequestData
app = FastAPI()
@app.post("/run")
async def run_workflow(data: RequestData):
result = graph.invoke({"user_input": data.user_input})
return {"result": result["answer"]}
运行服务器:
uvicorn main:app --reload
5. 测试 API
你可以使用 curl 测试:
curl -X POST "http://127.0.0.1:8000/run" \
-H "Content-Type: application/json" \
-d '{"user_input":"什么是 LangGraph?"}'
或者在浏览器中打开 http://127.0.0.1:8000/docs —— FastAPI 会自动为你生成 Swagger UI!

这个交互式 UI 让你直接在浏览器中测试你的 endpoint。
6. 扩展与部署
为生产环境做准备的几个步骤:
-
• 异步执行:FastAPI 是异步原生的。对于多个 LLM 调用,让函数变成异步的。
-
• 工作进程:使用多进程运行以实现并发:
uvicorn main:app --workers 4 -
• Docker 化:
FROM python:3.11-slim WORKDIR /app COPY . . RUN pip install -r requirements.txt CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] -
• 认证:使用 API 密钥或 JWT tokens 来保护 endpoints(第二部分即将推出)。
结论
通过几个简单的步骤,我们:
- • 构建了一个 LangGraph 工作流
- • 使用 FastAPI 将其暴露为 REST API
- • 添加了生产就绪的功能(验证、重试、日志)
- • 为可扩展的 AI 微服务奠定了基础
这个设置可以支持从聊天机器人到文档处理器再到 AI SaaS 产品的各种应用。
想入门 AI 大模型却找不到清晰方向?备考大厂 AI 岗还在四处搜集零散资料?别再浪费时间啦!2025 年 AI 大模型全套学习资料已整理完毕,从学习路线到面试真题,从工具教程到行业报告,一站式覆盖你的所有需求,现在全部免费分享!
👇👇扫码免费领取全部内容👇👇

一、学习必备:100+本大模型电子书+26 份行业报告 + 600+ 套技术PPT,帮你看透 AI 趋势
想了解大模型的行业动态、商业落地案例?大模型电子书?这份资料帮你站在 “行业高度” 学 AI:
1. 100+本大模型方向电子书

2. 26 份行业研究报告:覆盖多领域实践与趋势
报告包含阿里、DeepSeek 等权威机构发布的核心内容,涵盖:
- 职业趋势:《AI + 职业趋势报告》《中国 AI 人才粮仓模型解析》;
- 商业落地:《生成式 AI 商业落地白皮书》《AI Agent 应用落地技术白皮书》;
- 领域细分:《AGI 在金融领域的应用报告》《AI GC 实践案例集》;
- 行业监测:《2024 年中国大模型季度监测报告》《2025 年中国技术市场发展趋势》。
3. 600+套技术大会 PPT:听行业大咖讲实战
PPT 整理自 2024-2025 年热门技术大会,包含百度、腾讯、字节等企业的一线实践:

- 安全方向:《端侧大模型的安全建设》《大模型驱动安全升级(腾讯代码安全实践)》;
- 产品与创新:《大模型产品如何创新与创收》《AI 时代的新范式:构建 AI 产品》;
- 多模态与 Agent:《Step-Video 开源模型(视频生成进展)》《Agentic RAG 的现在与未来》;
- 工程落地:《从原型到生产:AgentOps 加速字节 AI 应用落地》《智能代码助手 CodeFuse 的架构设计》。
二、求职必看:大厂 AI 岗面试 “弹药库”,300 + 真题 + 107 道面经直接抱走
想冲字节、腾讯、阿里、蔚来等大厂 AI 岗?这份面试资料帮你提前 “押题”,拒绝临场慌!

1. 107 道大厂面经:覆盖 Prompt、RAG、大模型应用工程师等热门岗位
面经整理自 2021-2025 年真实面试场景,包含 TPlink、字节、腾讯、蔚来、虾皮、中兴、科大讯飞、京东等企业的高频考题,每道题都附带思路解析:

2. 102 道 AI 大模型真题:直击大模型核心考点
针对大模型专属考题,从概念到实践全面覆盖,帮你理清底层逻辑:

3. 97 道 LLMs 真题:聚焦大型语言模型高频问题
专门拆解 LLMs 的核心痛点与解决方案,比如让很多人头疼的 “复读机问题”:

三、路线必明: AI 大模型学习路线图,1 张图理清核心内容
刚接触 AI 大模型,不知道该从哪学起?这份「AI大模型 学习路线图」直接帮你划重点,不用再盲目摸索!

路线图涵盖 5 大核心板块,从基础到进阶层层递进:一步步带你从入门到进阶,从理论到实战。

L1阶段:启航篇丨极速破界AI新时代
L1阶段:了解大模型的基础知识,以及大模型在各个行业的应用和分析,学习理解大模型的核心原理、关键技术以及大模型应用场景。

L2阶段:攻坚篇丨RAG开发实战工坊
L2阶段:AI大模型RAG应用开发工程,主要学习RAG检索增强生成:包括Naive RAG、Advanced-RAG以及RAG性能评估,还有GraphRAG在内的多个RAG热门项目的分析。

L3阶段:跃迁篇丨Agent智能体架构设计
L3阶段:大模型Agent应用架构进阶实现,主要学习LangChain、 LIamaIndex框架,也会学习到AutoGPT、 MetaGPT等多Agent系统,打造Agent智能体。

L4阶段:精进篇丨模型微调与私有化部署
L4阶段:大模型的微调和私有化部署,更加深入的探讨Transformer架构,学习大模型的微调技术,利用DeepSpeed、Lamam Factory等工具快速进行模型微调,并通过Ollama、vLLM等推理部署框架,实现模型的快速部署。

L5阶段:专题集丨特训篇 【录播课】

四、资料领取:全套内容免费抱走,学 AI 不用再找第二份
不管你是 0 基础想入门 AI 大模型,还是有基础想冲刺大厂、了解行业趋势,这份资料都能满足你!
现在只需按照提示操作,就能免费领取:
👇👇扫码免费领取全部内容👇👇

2025 年想抓住 AI 大模型的风口?别犹豫,这份免费资料就是你的 “起跑线”!
更多推荐



所有评论(0)