UNPKG

flux-agent

Version:

FluxAgent - 一个可灵活插拔的AI Agent系统框架,基于TypeScript开发,支持流式执行、事件系统、插件系统、知识库管理等功能 (Protected Release) (Protected Release) (Protected Release) (Protected Release) (Protected Release) (Protected Release) (Protected Release) (Protected Release) (Protected Release) (

55 lines (54 loc) 1.68 kB
import { LLMConfig, LLMStreamCallbacks, LLMResponse } from './LLM'; import { RecognizeResult, EmbededText } from './execution/types'; import OpenAI from 'openai'; export interface EmbedConfig { enable: boolean; recognizeLLM: LLMConfig; recognizePrompt: string; generateEmbededTexts: (result: RecognizeResult) => Promise<EmbededText[]>; } export declare class Recognizer { private config; private recognizeLLM?; private cachedGenerateEmbededTexts; constructor(embedConfig: EmbedConfig, onTokenUsage: (llmName: string, usage: OpenAI.CompletionUsage) => void); /** * 检查是否启用了 embed 功能 */ enabled(): boolean; /** * 让内容变成流式输出 */ private streamContent; /** * 处理文本内容,执行完整的 embed 流程 * @param content 待处理的原始文本内容 * @returns 处理后的文本内容 */ process(content: string, callbacks?: LLMStreamCallbacks): Promise<LLMResponse>; /** * 提取内容片段 * @param content 原始文本内容 * @returns 识别结果 */ private extractContentFragments; /** * 对识别数据进行去重处理 * @param data 原始识别数据 * @returns 去重后的数据 */ private deduplicateRecognizeData; /** * 执行 embed 替换 * @param content 原始内容 * @param embededTexts 需要替换的文本映射 * @returns 替换后的内容 */ private performEmbed; /** * 转义正则表达式特殊字符 * @param string 需要转义的字符串 * @returns 转义后的字符串 */ private escapeRegExp; }