File size: 977 Bytes
579b50b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from abc import ABC, abstractmethod


class AStore(ABC):
    '''
        Classe abstraite de base pour tous les stores :
            Chroma
            Perso
            ...
    '''
    
    @abstractmethod
    def reset(self)->None:
        pass
        
    @abstractmethod
    def print_infos(self)->None:
        pass
    
    @abstractmethod    
    def add_to_collection(self, collection_name:str, source:str, vectors:list[list[float]], chunks:list[str])->None:
        pass
    
    @abstractmethod  
    def delete_collection(self, name:str)->None:
        pass
    
    @abstractmethod
    def get_similar_vector(self, vector:list[float], collection_name:str)->list[float]:
        pass
        
    @abstractmethod
    def get_similar_chunk(self, query_vector:list[float], collection_name:str)->tuple[str, str]:
        pass
        
    @abstractmethod
    def get_similar_chunks(self, query_vector:list[float], count:int, collection_name:str):
        pass