import numpy as np from typing import Sequence class Vectorizer: def __init__(self, model) -> None: """ Initialize the vectorizer with a pre-trained embedding model. Args: model: The pre-trained embedding model to use for transforming prompts. """ self.model = model def transform(self, prompts: Sequence[str]) -> np.ndarray: """ Transform texts into numerical vectors using the specified model. Args: prompts: The sequence of raw corpus prompts. Returns: Vectorized prompts as a numpy array. """ # Using 'encode' method for SentenceTransformer model; may need updating for other models (e.g. 'embed') return np.array(self.model.encode(prompts, show_progress_bar=True))