import { BaseProvider } from './base';
import { TextGenerationParams, TextGenerationResponse, ProviderOptions, ChatCompletionParams } from '../types';
/**
 * 文心一言配置选项
 */
export interface ErnieOptions extends ProviderOptions {
    model?: string;
    apiKey?: string;
    secretKey?: string;
}
/**
 * 文心一言可用的模型列表
 */
export declare enum ErnieModel {
    ERNIE_BOT = "ernie-bot",// 通用对话大模型
    ERNIE_BOT_TURBO = "ernie-bot-turbo",// 快速版大模型
    ERNIE_BOT_4 = "ernie-bot-4",// 旗舰大模型
    ERNIE_SPEED_8K = "ernie-speed-8k",// 速度优化版(8K窗口)
    ERNIE_SPEED_128K = "ernie-speed-128k",// 长文本速度版(128K窗口)
    ERNIE_4_0_8K = "ernie-4.0-8k",// 4.0版(8K窗口)
    ERNIE_4_0_8K_PREVIEW = "ernie-4.0-8k-preview",// 4.0预览版
    ERNIE_3_5_8K = "ernie-3.5-8k",// 3.5版(8K窗口)
    ERNIE_3_5_8K_PREVIEW = "ernie-3.5-8k-preview",// 3.5预览版
    ERNIE_LITE_8K = "ernie-lite-8k",// 轻量版(8K窗口)
    ERNIE_TINY_8K = "ernie-tiny-8k",// 超轻量版(8K窗口)
    ERNIE_CHARACTER_8K = "ernie-character-8k",// 角色扮演模型
    ERNIE_SPEED_APP_BUILDER = "ernie-speed-appbuilder"
}
/**
 * 文心一言接口实现
 */
export declare class ErnieProvider extends BaseProvider {
    readonly name = "Ernie";
    private model;
    private secretKey?;
    private accessToken?;
    private tokenExpireTime;
    /**
     * 创建文心一言服务实例
     */
    constructor(options?: ErnieOptions);
    /**
     * 获取默认API地址
     */
    protected getDefaultBaseUrl(): string;
    /**
     * 获取授权Token
     * 百度API需要先获取访问凭证才能调用
     */
    private getAccessToken;
    /**
     * 生成文本内容
     */
    generateText(params: TextGenerationParams): Promise<TextGenerationResponse>;
    /**
     * 聊天对话功能
     */
    chatCompletion(params: ChatCompletionParams): Promise<TextGenerationResponse>;
    /**
     * 转换消息格式为文心一言API格式
     */
    private convertMessagesToErnieFormat;
    /**
     * 获取文心一言API的模型路径
     */
    private getErnieModelPath;
    /**
     * 生成JSON格式输出
     */
    generateJSON(params: TextGenerationParams): Promise<any>;
}
//# sourceMappingURL=ernie.d.ts.map