• Informazioni su Milvus
  • Iniziare
  • Concetti
  • Guida per l'utente
    • Collezioni
    • Schema e campi dati
    • Inserisci e cancella
    • Indici
    • Ricerca
    • Incorporazione e riclassificazione
    • Ottimizzazione dello stoccaggio
  • Importazione dei dati
  • Strumenti AI
  • Guida all'amministrazione
  • Strumenti
  • Integrazioni
  • Tutorial
  • Domande frequenti
  • API Reference

BIN_FLAT

L'indice BIN_FLAT è una variante dell'indice FLAT, creata esclusivamente per le incorporazioni binarie. Eccelle nelle applicazioni in cui la ricerca della somiglianza vettoriale richiede una precisione perfetta su insiemi di dati relativamente piccoli e di dimensioni milionarie. Utilizzando una metodologia di ricerca esaustiva - confrontando ogni input di destinazione con tutti i vettori del set di dati - BIN_FLAT garantisce risultati esatti. Questa precisione lo rende un benchmark ideale per valutare le prestazioni di altri indici che potrebbero offrire un richiamo inferiore al 100%, sebbene il suo approccio approfondito lo renda anche l'opzione più lenta per i dati su larga scala.

Costruire l'indice

Per costruire un indice BIN_FLAT su un campo vettoriale in Milvus, utilizzare il metodo add_index(), specificando i parametri index_type e metric_type per l'indice.

from pymilvus import MilvusClient

# Prepare index building params
index_params = MilvusClient.prepare_index_params()

index_params.add_index(
    field_name="your_binary_vector_field_name", # Name of the vector field to be indexed
    index_type="BIN_FLAT", # Type of the index to create
    index_name="vector_index", # Name of the index to create
    metric_type="HAMMING", # Metric type used to measure similarity
    params={} # No additional parameters required for BIN_FLAT
)

In questa configurazione:

  • index_type: Il tipo di indice da costruire. In questo esempio, impostare il valore su BIN_FLAT.

  • metric_type: Il metodo utilizzato per calcolare la distanza tra i vettori. I valori supportati per le incorporazioni binarie sono HAMMING (predefinito) e JACCARD. Per i dettagli, fare riferimento a Tipi di metriche.

  • params: Per l'indice BIN_FLAT non sono necessari parametri aggiuntivi.

Una volta configurati i parametri dell'indice, è possibile creare l'indice utilizzando direttamente il metodo create_index() o passando i parametri dell'indice nel metodo create_collection. Per maggiori dettagli, consultare la sezione Creare una raccolta.

Ricerca nell'indice

Una volta creato l'indice e inserite le entità, è possibile eseguire ricerche di similarità sull'indice.

res = MilvusClient.search(
    collection_name="your_collection_name", # Collection name
    anns_field="binary_vector_field",  # Binary vector field name
    data=[query_binary_vector],  # Query binary vector
    limit=3,  # TopK results to return
    search_params={"params": {}}  # No additional parameters required for BIN_FLAT
)

Per ulteriori informazioni, consultare Vettore binario.

Parametri dell'indice

Per l'indice BIN_FLAT, non sono necessari parametri aggiuntivi né durante la creazione dell'indice né durante il processo di ricerca.

Try Managed Milvus for Free

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

Get Started
Feedback

Questa pagina è stata utile?