快速入门 - 本地开发
要运行文档的本地预览:http://localhost:3000 启动支持热重载的开发服务器。编辑 src/ 中的文件,立即查看更改。
前置条件
前置条件
编辑文档
在 GitHub 上快速编辑
在 GitHub 上快速编辑
对于拼写错误或小改动,无需本地设置即可直接在 GitHub 上编辑:
- 点击任意页面底部的在 GitHub 上编辑本页。
- Fork 到您的个人账户。
- 在 GitHub 的网页编辑器中进行更改。
- 创建 Pull Request。
只编辑
src/ 中的文件——build/ 目录是自动生成的。创建可分享的预览构建(仅限 LangChain 团队)
创建可分享的预览构建(仅限 LangChain 团队)
当您创建或更新 PR 时,会自动生成一个预览分支/ID。PR 上会留下一条包含该 ID 的评论。
- 从评论中复制预览分支的 ID
- 在 Mintlify 仪表板中,点击创建预览部署
- 输入预览分支的 ID 并点击创建部署
- 选择预览并点击访问以查看
运行质量检查
提交更改前,请确保您的代码通过格式化和代码检查:README 中的可用命令部分。
文档类型
所有文档属于以下四类之一:在适用的情况下,所有文档必须同时包含 Python 和 JavaScript/TypeScript 内容。更多详情,请参阅同时提供 Python 和 JavaScript/TypeScript 内容部分。
操作指南
操作指南是面向知道自己想要完成什么的用户的任务导向说明。操作指南的示例位于 LangChain 和 LangGraph 标签页上。特征
特征
- 任务导向:专注于特定任务或问题
- 逐步说明:将任务分解为更小的步骤
- 实践性强:提供具体的示例和代码片段
技巧
技巧
- 专注于如何而非为什么
- 使用具体的示例和代码片段
- 将任务分解为更小的步骤
- 链接到相关概念指南和参考资料
概念指南
概念指南抽象地涵盖核心概念,提供深层理解。特征
特征
- 以理解为中心:解释事物为何如此运作
- 宏观视角:比其他类型有更高、更广的视角
- 设计导向:解释决策和权衡
- 上下文丰富:使用类比和比较
技巧
技巧
- 专注于**“为什么”**而非”如何”
- 提供功能使用不一定必需的补充信息
- 可以使用类比并引用替代方案
- 避免掺入过多参考内容
- 链接到相关教程和操作指南
参考
参考文档包含详细的低级信息,准确描述存在哪些功能以及如何使用它们。 好的参考应该:- 描述存在什么(所有参数、选项、返回值)
- 全面且结构清晰,便于查找
- 作为技术细节的权威来源
贡献参考文档
贡献参考文档
请参阅 Python 参考文档贡献指南。
LangChain 参考最佳实践
LangChain 参考最佳实践
- 保持一致;遵循供应商特定文档的现有模式
- 包含基本用法(代码片段)和常见边界情况/失败模式
- 注明功能需要特定版本的情况
何时创建新参考文档
何时创建新参考文档
- 新集成或供应商需要专用参考页面
- 复杂的配置选项需要详细说明
- API 更改引入了新参数或行为
- 社区经常询问特定功能的问题
教程
教程是更长篇幅的逐步指南,在自身基础上不断深入,引导用户完成特定的实践活动以建立理解。教程通常位于学习标签页上。通常情况下,我们不合并来自外部贡献者的新教程,除非有迫切需求。如果您认为文档中缺少某个主题或覆盖不够充分,请提交新 Issue。
特征
特征
- 实践性:专注于构建理解的实践活动。
- 逐步说明:将活动分解为更小的步骤。
- 实操性强:提供顺序的、可运行的代码片段。
- 补充性:提供功能使用不一定必需的额外上下文和信息。
技巧
技巧
- 如果用户按顺序执行步骤,代码片段应该是顺序的且可运行的。
- 为活动提供一些上下文,但链接到相关概念指南和参考资料以获取更详细的信息。
写作规范
参考文档有不同的标准——详情请参阅参考文档贡献指南。
Mintlify 组件
使用 Mintlify 组件提升可读性:- 标注框
- 结构
- 代码
<Note>用于有用的补充信息<Warning>用于重要注意事项和破坏性更改<Tip>用于最佳实践和建议<Info>用于中性的上下文信息<Check>用于成功确认
页面结构
每个文档页面必须以 YAML 前言开头:同时提供 Python 和 JavaScript/TypeScript 内容
所有文档应尽可能同时使用 Python 和 JavaScript/TypeScript 编写。为此,我们使用自定义内联语法来区分应出现在一种或两种语言中的部分:/oss/python/concepts/foo.mdx 和 /oss/javascript/concepts/foo.mdx 生成两个输出(每种语言一个)。每个输出页面都需要添加到 /src/docs.json 文件中以包含在导航中。
我们不希望缺乏一致性阻碍贡献。如果某个功能仅在一种语言中可用,在另一种语言跟上之前,仅在该语言中有文档是可以的。在这种情况下,请包含一条说明该功能在另一种语言中尚不可用的注释。如果您需要在 Python 和 JavaScript/TypeScript 之间转换内容,请在社区 Slack 中提问或在您的 PR 中标记维护者。
质量标准
通用准则
避免重复
避免重复
涵盖相同内容的多个页面难以维护且会造成混淆。每个概念或功能应只有一个权威页面。链接到其他指南,而不是重新解释。
频繁链接
频繁链接
文档各部分并非孤立存在。频繁链接到其他部分,让用户了解不熟悉的主题。这包括链接到 API 参考和概念部分。
保持简洁
保持简洁
采用少即是多的方法。如果另一个部分有好的解释,链接到它而不是重新解释,除非您的内容提供了新的角度。
可访问性要求
确保文档对所有用户都可访问:- 使用标题和列表构建易于扫描的内容结构
- 使用具体的、可操作的链接文本,而不是”点击这里”
- 为所有图片和图表包含描述性的替代文本
交叉引用
使用一致的交叉引用将文档与 API 参考文档连接起来。 从文档到 API 参考: 使用@[] 语法链接到 API 参考页面:
@[ChatAnthropic] 会成为 Python 或 JS API 参考页面的链接,具体取决于正在构建哪个版本的文档,**但前提是 link_map.py 文件中存在对应条目!**详情请参阅下方说明。
自动链接的工作原理
自动链接的工作原理
@[] 语法由 handle_auto_links.py 处理。它在 link_map.py 中查找链接键,该文件包含 Python 和 JavaScript 范围的字典映射。支持的格式:| 语法 | 结果 |
|---|---|
@[ChatAnthropic] | 以 “ChatAnthropic” 为显示文本的链接 |
@[`ChatAnthropic`] | 以 `ChatAnthropic`(代码格式)为文本的链接 |
@[text][ChatAnthropic] | 以 “text” 为文本,ChatAnthropic 为链接映射中的键的链接 |
\@[ChatAnthropic] | 转义:渲染为字面量 @[ChatAnthropic](无链接——本页正在使用的方式!) |
- 打开
pipeline/preprocessors/link_map.py - 在
LINK_MAPS中的适当范围(python或js)添加条目 - 键是在
@[key]或@[text][key]中使用的链接名称,值是相对于参考主机的路径
README 了解从 API 参考存根链接到 Python OSS 文档的更多信息。具体请参阅 mkdocstrings 交叉引用链接语法。
获取帮助
我们的目标是拥有尽可能简单的开发者设置。如果您在设置过程中遇到任何困难,请在社区 Slack 中提问或发布论坛帖子。内部团队成员可以在 #documentation Slack 频道中联系。将这些文档连接到 Claude、VSCode 等,通过 MCP 获取实时解答。

