最大英文单词长度计算器
更新时间:2026-05-18
最大英文单词长度计算器
简介
最大英文单词长度计算器,统计文本中最长英文单词的字符数,用于识别包含异常长字符串(URL、乱码等)的低质量文本。
功能描述
- 提取文本中所有英文单词,返回最长单词的字符数
- 空文本、无英文单词或 None 返回 0 或 None
- 无外部依赖
算子参数
输入
| 输入 | 含义 |
|---|---|
| texts | 文本字符串数组 |
输出
| 输出 | 含义 |
|---|---|
| max_word_length | 最长英文单词的字符数(float64),空文本返回 None |
参数
无
调用示例
Plain Text
1from __future__ import annotations
2
3import os
4
5import daft
6from daft import col
7
8from daft.aihc.common.udf import aihc_udf
9from daft.aihc.functions.text.maximum_word_length_calculator import MaximumWordLengthCalculator
10
11if __name__ == "__main__":
12 if os.getenv("DAFT_RUNNER", "native") == "ray":
13 import ray
14 ray.init(dashboard_host="0.0.0.0", ignore_reinit_error=True)
15 daft.set_runner_ray()
16 daft.set_execution_config(actor_udf_ready_timeout=6000, min_cpu_per_task=0)
17
18 samples = {"text": ["hello world", "aVeryLongWordThatShouldBeFiltered text", "normal sentence here"]}
19 ds = daft.from_pydict(samples)
20 ds = ds.with_column(
21 "max_word_length",
22 aihc_udf(
23 MaximumWordLengthCalculator,
24 num_cpus=1,
25 concurrency=4,
26 batch_size=1024,
27 )(col("text")),
28 )
29 # 过滤最大单词长度异常的文本
30 ds = ds.where(col("max_word_length") <= 30)
31 ds.show()
评价此篇文章
