BGE
Milvus prend en charge les modèles de reranker BGE par le biais de la classe BGERerankFunction
. Cette fonctionnalité vous permet d'évaluer efficacement la pertinence des paires requête-document.
Pour utiliser cette fonctionnalité, installez les dépendances nécessaires :
pip install --upgrade pymilvus
pip install "pymilvus[model]"
Ensuite, instanciez la classe BGERerankFunction
:
from pymilvus.model.reranker import BGERerankFunction
# Define the rerank function
bge_rf = BGERerankFunction(
model_name="BAAI/bge-reranker-v2-m3", # Specify the model name. Defaults to `BAAI/bge-reranker-v2-m3`.
device="cpu" # Specify the device to use, e.g., 'cpu' or 'cuda:0'
)
Paramètres
model_name
(chaîne)Le nom du modèle à utiliser. Vous pouvez spécifier n'importe quel nom de modèle de reranker BGE disponible, par exemple,
BAAI/bge-reranker-base
,BAAI/bge-reranker-large
, etc. Si ce paramètre n'est pas spécifié,BAAI/bge-reranker-v2-m3
sera utilisé. Pour obtenir la liste des modèles disponibles, reportez-vous à la section Liste des modèles.device
(chaîne)Facultatif. L'appareil à utiliser pour exécuter le modèle. S'il n'est pas spécifié, le modèle sera exécuté sur l'unité centrale. Vous pouvez spécifier
cpu
pour l'unité centrale etcuda:n
pour le nième périphérique GPU.
Utilisez ensuite le code suivant pour classer les documents en fonction de la requête :
query = "What event in 1956 marked the official birth of artificial intelligence as a discipline?"
documents = [
"In 1950, Alan Turing published his seminal paper, 'Computing Machinery and Intelligence,' proposing the Turing Test as a criterion of intelligence, a foundational concept in the philosophy and development of artificial intelligence.",
"The Dartmouth Conference in 1956 is considered the birthplace of artificial intelligence as a field; here, John McCarthy and others coined the term 'artificial intelligence' and laid out its basic goals.",
"In 1951, British mathematician and computer scientist Alan Turing also developed the first program designed to play chess, demonstrating an early example of AI in game strategy.",
"The invention of the Logic Theorist by Allen Newell, Herbert A. Simon, and Cliff Shaw in 1955 marked the creation of the first true AI program, which was capable of solving logic problems, akin to proving mathematical theorems."
]
results = bge_rf(
query=query,
documents=documents,
top_k=3,
)
for result in results:
print(f"Index: {result.index}")
print(f"Score: {result.score:.6f}")
print(f"Text: {result.text}\n")
Le résultat attendu est similaire à ce qui suit :
Index: 1
Score: 0.991162
Text: The Dartmouth Conference in 1956 is considered the birthplace of artificial intelligence as a field; here, John McCarthy and others coined the term 'artificial intelligence' and laid out its basic goals.
Index: 0
Score: 0.032697
Text: In 1950, Alan Turing published his seminal paper, 'Computing Machinery and Intelligence,' proposing the Turing Test as a criterion of intelligence, a foundational concept in the philosophy and development of artificial intelligence.
Index: 3
Score: 0.006515
Text: The invention of the Logic Theorist by Allen Newell, Herbert A. Simon, and Cliff Shaw in 1955 marked the creation of the first true AI program, which was capable of solving logic problems, akin to proving mathematical theorems.