应用结构¶
概述¶
一个LangGraph应用程序由一个或多个图(graph)组成,还包括一个LangGraph API配置文件(langgraph.json
)、一个指定依赖关系的文件以及一个可选的环境变量文件(.env)。
本指南展示了典型的LangGraph应用程序结构,并说明了如何指定使用LangGraph平台部署LangGraph应用程序所需的信息。
关键概念¶
使用LangGraph平台部署时,应提供以下信息:
- 一个LangGraph API配置文件 (
langgraph.json
),该文件指定了应用程序所需的依赖项、图谱和环境变量。 - 实现应用程序逻辑的图谱。
- 指定运行应用程序所需依赖项的文件。
- 应用程序运行所需的环境变量。
在翻译过程中,保持了原文的专业术语和格式,并正确处理了anchor锚点的翻译。
文件结构¶
以下是Python和JavaScript应用程序目录结构的例子:
Note
LangGraph应用程序的目录结构会根据编程语言和包管理器的不同而有所不同。
配置文件¶
langgraph.json
文件是一个 JSON 文件,用于指定部署 LangGraph 应用程序所需的依赖项、图、环境变量和其他设置。
该文件支持以下信息的指定:
键 | 描述 |
---|---|
dependencies |
必需。LangGraph API 服务器的依赖项数组。依赖项可以是以下之一:(1) "." ,表示查找本地 Python 包,(2) pyproject.toml 、setup.py 或 requirements.txt 文件在应用目录 "./local_package" 中,或 (3) 包名。 |
graphs |
必需。从图 ID 到定义编译后的图或生成图函数的路径的映射。示例:
|
env |
.env 文件的路径或环境变量与其值的映射。 |
python_version |
3.11 或 3.12 。默认为 3.11 。 |
pip_config_file |
pip 配置文件的路径。 |
dockerfile_lines |
在从父镜像导入后添加到 Dockerfile 的额外行数组。 |
提示
LangGraph CLI 默认使用当前目录中的配置文件 langgraph.json。
示例¶
- 依赖项涉及一个自定义的本地包和
langchain_openai
包。 - 从文件
./your_package/your_file.py
加载单个图,并使用变量variable
。 - 环境变量从
.env
文件加载。
依赖项¶
一个LangGraph应用程序可能依赖于其他的Python包或JavaScript库(取决于应用程序编写所使用的编程语言)。
通常需要指定以下信息以正确设置依赖项:
- 目录中的一个文件,该文件指定了依赖项(例如,
requirements.txt
,pyproject.toml
或package.json
)。 - 在LangGraph配置文件中使用
dependencies
键来指定运行LangGraph应用程序所需的依赖项。 - 可以使用LangGraph配置文件中的
dockerfile_lines
键来指定任何额外的二进制文件或系统库。
图表¶
使用 graphs
关键字在LangGraph配置文件中指定将在部署的LangGraph应用程序中可用的图表。
您可以在配置文件中指定一个或多个图表。每个图表通过名称(应唯一)和路径来标识,该路径可以指向:(1) 编译后的图表或 (2) 定义图表的函数。
环境变量¶
如果您在本地工作时使用了部署好的LangGraph应用程序,您可以在LangGraph配置文件的env
键中配置环境变量。
对于生产部署,您通常希望在部署环境中配置环境变量。
相关资源¶
如需更多信息,请参阅以下资源:
- 应用结构的操作指南。