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

AI 数据湖服务

复制全文
文本处理
中文简繁体转换
复制全文
中文简繁体转换

算子介绍

描述

基于 OpenCC 的中文简繁体转换算子

核心功能

  • 多方向转换:支持简繁体、台湾正体、香港繁体等多种转换方向
  • 混合文本处理:正确处理中英文混杂内容,仅转换中文部分
  • 高效批处理:支持大批量文本的快速转换处理

技术实现

  • 转换引擎:使用 OpenCC 进行转换

Daft 调用

算子参数

输入

输入列名

说明

texts

包含待转换文本的列,元素类型为字符串。

输出

转换后的文本列,元素类型为字符串。

参数

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

参数名称

类型

默认值

描述

direction

str

t2s

转换方向 可选值:["t2s", "s2t", "t2tw", "s2tw", "t2hk", "s2hk", "tw2s", "hk2s"] 默认值:"t2s" (繁体转简体)

调用示例

下面的代码展示了如何使用 daft 运行算子进行中文简繁体转换。

from __future__ import annotations

import os

import pandas as pd

import daft
from daft import col
from daft.las.functions.text.chinese_text_converter import ChineseTextConverter
from daft.las.functions.udf import las_udf

if __name__ == "__main__":

    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.%s".format(),
            )
            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 = {
        "text": [
            "這是一個繁體中文的測試文本,包含了一些專業術語和技術名詞。",
            "Hello 世界!這裡有中英文混雜的內容,測試OpenCC是否能正確處理。",
            "Mixed content: 繁體字轉換測試 with English words and numbers 123。",
            None,
        ]
    }

    df = pd.DataFrame(samples)
    ds = daft.from_pandas(df)

    ds = ds.with_column(
        "converted_text",
        las_udf(
            ChineseTextConverter,
            construct_args={
                "direction": "t2s",
            },
            num_gpus=0,
            batch_size=1,
            concurrency=1,
        )(col("text")),
    )

    ds.show()
    # ╭─────────────────────────────────────────────────────────────────────────────────┬─────────────────────────────────────────────────────────────────────────────────╮
    # │ text                                                                            ┆ converted_text                                                                  │
    # │ ---                                                                             ┆ ---                                                                             │
    # │ Utf8                                                                            ┆ Utf8                                                                            │
    # ╞═════════════════════════════════════════════════════════════════════════════════╪═════════════════════════════════════════════════════════════════════════════════╡
    # │ 這是一個繁體中文的測試文本,包含了一些專業術語和技術名詞。                                ┆ 这是一个繁体中文的测试文本,包含了一些专业术语和技术名词。                                │
    # ├╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
    # │ Hello 世界!這裡有中英文混雜的內容,測試OpenCC是否能正確處理。                           ┆ Hello 世界!这里有中英文混杂的内容,测试OpenCC是否能正确处理。                          │
    # ├╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
    # │ Mixed content: 繁體字轉換測試 with English words and numbers 123。                 ┆ Mixed content: 繁体字转换测试 with English words and numbers 123。                │
    # ├╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
    # │ None                                                                            ┆ None                                                                            │
    # ╰─────────────────────────────────────────────────────────────────────────────────┴─────────────────────────────────────────────────────────────────────────────────╯
最近更新时间:2026.01.08 19:14:22
这个页面对您有帮助吗?
有用
有用
无用
无用