UnicodeNormalizer
UnicodeNormalizer 是一個輸入 processor,可在訊息傳送至語言模型前正規化 Unicode 文字,以確保格式一致並移除可能引致問題的字元。此 processor 會處理不同的 Unicode 表示方式並移除控制字元,亦會統一空白格式。
使用範例使用範例 的直接連結
import { UnicodeNormalizer } from '@mastra/core/processors'
const processor = new UnicodeNormalizer({
stripControlChars: true,
collapseWhitespace: true,
})
Constructor 參數Constructor 參數 的直接連結
options?:
Options
Unicode 文字正規化的設定選項
Options
stripControlChars?:
boolean
是否移除控制字元。啟用後,會移除
、
、
以外的控制字元preserveEmojis?:
boolean
是否保留 emoji。停用後,如 emoji 包含控制字元,便可能會被移除
collapseWhitespace?:
boolean
是否合併連續空白。啟用後,多個空格、Tab 或換行會分別合併為一個
trim?:
boolean
是否移除開頭及結尾的空白
傳回值傳回值 的直接連結
id:
string
Processor 識別碼,設為 'unicode-normalizer'
name?:
string
可選的 processor 顯示名稱
processInput:
(args: { messages: MastraDBMessage[]; abort: (reason?: string) => never }) => MastraDBMessage[]
處理輸入訊息以正規化 Unicode 文字
延伸使用範例延伸使用範例 的直接連結
src/mastra/agents/normalized-agent.ts
import { Agent } from '@mastra/core/agent'
import { UnicodeNormalizer } from '@mastra/core/processors'
export const agent = new Agent({
id: 'normalized-agent',
name: 'normalized-agent',
instructions: 'You are a helpful assistant',
model: 'openai/gpt-5.6-sol',
inputProcessors: [
new UnicodeNormalizer({
stripControlChars: true,
preserveEmojis: true,
collapseWhitespace: true,
trim: true,
}),
],
})