Skip to main content

设置

LangChain 文档由两个部分组成:

  1. 主要文档:托管在 python.langchain.com, 这个全面的资源作为主要的用户文档。它涵盖了广泛的主题,包括教程、用例、集成等,提供了关于使用 LangChain 构建的广泛指导。 该文档的内容位于单体库的 /docs 目录中。
  2. 代码内文档:这是代码库本身的文档,也用于生成外部的 API 参考。 API 参考的内容通过扫描代码库中的文档字符串自动生成。因此,我们要求开发者对他们的代码进行良好的文档编写。

API 参考 主要由 sphinx 从代码中自动生成,并由 Read the Docs 托管。

我们感谢对文档的所有贡献,无论是修复错别字、添加新的教程或示例,还是在主要文档或 API 参考中。

与代码检查类似,我们认识到文档编写可能会令人烦恼。如果您不想这样做,请联系项目维护者,他们可以帮助您。我们不希望这成为良好代码贡献的障碍。

📜 主要文档

主要文档的内容位于单一代码库的 /docs 目录中。

文档使用 ipython 笔记本(.ipynb 文件)和 markdown(.mdx 文件)的组合进行编写。笔记本被转换为 markdown,然后使用 Docusaurus 2 进行构建。

欢迎对主要文档进行贡献!🥰

修改文档后:

  1. 运行 linting 和格式化命令(见下文),以确保文档格式良好且无错误。
  2. 可选择在本地构建文档,以验证更改是否符合预期。
  3. 提交包含更改的拉取请求。
  4. 您可以通过点击拉取请求“对话”页面上的 查看部署访问预览 按钮,预览和验证更改是否符合您的要求。这将带您查看文档更改的预览。

⚒️ 本地检查和构建文档

在编写完文档后,您可能希望本地检查和构建文档,以确保其外观良好且没有错误。

如果您无法在本地构建也没关系,因为您可以在拉取请求页面上查看文档的预览。

monorepo 根目录中,运行以下命令以安装依赖项:

poetry install --with lint,docs --no-root

构建

构建文档的代码位于单一代码库的 /docs 目录中。

在以下命令中,前缀 api_ 表示这些是针对 API 参考的操作。

在构建文档之前,清理构建目录总是个好主意:

make docs_clean
make api_docs_clean

接下来,您可以按照以下说明构建文档:

make docs_build
make api_docs_build
tip

make api_docs_build 命令耗时较长。如果您只是在对 API 文档进行外观上的修改并想查看效果,请使用:

make api_docs_quick_preview

这将仅构建 API 参考的小部分。

最后,运行链接检查器以确保所有链接有效:

make docs_linkcheck
make api_docs_linkcheck

代码检查和格式化

主文档是从 monorepo 根目录 进行代码检查的。要检查主文档,请从该目录运行以下命令:

make lint

如果您有格式相关的错误,可以通过以下命令自动修复它们:

make format

⌨️ 代码内文档

代码内文档主要由 sphinx 根据代码自动生成,并由 Read the Docs 托管。

为了使 API 参考有用,代码库必须有良好的文档。这意味着所有函数、类和方法都应该有一个文档字符串,解释它们的功能、参数是什么以及返回值是什么。这是一种良好的实践,但对于 LangChain 来说尤其重要,因为 API 参考是开发人员理解如何使用代码库的主要资源。

我们通常遵循 Google Python Style Guide 的文档字符串格式。

以下是一个文档良好的函数示例:


def my_function(arg1: int, arg2: str) -> float:
"""This is a short description of the function. (It should be a single sentence.)

This is a longer description of the function. It should explain what
the function does, what the arguments are, and what the return value is.
It should wrap at 88 characters.

Examples:
This is a section for examples of how to use the function.

.. code-block:: python

my_function(1, "hello")

Args:
arg1: This is a description of arg1. We do not need to specify the type since
it is already specified in the function signature.
arg2: This is a description of arg2.

Returns:
This is a description of the return value.
"""
return 3.14

Linting and Formatting

代码中的文档是从被记录的包的目录中进行 lint 检查的。

例如,如果您正在处理 langchain-community 包,您需要将工作目录更改为 langchain-community 目录:

cd [root]/libs/langchain-community

如果您尚未设置包的虚拟环境,请进行设置。

安装包的依赖项。

poetry install --with lint

然后您可以运行以下命令来 lint 和格式化代码中的文档:

make format
make lint

验证文档更改

在将文档更改推送到仓库后,您可以通过单击拉取请求“对话”页面上的 View deploymentVisit Preview 按钮来预览和验证更改是否符合您的预期。 这将带您查看文档更改的预览。 该预览由 Vercel 创建。


此页面是否有帮助?


您还可以留下详细的反馈 在 GitHub 上