Helpers

Helpers

Helpers

Helpers

Helpersは、コードノード(Python Node)でのファイル処理やデータ変換を簡単にするための組み込みユーティリティ関数群です。

別途importすることなく、await helpers.関数名の形式ですぐに使用できます。

ファイルデータをAgentriaの標準フォーマットに変換したり、ノード間で受け渡したりする際に使用します。

  • ファイル → base64変換

  • ファイル → MIMEタイプの抽出

  • ファイル → Agentria標準フォーマットへの変換

  • ファイルメタデータの抽出

Helpersの使用例

file_type = await helpers.get_mime_type_from_file(file)
file_type = await helpers.get_mime_type_from_file(file)
file_type = await helpers.get_mime_type_from_file(file)

File Helpers

ファイル処理に関連する主なヘルパー関数の一覧です。

  • get_base64_str_from_file(bytes | str | list) -> str

  • get_mime_type_from_file(bytes | str | list) -> str

  • as_files(value, key, default_mime_type, immutable) -> list[str] | None

  • get_file_metadata(bytes | str | list) -> dict

as_files

さまざまな形式のファイルデータを、Agentriaで使用できる標準ファイルフォーマットに変換します。

ワークフロー内でファイルを受け渡したり、Web Request Nodeと連携したりする際によく使用される主要な関数です。

async def as_files(
    value: str | bytes | list | dict | None,
    key: str | None = None,
    default_mime_type: str = "application/octet-stream",
    immutable: bool = True
) -> list[str] | None

async def as_files(
    value: str | bytes | list | dict | None,
    key: str | None = None,
    default_mime_type: str = "application/octet-stream",
    immutable: bool = True
) -> list[str] | None

async def as_files(
    value: str | bytes | list | dict | None,
    key: str | None = None,
    default_mime_type: str = "application/octet-stream",
    immutable: bool = True
) -> list[str] | None

サポートされる入力形式

  • as_files(bytes_data):単一のファイルデータ

  • as_files(bytes_data, key="report.png"):ファイルキー(名前)を含む単一ファイル

  • as_files([b1, b2]):複数のファイルデータのリスト

  • as_files([("k1", b1), ("k2", b2)]):キーを含む(key, file)タプルのリスト

  • as_files({"k1": b1, "k2": b2}):key-value形式のファイル辞書

使用例

# 1. 単一の画像バッファをAgentriaで使用可能なファイル形式に変換
png_image_buffer = ...
from_buffer = await helpers.as_files(png_image_buffer)

# 2. 複数の画像バッファを変換
png_image_buffer_1 = ...
png_image_buffer_2 = ...
from_buffers = await helpers.as_files([png_image_buffer_1, png_image_buffer_2])

# 3. Web Request Nodeの使用時にform-dataのkeyを指定
png_image_buffer = ...
from_buffer = await helpers.as_files({"file": png_image_buffer})
# または
from_buffer = await helpers.as_files(png_image_buffer, key="file")

# 4. immutableオプションの活用
# immutable=True:設定したkeyを固定します。
from_buffer = await helpers.as_files(png_image_buffer, key="dont_touch", immutable=True)
# immutable=False:次のノードでkey名を変更できるようにします。
from_buffer = await helpers.as_files(png_image_buffer, key="can_be_renamed", immutable=False)
# 1. 単一の画像バッファをAgentriaで使用可能なファイル形式に変換
png_image_buffer = ...
from_buffer = await helpers.as_files(png_image_buffer)

# 2. 複数の画像バッファを変換
png_image_buffer_1 = ...
png_image_buffer_2 = ...
from_buffers = await helpers.as_files([png_image_buffer_1, png_image_buffer_2])

# 3. Web Request Nodeの使用時にform-dataのkeyを指定
png_image_buffer = ...
from_buffer = await helpers.as_files({"file": png_image_buffer})
# または
from_buffer = await helpers.as_files(png_image_buffer, key="file")

# 4. immutableオプションの活用
# immutable=True:設定したkeyを固定します。
from_buffer = await helpers.as_files(png_image_buffer, key="dont_touch", immutable=True)
# immutable=False:次のノードでkey名を変更できるようにします。
from_buffer = await helpers.as_files(png_image_buffer, key="can_be_renamed", immutable=False)
# 1. 単一の画像バッファをAgentriaで使用可能なファイル形式に変換
png_image_buffer = ...
from_buffer = await helpers.as_files(png_image_buffer)

# 2. 複数の画像バッファを変換
png_image_buffer_1 = ...
png_image_buffer_2 = ...
from_buffers = await helpers.as_files([png_image_buffer_1, png_image_buffer_2])

# 3. Web Request Nodeの使用時にform-dataのkeyを指定
png_image_buffer = ...
from_buffer = await helpers.as_files({"file": png_image_buffer})
# または
from_buffer = await helpers.as_files(png_image_buffer, key="file")

# 4. immutableオプションの活用
# immutable=True:設定したkeyを固定します。
from_buffer = await helpers.as_files(png_image_buffer, key="dont_touch", immutable=True)
# immutable=False:次のノードでkey名を変更できるようにします。
from_buffer = await helpers.as_files(png_image_buffer, key="can_be_renamed", immutable=False)

オプションの説明

  • key:form-dataで使用するファイルキー名

  • default_mime_type:MIMEタイプを推測できない場合のデフォルト値

  • immutable:keyを固定するかどうか(True:固定、False:変更可能)

get_file_metadata

ファイルの詳細情報(メタデータ)を抽出します。ファイルの検証、ロギング、デバッグなど、さまざまな用途に活用できます。

戻り値

キー(Key)

説明

mime_type

ファイルのMIMEタイプ

size

ファイルサイズ(Byte単位)

filename

ファイル名

extension

ファイル拡張子