Blaflow 中的数据组件
数据组件将数据从源加载到您的流程中。
它们可能会执行一些处理或类型检查,例如将原始 HTML 数据转换为文本,或确保您加载的文件是可接受的类型。
在流程中使用数据组件
URL数据组件从 URL 列表加载内容。
在组件的URLs字段中,输入您要加载的 URL 的逗号分隔列表。或者,连接一个输出Message类型的组件,如聊天输入组件,以通过组件提供您的 URL。
要输出Data类型,在输出格式下拉菜单中选择Raw HTML。
要输出Message类型,在输出格式下拉菜单中选择Text。此选项应用data_to_text辅助函数进行后处理。
在这个文档摄取管道的示例中,URL 组件将原始 HTML 输出到文本分割器,后者将原始内容分割成块供向量数据库摄取。

API 请求
此组件使用 URL 或 cURL 命令发出 HTTP 请求。
输入
| 名称 | 显示名称 | 信息 |
|---|---|---|
| urls | URLs | 输入一个或多个 URL,用逗号分隔。 |
| curl | cURL | 粘贴一个 curl 命令以填充 headers 和 body 的字典字段。 |
| method | 方法 | 使用的 HTTP 方法。 |
| use_curl | 使用 cURL | 启用 cURL 模式以从 cURL 命令填充字段。 |
| query_params | 查询参数 | 要附加到 URL 的查询参数。 |
| body | 请求体 | 作为字典发送的请求体(用于POST、PATCH、PUT)。 |
| headers | 请求头 | 作为字典发送的请求头。 |
| timeout | 超时时间 | 请求使用的超时时间。 |
| follow_redirects | 遵循重定向 | 是否遵循 http 重定向。 |
| save_to_file | 保存到文件 | 将 API 响应保存到临时文件 |
| include_httpx_metadata | 包含 HTTPx 元数据 | 在输出中包含诸如headers、status_code、response_headers和redirection_history等属性。 |
输出
| 名称 | 显示名称 | 信息 |
|---|---|---|
| data | 数据 | API 请求的结果。 |
目录
此组件递归地从目录加载文件,具有文件类型、深度和并发性的选项。
输入
| 输入 | 类型 | 描述 |
|---|---|---|
| path | MessageTextInput | 要从中加载文件的目录路径 |
| types | MessageTextInput | 要加载的文件类型(留空以加载所有类型) |
| depth | IntInput | 搜索文件的深度 |
| max_concurrency | IntInput | 加载文件的最大并发性 |
| load_hidden | BoolInput | 如果为 true,则加载隐藏文件 |
| recursive | BoolInput | 如果为 true,则递归搜索 |
| silent_errors | BoolInput | 如果为 true,错误不会引发异常 |
| use_multithreading | BoolInput | 如果为 true,则使用多线程 |
输出
| 输出 | 类型 | 描述 |
|---|---|---|
| data | List[Data] | 从目录加载的文件数据 |
文件
此组件加载和解析各种支持格式的文件,并将内容转换为数据对象。它支持多种文件类型,并提供并行处理和错误处理的选项。
要加载文档,请按照以下步骤操作:
- 点击选择文件按钮。
- 选择本地文件或使用文件管理加载的文件,然后点击选择文件。
加载的文件名显示在组件中。
默认支持的最大文 件大小为 100 MB。
输入
| 名称 | 显示名称 | 信息 |
|---|---|---|
| path | 文件 | 要加载的文件路径。支持单个文件或打包的存档。 |
| file_path | 服务器文件路径 | 具有指向服务器文件的file_path属性的 Data 对象或具有文件路径的 Message 对象。覆盖'Path'但支持相同的文件类型。 |
| separator | 分隔符 | 指定在 Message 格式中用于多个输出之间的分隔符。 |
| silent_errors | 是否忽略错误 | 如果为 true,错误不会引发异常。 |
| delete_server_file_after_processing | 处理后删除服务器文件 | 如果为 true,处理后会删除服服务器文件路径。 |
| ignore_unsupported_extensions | 忽略不支持的文件扩展名 | 如果为 true,不支持扩展名的文件不会被处理。 |
| ignore_unspecified_files | 忽略未指定的文件 | 如果为 true,没有file_path属性的Data会被忽略。 |
| use_multithreading | [Deprecated] Use Multithreading | 将'Processing Concurrency'设置为大于1以启用多线程。此选项已弃用。 |
| concurrency_multithreading | 处理并发数 | 当处理多个文件时,要并发处理的文件数。默认为 1。大于 1 的值启用 2 个或更多文件的并行处理。 |
输出
| 名称 | 显示名称 | 信息 |
|---|---|---|
| data | 数据 | 文件解析后的内容作为数据对象。 |
| dataframe | DataFrame | 文件内容作为DataFrame对象。 |
| message | 消息 | 文件内容作为消息对象。 |
支持的文件类型
文本文件:
.txt- 文本文件.md,.mdx- Markdown 文件.csv- CSV 文件.json- JSON 文件.yaml,.yml- YAML 文件.xml- XML 文件.html,.htm- HTML 文件.pdf- PDF 文件.docx- Word 文档.py- Python 文件.sh- Shell 脚本.sql- SQL 文件.js- JavaScript 文件.ts,.tsx- TypeScript 文件
存档格式(用于打包多个文件):
.zip- ZIP 存档.tar- TAR 存档.tgz- Gzipped TAR 存档.bz2- Bzip2 压缩文件.gz- Gzip 压缩文件
Gmail 加载器
Google 组件在组件菜单下的组件包中可用。
此组件使用提供的凭据和过滤器从 Gmail 加载电子邮件。
输入
| 输入 | 类型 | 描述 |
|---|---|---|
| json_string | SecretStrInput | 包含服务帐户访问的 OAuth 2.0 访问令牌信息的 JSON 字符串 |
| label_ids | MessageTextInput | 用于过滤电子邮件的标签 ID 的逗号分隔列表 |
| max_results | MessageTextInput | 要加载的最大电子邮件数量 |
输出
| 输出 | 类型 | 描述 |
|---|---|---|
| data | Data | 加载的电子邮件数据 |
Google Drive 加载器
Google 组件在组件菜单下的组件包中可用。
此组件使用提供的凭据和单个文档 ID 从 Google Drive 加载文档。
输入
| 输入 | 类型 | 描述 |
|---|---|---|
| json_string | SecretStrInput | 包含服务帐户访问的 OAuth 2.0 访问令牌信息的 JSON 字符串 |
| document_id | MessageTextInput | 单个 Google Drive 文档 ID |
输出
| 输出 | 类型 | 描述 |
|---|---|---|
| docs | Data | 加载的文档数据 |
Google Drive 搜索
Google 组件在组件菜单下的组件包中可用。
此组件使用提供的凭据和查询参数搜索 Google Drive 文件。
输入
| 输入 | 类型 | 描述 |
|---|---|---|
| token_string | SecretStrInput | 包含服务帐户访问的 OAuth 2.0 访问令牌信息的 JSON 字符串 |
| query_item | DropdownInput | 要查询的字段 |
| valid_operator | DropdownInput | 查询中使用的运算符 |
| search_term | MessageTextInput | 在指定的查询项中搜索的值 |
| query_string | MessageTextInput | 用于搜索的查询字符串(可以手动编辑) |
输出
| 输出 | 类型 | 描述 |
|---|---|---|
| doc_urls | List[str] | 找到的文档的 URL |
| doc_ids | List[str] | 找到的文档的 ID |
| doc_titles | List[str] | 找到的文档的标题 |
| Data | Data | 文档标题和 URL 的结构化格式 |
SQL 查询
此组件在指定的数据库上执行 SQL 查询。
输入
| 名称 | 显示名称 | 信息 |
|---|---|---|
| query | 查询 | 要执行的 SQL 查询。 |
| database_url | 数据库 URL | 数据库的 URL。 |
| include_columns | 包含列名 | 在结果中包含列。 |
| passthrough | 透传 | 如果发生错误,返回查询而不是引发异常。 |
| add_error | 添加错误 | 将错误添加到结果中。 |
输出
| 名称 | 显示名称 | 信息 |
|---|---|---|
| result | 结果 | SQL 查询执行的结果。 |
URL
此组件从一个或多个 URL 获取内容,处理内容,并以各种格式返回。它支持以纯文本、原始 HTML 或 JSON 格式输出,具有清理和分隔多个输出的选项。
输入
| 名称 | 显示名称 | 信息 |
|---|---|---|
| urls | URLs | 输入一个或多个 URL。URL 会自动验证和清理。 |
| format | 输出格式 | 输出格式。使用Text从 HTML 提取文本,Raw HTML获取原始 HTML 内容,或JSON从 HTML 提取 JSON。 |
| separator | Separator | 指定用于多个输出之间的分隔符。Text的默认值为\n\n。Raw HTML的默认值为\n<!-- Separator -->\n。 |
| clean_extra_whitespace | Clean Extra Whitespace | 是否清理文本输出中的多余空行。仅适用于Text格式。 |
输出
| 名称 | 显示名称 | 信息 |
|---|---|---|
| data | 数据 | 包含获取内容和元数据的数据对象列表。 |
| text | 文本 | 获取的内容作为格式化文本,应用了分隔符和清理。 |
| dataframe | DataFrame | 内容格式化为数据对象。 |
Webhook
此组件定义一个 webhook 触发器,在收到 HTTP POST 请求时运行流程。
如果输入不是有效的 JSON,组件会将其包装在payload对象中,以便可以处理并仍然触发流程。该组件不需要 API 密钥。
当Webhook组件添加到工作区时,API窗格中会显示一个新的Webhook cURL选项卡,其中包含用于触发 webhook 组件的 HTTP POST 请求。例如:
_10curl -X POST \_10 "http://127.0.0.1:7860/api/v1/webhook/**YOUR_FLOW_ID**" \_10 -H 'Content-Type: application/json'\_10 -d '{"any": "data"}'
要测试 webhook 组件:
- 将Webhook组件添加到流程中。
- 将Webhook组件的Data输出连接到解析器组件的Data输入。
- 将解析器组件的解析后的文本输出连接到聊天输出组件的Text输入。
- 在解析器组件中,在模式下选择字符串。 此模式将 webhook 的数据作为字符串传递,供聊天输出组件打印。
- 要发送 POST 请求,从API窗格的Webhook cURL选项卡复制代码并粘贴到终端中。
- 发送 POST 请求。
- 打开试运行。 您的 JSON 数据发布到聊天输出组件,这表明 webhook 组件正确触发了流程。
输入
| 名称 | 显示名称 | 描述 |
|---|---|---|
| data | 负载数据 | 通过 HTTP POST 请求从外部系统接收有效负载。 |
| curl | cURL | 用于向此 webhook 发出请求的 cURL 命令模板。 |
| endpoint | 端点 | 此 webhook 接收请求的端点 URL。 |
输出
| 名称 | 显示名称 | 描述 |
|---|---|---|
| output_data | 数据 | 从 webhook 输入输出处理后的数据,如果没有提供输入,则返回空的数据对象。如果输入不是有效的 JSON,组件会将其包装在payload对象中。 |