Skip to main content
Perform powerful similarity searches across your vector data using text queries or vector inputs for intelligent content discovery.

Search Your Vectors

  • CLI
  • Python SDK
  • JavaScript SDK
gravixlayer vectors vector search-text <index-id> --query "sample document" --model "baai/bge-large-en-v1.5" --top-k 5
Example Output:
Text search in index: a6012e38-8742-463b-bf1d-96f46a583923
SUCCESS: Text search completed in 59ms
   Usage: {'prompt_tokens': 2, 'total_tokens': 2}
   Found 1 result(s):

1. Vector ID: sample-doc-1
   Score: 0.953193

Search with Vector Embeddings

  • CLI
  • Python SDK
  • JavaScript SDK
# Search with vector
gravixlayer vectors vector search <index-id> --embedding "[0.1,0.2,0.3,0.4,0.5]" --top-k 3

Advanced Search with Filters

  • Python SDK
  • JavaScript SDK
import os
from gravixlayer import GravixLayer

client = GravixLayer()

index_id = "your-index-id"
vectors = client.vectors.index(index_id)

# Search with metadata filters
results = vectors.search_text(
    query="machine learning",
    model="baai/bge-large-en-v1.5",
    top_k=10,
    filter={
        "category": "technology",
        "difficulty": "beginner"
    }
)

print(f"Filtered search found {len(results.hits)} results")
for hit in results.hits:
    print(f"ID: {hit.id}")
    print(f"Score: {hit.score:.6f}")
    print(f"Metadata: {hit.metadata}")
    print("---")

Batch Search Operations

  • Python SDK
  • JavaScript SDK
import os
from gravixlayer import GravixLayer

client = GravixLayer()

index_id = "your-index-id"
vectors = client.vectors.index(index_id)

# Multiple text searches
queries = [
    "machine learning algorithms",
    "artificial intelligence",
    "deep learning networks"
]

for i, query in enumerate(queries):
    results = vectors.search_text(
        query=query,
        model="baai/bge-large-en-v1.5",
        top_k=3
    )
    print(f"Query {i+1}: '{query}'")
    print(f"Found {len(results.hits)} results")
    
    for hit in results.hits:
        print(f"  - {hit.id}: {hit.score:.4f}")
    print()

Search Performance Tips

Optimize Query Performance

  • Python SDK
  • JavaScript SDK
import os
from gravixlayer import GravixLayer
import time

client = GravixLayer()

index_id = "your-index-id"
vectors = client.vectors.index(index_id)

def benchmark_search(query, iterations=5):
    """Benchmark search performance"""
    times = []
    
    for i in range(iterations):
        start_time = time.time()
        results = vectors.search_text(
            query=query,
            model="baai/bge-large-en-v1.5",
            top_k=10
        )
        end_time = time.time()
        
        search_time = (end_time - start_time) * 1000  # Convert to ms
        times.append(search_time)
        
        print(f"Iteration {i+1}: {search_time:.2f}ms, {len(results.hits)} results")
    
    avg_time = sum(times) / len(times)
    print(f"Average search time: {avg_time:.2f}ms")
    
    return avg_time

# Benchmark your searches
benchmark_search("artificial intelligence")
I