UNPKG

rag-cli-tester

Version:

A lightweight CLI tool for testing RAG (Retrieval-Augmented Generation) systems with different embedding combinations

77 lines 2.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AVAILABLE_EMBEDDING_MODELS = void 0; exports.getModelById = getModelById; exports.getModelsByProvider = getModelsByProvider; exports.getLocalModels = getLocalModels; exports.AVAILABLE_EMBEDDING_MODELS = [ // Local Models (Hugging Face Transformers) { id: 'all-minilm-l6-v2-small', name: 'All-MiniLM-L6-v2-Small', dimensions: 384, description: 'Lightweight, fast, good quality for most use cases', provider: 'local', modelPath: 'Xenova/all-MiniLM-L6-v2-small' }, { id: 'all-minilm-l6-v2', name: 'All-MiniLM-L6-v2', dimensions: 384, description: 'Standard version, balanced performance', provider: 'local', modelPath: 'Xenova/all-MiniLM-L6-v2' }, { id: 'all-mpnet-base-v2', name: 'All-MPNet-Base-v2', dimensions: 768, description: 'Higher quality, larger model', provider: 'local', modelPath: 'Xenova/all-mpnet-base-v2' }, { id: 'multi-qa-minilm-l6-cos-v1', name: 'Multi-QA-MiniLM-L6-Cos-v1', dimensions: 384, description: 'Optimized for question-answer similarity', provider: 'local', modelPath: 'Xenova/multi-qa-MiniLM-L6-cos-v1' }, // OpenAI Models { id: 'text-embedding-3-small', name: 'OpenAI Text Embedding 3 Small', dimensions: 1536, description: 'High quality, OpenAI API required', provider: 'openai', apiModel: 'text-embedding-3-small' }, { id: 'text-embedding-3-large', name: 'OpenAI Text Embedding 3 Large', dimensions: 3072, description: 'Highest quality, OpenAI API required', provider: 'openai', apiModel: 'text-embedding-3-large' }, // Gemini Models { id: 'embedding-001', name: 'Gemini Embedding 001', dimensions: 768, description: 'Google Gemini embeddings, API key required', provider: 'gemini', apiModel: 'embedding-001' } ]; function getModelById(id) { return exports.AVAILABLE_EMBEDDING_MODELS.find(model => model.id === id); } function getModelsByProvider(provider) { return exports.AVAILABLE_EMBEDDING_MODELS.filter(model => model.provider === provider); } function getLocalModels() { return getModelsByProvider('local'); } //# sourceMappingURL=embedding-models.js.map