utils

package
v1.1.11 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 23, 2026 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckAndDownload added in v1.1.10

func CheckAndDownload(modelID, modelFile string, observer DownloadObserver) (string, error)

CheckAndDownload 检查模型是否存在,不存在则下载 返回模型文件的完整路径

func Clean added in v1.1.10

func Clean(s string) string

Clean 基础清洗:去特殊符号、多余空格、统一格式。 升级说明:使用正则表达式保留中文、字母、数字和基本标点符号, 合并多余空格,返回清洗后的文本。

func CleanNoise added in v1.1.10

func CleanNoise(text string) string

CleanNoise 去除噪音字符。 升级说明:使用 GSE FilterHtml 增强 HTML 标签过滤能力, 保留原有的 HTML 实体解码、控制字符和空白字符处理逻辑。

func DesensitizePII added in v1.1.10

func DesensitizePII(text string) string

DesensitizePII 隐私脱敏。 注意:此函数保留原有实现,PII 脱敏需要严格的正则规则匹配。 GSE 分词可用于辅助识别潜在实体,但正则规则更为精确可靠。

func ExtractKeywords added in v1.1.10

func ExtractKeywords(s string) []string

ExtractKeywords 提取关键词。 升级说明:使用 GSE 的分词替代原有的空白分割, 结合 zoomio/stopwords 进行停用词过滤,比原有方法更准确。

func GenerateID added in v1.1.10

func GenerateID(content []byte) string

GenerateID 生成永不重复、同一个文件永远相同的 DocID

func GetModelPath added in v1.1.10

func GetModelPath(modelID, file string) string

GetModelPath 获取模型本地路径

func Normalize added in v1.1.10

func Normalize(s string) string

Normalize 归一化:小写+清理。 升级说明:使用 GSE FilterEmoji 删除 emoji,然后转换为小写并清洗。

func NormalizeChinese added in v1.1.10

func NormalizeChinese(text string) string

NormalizeChinese 繁简转换(扩展版)。 注意:GSE 未提供繁简转换功能,此函数保留原有实现。 未来可探索使用 GSE 分词结合外部繁简转换库(如 gocc)实现更全面的转换。

func NormalizeParagraphs added in v1.1.10

func NormalizeParagraphs(text string) string

NormalizeParagraphs 规范化段落。 注意:此函数保留原有实现,GSE 无直接对应的段落结构化处理功能。

func RemoveLineNumbers added in v1.1.10

func RemoveLineNumbers(text string) string

RemoveLineNumbers 去除代码行号。 注意:此函数保留原有实现,行号检测需要特定的正则模式匹配。

func RemoveLinks(text string) string

RemoveLinks 去除链接。 升级说明:使用 GSE FilterHtml 移除 HTML 标签和链接,保留 Markdown 链接和裸露 URL 的处理。

func RemoveStopWords added in v1.1.10

func RemoveStopWords(s string) string

RemoveStopWords 去除停用词。 升级说明:使用 GSE 分词后过滤停用词,比原有方法更准确。 GSE 的 CutStop 本身不过滤停用词,需要手动过滤。

func RemoveWatermarks added in v1.1.10

func RemoveWatermarks(text string) string

RemoveWatermarks 去除水印。 注意:此函数保留原有实现,水印检测依赖领域关键词匹配。 未来可探索利用 GSE 分词增强关键词匹配准确性。

func ToHalfWidth added in v1.1.10

func ToHalfWidth(text string) string

ToHalfWidth 全角半角转换。 注意:GSE 未提供全角半角转换功能,此函数保留原有实现。 GSE 主要提供分词、停用词过滤和文本清洗功能。

Types

type DownloadEvent added in v1.1.10

type DownloadEvent struct {
	Type    EventType // 事件类型
	File    string    // 当前文件
	Current int64     // 已下载字节
	Total   int64     // 总字节
	Message string    // 消息
}

DownloadEvent 下载事件

type DownloadObserver added in v1.1.10

type DownloadObserver interface {
	OnEvent(event DownloadEvent)
}

DownloadObserver 下载观察者接口

type EventType added in v1.1.10

type EventType int

EventType 事件类型

const (
	EventStart       EventType = iota // 开始下载
	EventProgress                     // 进度更新
	EventComplete                     // 单个文件完成
	EventError                        // 错误
	EventAllComplete                  // 全部完成
)

type ModelDownloader added in v1.1.10

type ModelDownloader struct {
	// contains filtered or unexported fields
}

ModelDownloader 模型下载器

func NewModelDownloader added in v1.1.10

func NewModelDownloader(cacheDir string) (*ModelDownloader, error)

NewModelDownloader 创建模型下载器

func (*ModelDownloader) Download added in v1.1.10

func (d *ModelDownloader) Download(modelID string, files []string) (string, error)

Download 下载 HuggingFace 模型到本地目录 modelID: HuggingFace 模型 ID,如 "Xenova/bge-base-zh-v1.5" files: 要下载的文件路径列表,如 []string{"config.json", "onnx/model.onnx"}

func (*ModelDownloader) WithObserver added in v1.1.10

func (d *ModelDownloader) WithObserver(observer DownloadObserver) *ModelDownloader

WithObserver 设置观察者(链式调用)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL