Skip to content

Configure Vector Store

vector_stores.configure(strvector_store_name, VectorStoreConfigureParams**kwargs) -> VectorStore
POST/v5/vector-stores/{vector_store_name}/configure

Update the indexed metadata fields configuration for a vector store.

This replaces the current set of indexed metadata fields. Only indexed fields can be used for filtering during query, list, and count operations; non-indexed fields are still stored and returned, but cannot be filtered on.

Field Types: Only STRING, NUMBER, and BOOLEAN fields can be indexed (maximum 20 fields). OBJECT and LIST types are stored but cannot be indexed for filtering.

Adding Fields: New indexed fields can be added at any time. They are indexed for documents upserted after the change; to make existing documents filterable on a new field, re-upsert them.

Removing Fields: Omitting a field removes it from this configuration, so it can no longer be filtered on. The underlying index is append-only, so removal does not reclaim storage or reduce write overhead; the field stays in the physical index until the store is recreated. Prefer indexing only the fields you filter on.

Note: The name and embedding_config are immutable after creation.

ParametersExpand Collapse
vector_store_name: str

The name of the vector store

indexed_metadata_fields: Dict[str, Literal["string", "number", "boolean"]]

Dictionary mapping metadata field names to their types. Only STRING, NUMBER, and BOOLEAN types can be indexed.

One of the following:
"string"
"number"
"boolean"
ReturnsExpand Collapse
class VectorStore: …

Response model for vector store operations.

id: str

The unique identifier of the vector store

created_at: datetime

Timestamp of creation

formatdate-time
embedding_dimensions: int

Dimensionality of the embedding vectors

name: str

The name of the vector store

updated_at: datetime

Timestamp of last update

formatdate-time
embedding_config: Optional[EmbeddingConfig]

Embedding configuration identifying the model and its type. None for raw-embedding-only stores.

One of the following:
class EmbeddingConfigModelsAPI: …
model_deployment_id: str

The ID of the deployment of the created model in the Models API V3.

type: Literal["models_api"]

The type of the embedding configuration.

class EmbeddingConfigBase: …
embedding_model: Union[EmbeddingModelName, str]

The name of the base embedding model to use. Either a known base model (EmbeddingModelName) or, in ray-serve deployments with NATIVE_OPENAI_EMBEDDING_GATEWAY enabled, any model id served by the OpenAI-compatible inference proxy (e.g. ‘nomic-embed-text-v1.5’). For fully custom deployments, use type ‘models_api’ with a model_deployment_id.

One of the following:
Literal["sentence-transformers/all-MiniLM-L12-v2", "sentence-transformers/multi-qa-distilbert-cos-v1", "openai/text-embedding-ada-002", 8 more]
One of the following:
"sentence-transformers/all-MiniLM-L12-v2"
"sentence-transformers/multi-qa-distilbert-cos-v1"
"openai/text-embedding-ada-002"
"openai/text-embedding-3-small"
"openai/text-embedding-3-large"
"embed-english-v3.0"
"embed-english-light-v3.0"
"embed-multilingual-v3.0"
"gemini/text-embedding-005"
"gemini/text-multilingual-embedding-002"
"gemini/gemini-embedding-001"
str
type: Optional[Literal["base"]]

The type of the embedding configuration.

indexed_metadata_fields: Optional[Dict[str, Literal["string", "number", "boolean"]]]

Dictionary mapping metadata field names to their types

One of the following:
"string"
"number"
"boolean"

Configure Vector Store

import os
from scale_gp_beta import SGPClient

client = SGPClient(
    api_key=os.environ.get("SGP_API_KEY"),  # This is the default and can be omitted
)
vector_store = client.vector_stores.configure(
    vector_store_name="vector_store_name",
    indexed_metadata_fields={
        "foo": "string"
    },
)
print(vector_store.id)
{
  "id": "id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "embedding_dimensions": 0,
  "name": "name",
  "updated_at": "2019-12-27T18:11:19.117Z",
  "embedding_config": {
    "model_deployment_id": "model_deployment_id",
    "type": "models_api"
  },
  "indexed_metadata_fields": {
    "foo": "string"
  }
}
Returns Examples
{
  "id": "id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "embedding_dimensions": 0,
  "name": "name",
  "updated_at": "2019-12-27T18:11:19.117Z",
  "embedding_config": {
    "model_deployment_id": "model_deployment_id",
    "type": "models_api"
  },
  "indexed_metadata_fields": {
    "foo": "string"
  }
}