/** * LLM API 统一调用工具类 * 支持多种模型提供商:OpenAI、Ollama、智谱AI等 * 支持普通输出和流式输出 */ import { DEFAULT_MODEL_SETTINGS, ProviderType } from './constant/model'; import { LLMClientConfig, Message, ChatOptions } from './types'; /** * 统一的 LLM 客户端类 * 根据配置选择不同的提供商客户端实现 */ export declare class LLMClient { private config; private client; /** * 创建 LLM 客户端实例 * @param config - 配置信息 */ constructor(config?: LLMClientConfig); /** * 兼容之前版本的用户配置 * @param provider - 提供商ID * @param endpoint - API端点 * @returns 处理后的API端点 */ private _handleEndpoint; /** * 根据提供商创建对应的客户端实例 * @param provider - 提供商ID * @param config - 配置信息 * @returns 客户端实例 */ private _createClient; /** * 调用客户端方法的通用封装 * @param method - 方法名 * @param args - 方法参数 * @returns 方法执行结果 */ private _callClientMethod; /** * 生成对话响应 * @param prompt - 用户输入的提示词或对话历史 * @param options - 可选参数 * @returns 返回模型响应 */ chat(prompt: string | Message[], options?: ChatOptions): Promise; /** * 流式生成对话响应 * @param prompt - 用户输入的提示词或对话历史 * @param options - 可选参数 * @returns 返回可读流 */ chatStream(prompt: string | Message[], options?: ChatOptions): Promise; /** * 纯API流式生成对话响应 * @param prompt - 用户输入的提示词或对话历史 * @param options - 可选参数 * @returns 返回原生Response对象 */ chatStreamAPI(prompt: string | Message[], options?: ChatOptions): Promise; /** * 获取模型响应 * @param prompt - 提示词或对话历史 * @param options - 可选参数 * @returns 模型响应文本 */ getResponse(prompt: string | Message[], options?: ChatOptions): Promise; /** * 获取带有思维链的模型响应 * @param prompt - 提示词或对话历史 * @param options - 可选参数 * @returns 包含回答和思维链的对象 */ getResponseWithCOT(prompt: string | Message[], options?: ChatOptions): Promise<{ answer: string; cot: string; }>; } export { Message, ChatOptions, LLMClientConfig, ProviderType, DEFAULT_MODEL_SETTINGS }; export { extractJsonFromLLMOutput, extractThinkChain, extractAnswer } from './utils/llm-output';