跳到主要内容

Notion

要在 Langflow 中使用 Notion 组件,您首先需要创建一个 Notion 集成并为其配置必要的功能。本指南将引导您完成设置 Notion 集成并授予其访问 Notion 数据库权限的过程,然后提供两个使用 Notion 组件的流示例。

设置 Notion 应用

要创建 Notion 应用,您需要满足以下条件:

  • 一个拥有您想要使用集成的工组区访问权限的 Notion 账号。
  • 在 Notion 工作区中拥有创建和管理集成的管理员权限。

创建 Notion 集成

  1. 前往 Notion Integrations 页面。
  2. 点击 New Integration
  3. 输入集成名称,然后选择您想要使用该集成的工组区。
  4. 可选:根据您的需求启用 必要的 Notion 集成功能
  5. 点击 Submit 以创建集成。

配置集成功能

创建集成后,您需要配置其功能,以定义它可以执行的操作以及可以访问的数据。

  1. 在集成设置页面中,进入 Capabilities 选项卡。
  2. 为您的集成启用所需的功能。例如:
    • 如果您的集成需要从 Notion 读取数据,请启用 "Read content" 功能。
    • 如果您的集成需要向 Notion 创建新内容,请启用 "Insert content" 功能。
    • 如果您的集成需要更新 Notion 中的现有内容,请启用 "Update content" 功能。
  3. 根据集成的要求配置用户信息访问级别。
  4. 保存更改。

获取集成令牌

注意

您的集成令牌是敏感信息。请务必确保其安全,切勿公开分享。请将其安全地存储在 Langflow 配置或环境变量中。

要通过 Notion 对您的集成进行身份验证,您需要获取一个集成令牌。

  1. 在集成设置页面中,进入 "Secrets" 选项卡。
  2. 复制 "Internal Integration Token" 的值。此令牌将用于通过 Notion 对您的集成进行身份验证。

授予集成访问 Notion 数据库的权限

为了让您的集成与 Notion 数据库进行交互,您需要授予其访问必须处理的特定数据库的权限:

  1. 打开您想要让集成访问的 Notion 数据库。

  2. 点击 Share

  3. Invite 部分,从列表中选择您的集成。

  4. 点击 Invite 以授予该集成访问数据库的权限。

    如果您的数据库包含对其他数据库的引用,您还需要授予该集成访问这些被引用数据库的权限。 对集成必须访问的每个被引用数据库重复此步骤。

在 Langflow 中使用 Notion 组件进行构建

一旦您设置好了 Notion 集成并授予其访问所需数据库的权限,您就可以开始在 Langflow 中使用 Notion 组件了:

  • Add Content to Page: 将 markdown 文本转换为 Notion 块并将其追加到指定的 Notion 页面。
  • Create Page: 在指定的 Notion 数据库中使用提供的属性创建一个新页面。
  • List Database Properties: 检索指定 Notion 数据库的属性。
  • List Pages: 使用过滤和排序选项查询 Notion 数据库。
  • List Users: 从 Notion 工作区检索用户列表。
  • Page Content Viewer: 以纯文本形式检索 Notion 页面的内容。
  • Search: 搜索所有已与该集成共享的页面和数据库。您可以将结果过滤为页面或数据库,并指定排序方向。
  • Update Page Property: 更新现有 Notion 页面的属性。

这些组件中的每一个都可以输出 DataTool 数据类型

Notion 会议记录代理 (Notion Meeting Notes Agent)

Notion 会议记录代理是一个人工智能驱动的工具,它可以自动处理会议记录并更新您的 Notion 工作区。它会从您的会议中识别任务、行动项目和关键点,然后在无需手动输入的情况下在 Notion 中创建新任务或更新现有任务。

要构建此流程,您需要满足以下条件:

注意

请将所有密钥和其他凭据视为敏感信息。请使用安全引用,切勿公开分享。

此流中使用的组件

Notion 会议代理第一部分

  • 会议记录 (Meeting Transcript) (文本输入):此组件允许用户直接将会议记录输入到流程中。
  • 列出用户 (List Users) (Notion 组件):从 Notion 工作区检索用户列表。需要 Notion Secret (API 密钥)。
  • 列出数据库 (List Databases) (Notion 组件):在 Notion 工作区中搜索并列出所有数据库。需要以下输入:
    • Notion Secret (API 密钥)
    • 查询 (可选)
    • 过滤类型 (默认:database)
    • 排序方向
  • 提示词模板 (Prompt Template):此组件使用以下输入创建一个动态提示词模板:
    • 会议记录
    • 用户列表
    • 数据库列表
    • 当前日期
  • 会议总结器 (Meeting Summarizer) (工具调用代理):分析会议记录并识别任务和行动项目。需要以下输入:
    • 系统提示词 (来自 Prompt Template 组件)
    • 语言模型 (OpenAI)
    • 工具:
      • Notion Search
      • List Database Properties:检索指定 Notion 数据库的属性。需要数据库 ID 和 Notion Secret (API 密钥) 作为输入。
      • Create Page:在 Notion 数据库中创建一个新页面。需要数据库 ID、属性 (JSON) 和 Notion Secret (API 密钥) 作为输入。
      • Update Page Property:更新现有 Notion 页面的属性。需要页面 ID、Notion Secret (API 密钥) 和要更新的属性作为输入。
      • Add Content to Page:将 markdown 文本转换为 Notion 块并将其追加到指定的 Notion 页面。需要页面/块 ID、Notion Secret (API 密钥) 和 Markdown 文本作为输入。

Notion 会议代理第二部分

  • Notion 代理 (Notion Agent) (工具调用代理):根据会议总结在 Notion 中执行操作。需要以下输入:
    • 系统提示词 (来自第二个 Prompt Template 组件)
    • 语言模型 (OpenAI)
    • 工具:
      • List Database Properties:检索指定 Notion 数据库的属性。需要数据库 ID 和 Notion Secret (API 密钥) 作为输入。
      • Create Page:在 Notion 数据库中创建一个新页面。需要数据库 ID、属性 (JSON) 和 Notion Secret (API 密钥) 作为输入。
      • Update Page Property:更新现有 Notion 页面的属性。需要页面 ID、Notion Secret (API 密钥) 和要更新的属性作为输入。
      • Add Content to Page:将 markdown 文本转换为 Notion 块并将其追加到指定的 Notion 页面。需要页面/块 ID、Notion Secret (API 密钥) 和 Markdown 文本作为输入。
  • 聊天输出 (Chat Output):在游乐场中显示 Notion 代理的最终输出。

流程处理

  1. 用户输入会议记录。
  2. 流程检索 Notion 用户和数据库列表。
  3. 使用会议记录、用户列表、数据库列表和当前日期生成提示词。
  4. 会议总结器分析记录并识别任务和行动项目。
  5. Notion 代理使用会议总结来:
    • 为新任务创建新页面
    • 为现有任务更新现有页面
    • 在包含会议笔记的页面中添加内容
  6. 聊天输出显示在 Notion 中所采取操作的摘要。

运行 Notion 会议记录流

  1. 手动创建一个流或导入预构建的流 JSON 文件:

  2. 在各自的组件中输入 Notion 和 OpenAI API 密钥。

  3. 将您的会议记录粘贴到 Meeting Transcript 组件中。

    为了获得最佳效果,请使用详细的会议记录。输出的质量取决于所提供输入的全面性。

  4. 通过点击 Chat Output 组件上的 Run component 或打开 游乐场 (Playground) 来运行流程。

  5. 查看摘要,了解在您的 Notion 工作区中所采取的操作。

  6. 可选:可以自定义流程以满足您团队的特定需求。 定制此流的方法包括:

    • 调整系统提示词以改变代理的行为或上下文。
    • 根据您的具体需求添加或删除 Notion 工具。
    • 修改 OpenAI 模型参数(例如温度)以调整代理的响应风格。

Notion 对话代理 (Notion Conversational Agent)

Notion 对话代理是一个人工智能驱动的助手,它通过自然语言对话与您的 Notion 工作区进行交互。此流程通过聊天界面执行与 Notion 相关的任务,如创建页面、搜索信息和管理内容。

Notion 组件工具包

要构建此流程,您需要满足以下条件:

此流中使用的组件

  • 聊天输入 (Chat Input):接受用户查询和命令
  • 聊天输出 (Chat Output):显示代理的响应
  • 语言模型 (Language Model):处理用户输入并使用 OpenAI 模型生成响应
  • 工具调用代理 (Tool Calling Agent):根据用户输入协调各种 Notion 工具的使用
  • 工具包 (Toolkit):将多个 Notion 特定工具组合成一个工具包
  • Notion 工具 (Notion Tools):用于与 Notion 交互的各种组件,包括:
    • List Users
    • List Database Properties
    • List Pages
    • Page Content Viewer
    • Create Page
    • Update Page Property
    • Add Content to Page
    • Search
  • 消息历史 (Message History):存储对话历史
  • 提示词模板 (Prompt Template):为代理提供系统指令和上下文
  • 当前日期 (Current Date):为上下文提供当前日期和时间

运行对话式 Notion 代理

  1. 打开 Langflow 并创建一个新流。

  2. 将上面列出的组件添加到您的流画布中,或下载 对话代理流 (Conversation Agent Flow) (下载链接) 并将 JSON 文件 导入 到 Langflow 中。

  3. 按照流程图所示连接组件。

  4. 在各自的组件中输入 Notion 和 OpenAI API 密钥。

  5. 要启动流程,点击 Langflow 中的 "Play" 按钮。

  6. 在聊天界面中,输入与 Notion 相关的请求或问题。例如:

    • "在我的任务数据库中创建一个新页面"
    • "搜索有关项目管理的页面"
    • "列出我的 Notion 工作区中的所有用户"
  7. 代理将处理您的请求,使用适当的 Notion 工具,并提供响应。

  8. 继续对话,根据需要提出后续问题或给出新命令。

    对话示例

    _46
    用户:列出我 Notion 工作区中的所有用户。
    _46
    _46
    代理:没问题!我将使用 Notion 用户列表工具为您检索该信息。请稍等。
    _46
    _46
    [代理使用 Notion 用户列表工具]
    _46
    _46
    这是您 Notion 工作区中的用户列表:
    _46
    _46
    1. John Doe (john@example.com)
    _46
    2. Jane Smith (jane@example.com)
    _46
    3. Alex Johnson (alex@example.com)
    _46
    _46
    关于这些用户,您有什么想了解的具体信息吗,或者还有其他我可以帮您的 Notion 相关任务吗?
    _46
    _46
    用户:在我的项目数据库中创建一个标题为 "网站重新设计" 的新页面。
    _46
    _46
    代理:没问题!我很乐意在您的项目数据库中创建一个标题为 "网站重新设计" 的新页面。我将使用 Notion 页面创建器工具来执行此操作。首先,让我检查一下您的项目数据库的属性,以确保我们包含了所有必要的信息。
    _46
    _46
    [代理使用 Notion 数据库属性工具]
    _46
    _46
    我已经检索到了您的项目数据库的属性。现在,我将创建标题为 "网站重新设计" 的新页面。请稍等。
    _46
    _46
    [代理使用 Notion 页面创建器工具]
    _46
    _46
    好消息!我已成功在您的项目数据库中创建了一个标题为 "网站重新设计" 的新页面。以下是详细信息:
    _46
    _46
    - 标题:网站重新设计
    _46
    - 页面 ID:[此处为页面 ID]
    _46
    - URL:[此处为页面 URL]
    _46
    _46
    您是否还想在此新项目页面中添加任何其他信息,例如描述、截止日期或分配的团队成员?
    _46
    _46
    用户:是的,请添加描述:"重新设计公司网站,以改善用户体验并使外观现代化。"
    _46
    _46
    代理:没问题!我很乐意将该描述添加到 "网站重新设计" 项目页面。我将使用 "向页面添加内容" 工具来使用此信息更新页面。
    _46
    _46
    [代理使用向页面添加内容工具]
    _46
    _46
    我已成功将描述添加到您的 "网站重新设计" 项目页面。这是我所做工作的摘要:
    _46
    _46
    1. 使用我们之前交互中的页面 ID 找到了 "网站重新设计" 页面。
    _46
    2. 在页面中添加了以下内容:
    _46
    _46
    描述:重新设计公司网站,以改善用户体验并使外观现代化。
    _46
    _46
    描述已作为新的文本块添加到页面中。您还想在此项目页面上添加或修改其他内容吗?

  9. 可选:可以自定义流程以满足您团队的特定需求。 例如:

    • 调整系统提示词以改变代理的行为或上下文。
    • 根据您的具体需求添加或删除 Notion 工具。
    • 修改 OpenAI 模型参数(例如温度)以调整代理的响应风格。

故障排除

如果您遇到问题:

  1. 确保所有 API 密钥设置正确并具有必要的权限。
  2. 检查您的 Notion 集成是否具有对相关页面和数据库的访问权限。
  3. 验证流中所有组件是否已正确连接。
  4. 查看 Langflow 日志以获取任何错误消息。

有关更多高级用法和集成选项,请参阅 Notion API 文档Langflow 文档

Search