UNPKG

crewai-ts

Version:

TypeScript port of crewAI for agent-based workflows

77 lines 2.12 kB
/** * OpenAI Embedder Implementation * * Optimized embedder using OpenAI's text embedding models * with performance enhancements for production use */ import { BaseEmbedder, BaseEmbedderOptions } from './BaseEmbedder.js'; import OpenAI from 'openai'; /** * OpenAI Embedder Options */ export interface OpenAIEmbedderOptions extends BaseEmbedderOptions { /** * OpenAI API key */ apiKey?: string; /** * OpenAI Organization ID */ organization?: string; /** * OpenAI API URL * @default 'https://api.openai.com/v1/embeddings' */ apiUrl?: string; /** * Timeout for API requests in milliseconds * @default 30000 (30 seconds) */ timeout?: number; } /** * OpenAI Embedder Implementation * * Uses OpenAI's powerful embedding models with optimized performance */ export declare class OpenAIEmbedder extends BaseEmbedder<OpenAIEmbedderOptions> { /** * API key for OpenAI */ private apiKey; /** * API URL */ private apiUrl; /** * OpenAI Organization ID */ private organization?; /** * Request timeout */ private timeout; /** * OpenAI client */ protected client: OpenAI; /** * Constructor for OpenAIEmbedder */ constructor(options?: OpenAIEmbedderOptions); /** * Embed text using OpenAI's embedding API * @param text Text to embed * @returns Promise resolving to Float32Array of embeddings */ embed(text: string): Promise<Float32Array>; /** * Embed batch of texts using OpenAI's embedding API * @param texts Texts to embed * @returns Promise resolving to Float32Array[] of embeddings */ embedBatch(texts: string[]): Promise<Float32Array[]>; protected executeWithRetry<T>(operation: () => Promise<T>, maxRetries?: number, initialBackoff?: number, maxBackoff?: number): Promise<T>; protected executeBatchWithRetry<T>(operation: () => Promise<T>, maxRetries?: number, initialBackoff?: number, maxBackoff?: number): Promise<T>; } //# sourceMappingURL=OpenAIEmbedder.d.ts.map