Skip to main content

Official Python SDK for Vecto

Project description

DocsBlogDiscordTutorials

Vecto Python SDK

Official Python SDK for Vecto, the database software that puts intelligent search and powerful models at your fingertips, allowing you to leverage the full potential of AI in mere minutes.

Installation

You can install the package from our latest GitHub release.

pip install vecto-sdk

Alternatively you can also download the latest wheel file from the releases page.

For the token, sign up for your access here.

Building the Wheel

If you would like to build your own wheel, run python setup.py bdist_wheel --universal which creates a .whl file in the dist folder. You can install that wheel file with pip install dist/vecto-*.whl into your current environment (if the file is in the current working directory).

Sample Usage

For first time users, we recommend using our VectorSpace interface.

Find Nearest Neighbors

import vecto
vecto.api_key = os.getenv("VECTO_API_KEY", "")
vector_space = vecto.VectorSpace("my-cool-ai")

for animal in ["lion", "wolf", "cheetah", "giraffe", "elephant", "rhinoceros", "hyena", "zebrah"]:
    vector_space.ingest_text(animal, { 'text': animal, 'region': 'Africa' })

similar_animals = vector_space.lookup_text("cat", top_k=3)
                        
for animal in similar_animals:
    print(f"{animal.attributes['text']} similarity: {animal.similarity:.2%}")

# Prints: "lion similarity: 84.91%"

Ingest Text or Images

import vecto
from pathlib import Path
vecto.api_key = os.getenv("VECTO_API_KEY", "")
vector_space = vecto.VectorSpace("my-cool-image-ai")

if not vector_space.exists():
    vector_space.create(model='CLIP', modality='IMAGE') 

for animal in ["lion.png", "wolf.png", "cheetah.png", "giraffe.png", "elephant.png", "rhinoceros.png", "hyena.png", "zebra.png"]:
    vector_space.ingest_image(Path(animal), { 'text': animal.replace('.png', ''), 'region': 'Africa' })

similar_animals = vector_space.lookup_image(Path("cat.png"), top_k=1)

for animal in similar_animals:
    print(f"{animal.attributes['text']}")

# Prints: lion

Looking up by Analogy

import vecto
vecto.api_key = os.getenv("VECTO_API_KEY", "")
vector_space = vecto.VectorSpace("word_space")

if not vector_space.exists():
    vector_space.create(model='SBERT', modality='TEXT') 

for word in ["man", "woman", "child", "mother", "father", "boy", "girl", "king", "queen"]:
    vector_space.ingest_text(word, { 'text': word })

analogy = vector_space.compute_text_analogy("king", { 'start': 'man', 'end': 'woman' }, top_k=3)

for word in analogy:
    print(f"{word.attributes['text']} similarity: {word.similarity:.2%}")

# Prints: "queen similarity: 93.41%"

For more advanced capabilities including management access, we recommend using the core Vecto class.

Tutorial

We have a new Vecto tutorial! Checkout the Vecto tutorials repository.

Developers Discord

Have any questions? Feel free to chat with the devs at our Discord!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

vecto_sdk-0.2.3-py2.py3-none-any.whl (20.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page