# mmseg 库模块帮助文档

<details>  <summary>必读</summary>  <p>
词库一定要自己除重！任何时候不要添加重复的词！！！
</p></details>

## mmseg 成员列表 <a id="mmseg" href="#mmseg">&#x23;</a>

MMSEG 分词组件。  
MMSEG 分词的结果会包含一些对检索无意义的词元。  
例如停用词、包含标点符号的特殊文本，文件路径等等。  
可用 string.stopwords.is 检查并移除停用词。  

检索与词频统计可使用标准库 string.tfIdf 。

### mmseg.addWord(词,词频) <a id="mmseg.addWord" href="#mmseg.addWord">&#x23;</a>
添加到词库，  
注意仅单字词需要指定词频。  
任何时候都不要添加重复的词！！！

### mmseg.each(str) <a id="mmseg.each" href="#mmseg.each">&#x23;</a>

```aardio
for word,attr in mmseg.each(/*输入字符串，迭代变量 word 为拆分词，attr 为拆分词属性，  
attr 默认值是 '@'#，汉字或标点 attr 为 0，  
英文字符 attr 为 'e'#。*/){

}
```

### mmseg.hasWord(多字词) <a id="mmseg.hasWord" href="#mmseg.hasWord">&#x23;</a>
检测词典中是否已包含参数 @1 指定的词。

### mmseg.list(文本) <a id="mmseg.list" href="#mmseg.list">&#x23;</a>
分词并返回包含分词结果的数组，  
第 2 个返回值为一个字典表，键为词，值为对应的 attr 数值。  
attr 默认值是 '@'#，汉字或标点 attr 为 0，  
英文字符 attr 为 'e'#。

### mmseg.llmTokens <a id="mmseg.llmTokens" href="#mmseg.llmTokens">&#x23;</a>
估算文本用于调用大模型的 token 数。

### mmseg.llmTokens(text) <a id="mmseg.llmTokens" href="#mmseg.llmTokens">&#x23;</a>
估算参数 text 指定的文本用于调用大模型所消耗的 token 数。  
返回值可调用 math.format.size(tokens," tokens") 函数格式化为类似“21K tokens”的文本。  
此函数适合估算主流大模型的分词计数（结果仅供参考），OpenAI GPT4o/GPT5 系列模型请改用 string.gpt.tokens 函数估算。

### mmseg.loadChars() <a id="mmseg.loadChars" href="#mmseg.loadChars">&#x23;</a>
加载字典文件,参数为路径

### mmseg.loadWords() <a id="mmseg.loadWords" href="#mmseg.loadWords">&#x23;</a>
加载词典文件,参数为路径  
注意词典文件不需要指定词长，一行一个词就可以，文件尾必须有换行，  
可选在词后面加一个空格以及一个标点指定 attr 值  
词的 attr 默认值是 '@'#，字或标点 attr 为 0

### mmseg.text(str,space) <a id="mmseg.text" href="#mmseg.text">&#x23;</a>
分词并返回文本，使用空格将词分开。  
可选用 space 参数自定义分隔符。
