You need to enable JavaScript to run this app.
AI 数据湖服务

AI 数据湖服务

复制全文
音频处理
音频评分(Audiobox Aesthetics)
复制全文
音频评分(Audiobox Aesthetics)

算子介绍

描述

音频评分算子 - 使用 audiobox_aesthetics 对音频进行质量评分

核心功能

  • 使用 audiobox_aesthetics 模型对音频片段进行质量评分
  • 提供四个评分维度:CE (连贯性/听感投入度)、CU (清晰度/可懂度)、PC (制作质量/构成质量)、PQ (感知质量/主观音质)
  • 支持本地和远程 (tos://) 音频文件
  • 适用于音频质量评估、音频筛选、质量控制等场景

评分维度说明

  • CE (连贯性/听感投入度): 反映音频内容是否连贯,以及音频在主观听感上是否具有吸引力
  • CU (清晰度/可懂度): 反映声音清晰度、语音可懂度
  • PC (制作质量/构成质量): 反映录音、混音、结构等制作层面的质量
  • PQ (感知质量/主观音质): 综合主观听感质量

Daft 调用

算子参数

输入

输入列名

说明

audio_paths

包含音频文件路径的数组(字符串类型)

输出

结构化结果数组,其中每个元素包含以下字段:

  • CE (float): 连贯性/听感投入度评分
  • CU (float): 清晰度/可懂度评分
  • PC (float): 制作质量/构成质量评分
  • PQ (float): 感知质量/主观音质评分

处理失败的音频返回包含 0.0 值的结构

参数

如参数没有默认值,则为必填参数

参数名称

类型

默认值

描述

model_path

str

/opt/las/models

模型存储根路径 默认值:"/opt/las/models"

model_name

str

audiobox-aesthetics/checkpoint.pt

预训练模型名称 默认值:"audiobox-aesthetics/checkpoint.pt"

调用示例

下面的代码展示了如何使用 daft 运行算子对音频进行评分。

from __future__ import annotations

import os

import daft
from daft import col
from daft.las.functions.audio import AudioMetascore
from daft.las.functions.udf import las_udf

if __name__ == "__main__":
    TOS_TEST_DIR_URL = os.getenv("TOS_TEST_DIR_URL", "las-cn-beijing-public-online.tos-cn-beijing.volces.com")

    if os.getenv("DAFT_RUNNER", "native") == "ray":
        import logging

        import ray

        def configure_logging():
            logging.basicConfig(
                level=logging.INFO,
                format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
                datefmt="%Y-%m-%d %H:%M:%S",
            )
            logging.getLogger("tracing.span").setLevel(logging.WARNING)
            logging.getLogger("daft_io.stats").setLevel(logging.WARNING)
            logging.getLogger("DaftStatisticsManager").setLevel(logging.WARNING)
            logging.getLogger("DaftFlotillaScheduler").setLevel(logging.WARNING)
            logging.getLogger("DaftFlotillaDispatcher").setLevel(logging.WARNING)

        ray.init(dashboard_host="0.0.0.0", runtime_env={"worker_process_setup_hook": configure_logging})
        daft.context.set_runner_ray()

    daft.set_execution_config(actor_udf_ready_timeout=600)
    daft.set_execution_config(min_cpu_per_task=0)

    samples = {"audio_path": [f"https://{TOS_TEST_DIR_URL}/public/archive/audio_metascore/sample.wav"]}
    df = daft.from_pydict(samples)
    df = df.with_column(
        "audio_metascore",
        las_udf(
            AudioMetascore,
            num_cpus=1,
            batch_size=1,
            concurrency=1,
        )(col("audio_path")),
    )

    df.show()
    # ╭────────────────────────────────┬────────────────────────────────────────────────────────────╮
    # │ audio_path                     ┆ audio_metascore                                            │
    # │ ---                            ┆ ---                                                        │
    # │ String                         ┆ Struct[CE: Float64, CU: Float64, PC: Float64, PQ: Float64] │
    # ╞════════════════════════════════╪════════════════════════════════════════════════════════════╡
    # │ https://las-public-data-qa.to… ┆ {CE: 5.909880638122559,                                    │
    # │                                ┆ CU: 6…                                                     │
    # ╰────────────────────────────────┴────────────────────────────────────────────────────────────╯
最近更新时间:2026.01.08 19:15:08
这个页面对您有帮助吗?
有用
有用
无用
无用