@craftapit/tester
Version:
A focused, LLM-powered testing framework for natural language test scenarios
39 lines (38 loc) • 1.24 kB
TypeScript
/**
* A simple embedding utility that converts text to vector embeddings
* This is a lightweight alternative to using full ML-based embedding models
* Note: This produces lower quality embeddings than specialized models but works without external dependencies
*/
export declare class SimpleEmbedding {
private dimension;
private seed;
/**
* Create a new SimpleEmbedding instance
* @param dimension The dimension of the embedding vectors (default: 1536)
* @param seed Random seed for reproducibility (default: 42)
*/
constructor(dimension?: number, seed?: number);
/**
* Generate an embedding vector for the given text
* @param text The text to embed
* @returns Embedding vector
*/
embed(text: string): number[];
/**
* Normalize and clean text for embedding
*/
private normalizeText;
/**
* Generate a deterministic vector based on text content
* Uses a simple hashing approach to create vectors that preserve some semantic similarity
*/
private generateVector;
/**
* Simple seeded string hash function
*/
private seededHash;
/**
* Normalize vector to unit length
*/
private normalizeVector;
}