跳到主要内容

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 页面的属性。

这些组件中的每一个都可以输出 Data 和 Tool 数据类型。

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