Load retriever state from disk
(cls, retriever_cache_file: str, retriever_cache_embeddings_file: str)
| 444 | |
| 445 | @classmethod |
| 446 | def load(cls, retriever_cache_file: str, retriever_cache_embeddings_file: str): |
| 447 | """Load retriever state from disk""" |
| 448 | # Load the pickled state |
| 449 | with open(retriever_cache_file, 'rb') as f: |
| 450 | state = pickle.load(f) |
| 451 | |
| 452 | # Create new instance |
| 453 | retriever = cls(model_name=state['model_name'], alpha=state['alpha']) |
| 454 | retriever.bm25 = state['bm25'] |
| 455 | retriever.corpus = state['corpus'] |
| 456 | retriever.document_ids = state.get('document_ids', {}) |
| 457 | |
| 458 | # Load embeddings from numpy file if it exists |
| 459 | if retriever_cache_embeddings_file.exists(): |
| 460 | retriever.embeddings = np.load(retriever_cache_embeddings_file) |
| 461 | |
| 462 | return retriever |
| 463 | |
| 464 | @classmethod |
| 465 | def load_from_local_memory(cls, memories: Dict, model_name: str, alpha: float) -> bool: |
no test coverage detected