
Esta biblioteca usa um formato universal para conjuntos de dados vetoriais para exportar e importar facilmente dados de todos os bancos de dados do vetor.
Solicite o apoio a um vectordb votando/comentando nesta enquete
Consulte a seção contribuinte para adicionar suporte ao seu banco de dados vetorial favorito.

| Banco de dados vetorial | Importar | Exportar |
|---|---|---|
| Pinecone | ✅ | ✅ |
| QDRANT | ✅ | ✅ |
| Milvus | ✅ | ✅ |
| Pesquisa de vetor de Ai do vértice do GCP | ✅ | ✅ |
| Kdb.ai | ✅ | ✅ |
| Lancedb | ✅ | ✅ |
| DataStax Astra DB | ✅ | ✅ |
| Chroma | ✅ | ✅ |
| Turbopuffer | ✅ | ✅ |
| Banco de dados vetorial | Importar | Exportar |
|---|
| Banco de dados vetorial | Importar | Exportar |
|---|---|---|
| Azure AI Search | ||
| Tecelava | ||
| Atlas MongoDB | ||
| OpenSearch | ||
| Apache Cassandra | ||
| txtai | ||
| PGVECTOR | ||
| SQLITE-VSS |
| Banco de dados vetorial | Importar | Exportar |
|---|---|---|
| Vespa | ||
| Marqo | ||
| Elasticsearch | ||
| Pesquisa de Redis | ||
| Clickhouse | ||
| Pesquisa | ||
| Rockset | ||
| Epsilla | ||
| ActiveLoop Deep Lake | ||
| Apertoubb | ||
| CratedB | ||
| Meilisearch | ||
| MyScale | ||
| Neo4j | ||
| Nuclia db | ||
| Oramasearch | ||
| TieSens | ||
| Anari ai | ||
| Vald | ||
| Apache Solr |
pip install vdf-iogit clone https://github.com/AI-Northstar-Tech/vector-io.git
cd vector-io
pip install -r requirements.txt class NamespaceMeta ( BaseModel ):
namespace : str
index_name : str
total_vector_count : int
exported_vector_count : int
dimensions : int
model_name : str | None = None
vector_columns : List [ str ] = [ "vector" ]
data_path : str
metric : str | None = None
index_config : Optional [ Dict [ Any , Any ]] = None
schema_dict : Optional [ Dict [ str , Any ]] = None
class VDFMeta ( BaseModel ):
version : str
file_structure : List [ str ]
author : str
exported_from : str
indexes : Dict [ str , List [ NamespaceMeta ]]
exported_at : str
id_column : Optional [ str ] = Noneexport_vdf --help
usage: export_vdf [-h] [-m MODEL_NAME]
[--max_file_size MAX_FILE_SIZE]
[--push_to_hub | --no-push_to_hub]
[--public | --no-public]
{pinecone,qdrant,kdbai,milvus,vertexai_vectorsearch}
...
Export data from various vector databases to the VDF format for vector datasets
options:
-h, --help show this help message and exit
-m MODEL_NAME, --model_name MODEL_NAME
Name of model used
--max_file_size MAX_FILE_SIZE
Maximum file size in MB (default:
1024)
--push_to_hub, --no-push_to_hub
Push to hub
--public, --no-public
Make dataset public (default:
False)
Vector Databases:
Choose the vectors database to export data from
{pinecone,qdrant,kdbai,milvus,vertexai_vectorsearch}
pinecone Export data from Pinecone
qdrant Export data from Qdrant
kdbai Export data from KDB.AI
milvus Export data from Milvus
vertexai_vectorsearch
Export data from Vertex AI Vector
Searchimport_vdf --help
usage: import_vdf [-h] [-d DIR] [-s | --subset | --no-subset]
[--create_new | --no-create_new]
{milvus,pinecone,qdrant,vertexai_vectorsearch,kdbai}
...
Import data from VDF to a vector database
options:
-h, --help show this help message and exit
-d DIR, --dir DIR Directory to import
-s, --subset, --no-subset
Import a subset of data (default: False)
--create_new, --no-create_new
Create a new index (default: False)
Vector Databases:
Choose the vectors database to export data from
{milvus,pinecone,qdrant,vertexai_vectorsearch,kdbai}
milvus Import data to Milvus
pinecone Import data to Pinecone
qdrant Import data to Qdrant
vertexai_vectorsearch
Import data to Vertex AI Vector Search
kdbai Import data to KDB.AIEste script Python é usado para reembonte de um conjunto de dados de vetor. É necessário um diretório de conjunto de dados vetoriais no formato VDF e o reembolsou usando um novo modelo. O script também permite especificar o nome da coluna que contém o texto a ser incorporado.
reembed_vdf --help
usage: reembed_vdf [-h] -d DIR [-m NEW_MODEL_NAME]
[-t TEXT_COLUMN]
Reembed a vector dataset
options:
-h, --help show this help message and exit
-d DIR, --dir DIR Directory of vector dataset in
the VDF format
-m NEW_MODEL_NAME, --new_model_name NEW_MODEL_NAME
Name of new model to be used
-t TEXT_COLUMN, --text_column TEXT_COLUMN
Name of the column containing
text to be embeddedexport_vdf -m hkunlp/instructor-xl --push_to_hub pinecone --environment gcp-starter
import_vdf -d /path/to/vdf/dataset milvus
reembed_vdf -d /path/to/vdf/dataset -m sentence-transformers/all-MiniLM-L6-v2 -t titleSiga o prompt para selecionar o índice e o intervalo de ID para exportar.
Se você deseja adicionar uma implementação de importação/exportação para um novo banco de dados vetorial, também deve implementar o outro lado da importação/exportação para o mesmo banco de dados. Por favor, pegue o repositório e envie um PR para os scripts de importação e exportação.
Etapas para adicionar um novo banco de dados vetorial (ABC):
src/vdf_io/export_vdf/export_abc.py e src/vdf_io/import_vdf/import_abc.py para o novo DB.Exportação :
Importação :
Se você deseja alterar a especificação do VDF, abra um problema para discutir a alteração antes de enviar um PR.
Se você deseja melhorar a eficiência dos scripts de importação/exportação, bire o repositório e envie um PR.
A execução dos scripts no repositório enviará dados de uso anônimo para a AI Northstar Tech para ajudar a melhorar a biblioteca.
Você pode optar por isso definindo a variável de ambiente DISABLE_TELEMETRY_VECTORIO como 1 .
Se você tiver alguma dúvida, abra um problema no repo ou mensagem Dhruv Anand no LinkedIn
Dhruv Anand ? | Jayesh Rathi | Jordan Totten |