@callmedayz/ai-prompt-toolkit
Version:
Professional AI prompt engineering toolkit with advanced template features, real-time dashboards, conditional logic, template inheritance, live monitoring, OpenRouter integration, and 310+ model support
79 lines • 2.77 kB
TypeScript
import { TokenCountResult, ChunkOptions, ValidationResult, OptimizationResult, SupportedModel } from './types';
/**
* Get accurate token count using OpenRouter API (async)
*/
export declare function getTokenCount(text: string, model?: SupportedModel): Promise<TokenCountResult>;
/**
* Get detailed token count with native tokenizer information
*/
export declare function getDetailedTokenCount(text: string, model?: SupportedModel): Promise<TokenCountResult & {
generationId?: string;
nativeTokens?: number;
}>;
/**
* Compare estimation accuracy against real API tokenization
*/
export declare function compareTokenCounts(text: string, model?: SupportedModel): Promise<{
estimated: TokenCountResult;
actual: TokenCountResult;
difference: number;
accuracy: number;
}>;
/**
* Quick token estimation utility function (synchronous fallback)
*/
export declare function estimateTokens(text: string, model?: SupportedModel): TokenCountResult;
/**
* Quick text chunking utility function
*/
export declare function chunkText(text: string, options: ChunkOptions): string[];
/**
* Quick prompt validation utility function
*/
export declare function validatePrompt(prompt: string, model?: SupportedModel): ValidationResult;
/**
* Quick prompt optimization utility function
*/
export declare function optimizePrompt(prompt: string, model?: SupportedModel): OptimizationResult;
/**
* Check if text fits in a specific model's context window
*/
export declare function fitsInModel(text: string, model: SupportedModel): boolean;
/**
* Get the best model recommendation for a given text
*/
export declare function recommendModel(text: string): {
model: SupportedModel;
reason: string;
};
/**
* Calculate the cost of processing text with a specific model
*/
export declare function calculateCost(text: string, model: SupportedModel): number;
/**
* Get a quality score for a prompt (0-100)
*/
export declare function getPromptQuality(prompt: string, model?: SupportedModel): number;
/**
* Chunk text specifically for a model with optimal settings
*/
export declare function chunkForModel(text: string, model: SupportedModel, overlapPercent?: number): string[];
/**
* Optimize prompt to fit within a specific token limit
*/
export declare function optimizeToTarget(prompt: string, targetTokens: number, model?: SupportedModel): OptimizationResult;
/**
* Get comprehensive analysis of a prompt
*/
export declare function analyzePrompt(prompt: string, model?: SupportedModel): {
tokens: TokenCountResult;
validation: ValidationResult;
quality: number;
recommendation: {
model: SupportedModel;
reason: string;
};
fitsInModel: boolean;
cost: number;
};
//# sourceMappingURL=utils.d.ts.map