upstash/vector is a PHP SDK for Upstash Vector, enabling easier operations on Vector Store.

Using upstash/vector you can:

  • Upsert a vector with metadata to an index.
  • Fetching the vectors with specified IDs.
  • Querying a vector over pre-defined embeddings.
  • Remove vectors from an index.
  • Access index stats.
  • Reset everything related to an index.

You can find the Github Repository here.

Install

composer
composer require upstash/vector

Usage

Initializing the client

There are two pieces of configuration required to use the Upstash vector client: a REST token and REST URL. These values can be passed using environment variables or in code through the initialization of the Index. Find your configuration values in the console dashboard at https://console.upstash.com/.

Using environment variables

The environment variables used to configure the client are the following. You can follow this guide to retrieve credentials.

UPSTASH_VECTOR_REST_URL="your_rest_url"
UPSTASH_VECTOR_REST_TOKEN="your_rest_token"

When these environment variables are set, you can initialize the client from the environment.

use Upstash\Vector\Index;

$index = Index::fromEnv();

Manual Initialization

If you prefer to pass these values in code, the constructor accepts as parameters the url and token values. This could be useful if your application needs to interact with multiple projects, each with a different configuration.

use Upstash\Vector\Index;

$index = new Index(
  url: "<UPSTASH_VECTOR_REST_URL>",
  token: "<UPSTASH_VECTOR_REST_TOKEN>",
);