milvus-logo
LFAI
Home
  • Modelos

Codificador cruzado

Milvus suporta Cross-Encoders através da classe CrossEncoderRerankFunction. Esta funcionalidade permite-lhe avaliar a relevância dos pares consulta-documento de forma eficaz.

Para utilizar esta funcionalidade, instale as dependências necessárias:

pip install --upgrade pymilvus
pip install "pymilvus[model]"

De seguida, instanciar a classe CrossEncoderRerankFunction:

from pymilvus.model.reranker import CrossEncoderRerankFunction

# Define the rerank function
ce_rf = CrossEncoderRerankFunction(
    model_name="cross-encoder/ms-marco-MiniLM-L-6-v2",  # Specify the model name.
    device="cpu" # Specify the device to use, e.g., 'cpu' or 'cuda:0'
)

Parâmetros:

  • model_name (string)

    O nome do modelo a utilizar. Pode especificar qualquer um dos nomes de modelos Cross-Encoder disponíveis, por exemplo, cross-encoder/ms-marco-TinyBERT-L-2-v2, cross-encoder/ms-marco-MiniLM-L-2-v2, etc. Se este parâmetro não for especificado, será utilizada uma cadeia vazia. Para obter uma lista dos modelos disponíveis, consulte Pré-treinados Cross-Encoders.

  • device (string)

    O dispositivo a utilizar para executar o modelo. Você pode especificar cpu para a CPU e cuda:n para o enésimo dispositivo GPU.

Em seguida, use o código a seguir para ranquear documentos com base na consulta:

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 = ce_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")

O resultado esperado é semelhante ao seguinte:

Index: 1
Score: 6.250533
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: -2.954602
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: -4.771512
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.

Traduzido porDeepL

Tabela de conteúdos

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
Feedback

Esta página foi útil?