Source code for todd.utils.networks

__all__ = [
    'get_bytes',
    'get_image',
    'get_audio',
]

from io import BytesIO

import numpy as np
import numpy.typing as npt
import requests
import torch
import torchaudio
from PIL import Image


[docs] def get_bytes(url: str) -> BytesIO: response = requests.get(url, timeout=5) response.raise_for_status() return BytesIO(response.content)
[docs] def get_image(url: str) -> npt.NDArray[np.uint8]: with Image.open(get_bytes(url)) as image: image = image.convert('RGB') return np.array(image)
[docs] def get_audio(url: str) -> tuple[torch.Tensor, int]: return torchaudio.load(get_bytes(url))