Skip to content
For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Primary navigation

Create vector store

client.VectorStores.New(ctx, body) (*VectorStore, error)
POST/vector_stores

Create a vector store.

ParametersExpand Collapse
body VectorStoreNewParams
ChunkingStrategy param.Field[FileChunkingStrategyParamUnionResp]Optional

The chunking strategy used to chunk the file(s). If not set, will use the auto strategy. Only applicable if file_ids is non-empty.

Description param.Field[string]Optional

A description for the vector store. Can be used to describe the vector store’s purpose.

ExpiresAfter param.Field[VectorStoreNewParamsExpiresAfter]Optional

The expiration policy for a vector store.

FileIDs param.Field[[]string]Optional

A list of File IDs that the vector store should use. Useful for tools like file_search that can access files.

Metadata param.Field[Metadata]Optional

Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard.

Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.

Name param.Field[string]Optional

The name of the vector store.

ReturnsExpand Collapse
type VectorStore struct{…}

A vector store is a collection of processed files can be used by the file_search tool.

ID string

The identifier, which can be referenced in API endpoints.

CreatedAt int64

The Unix timestamp (in seconds) for when the vector store was created.

formatunixtime
FileCounts VectorStoreFileCounts
LastActiveAt int64

The Unix timestamp (in seconds) for when the vector store was last active.

formatunixtime
Metadata Metadata

Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard.

Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.

Name string

The name of the vector store.

Object VectorStore

The object type, which is always vector_store.

Status VectorStoreStatus

The status of the vector store, which can be either expired, in_progress, or completed. A status of completed indicates that the vector store is ready for use.

UsageBytes int64

The total number of bytes used by the files in the vector store.

ExpiresAfter VectorStoreExpiresAfterOptional

The expiration policy for a vector store.

ExpiresAt int64Optional

The Unix timestamp (in seconds) for when the vector store will expire.

formatunixtime

Create vector store

package main

import (
  "context"
  "fmt"

  "github.com/openai/openai-go"
  "github.com/openai/openai-go/option"
)

func main() {
  client := openai.NewClient(
    option.WithAPIKey("My API Key"),
  )
  vectorStore, err := client.VectorStores.New(context.TODO(), openai.VectorStoreNewParams{

  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", vectorStore.ID)
}
{
  "id": "vs_abc123",
  "object": "vector_store",
  "created_at": 1699061776,
  "name": "Support FAQ",
  "description": "Contains commonly asked questions and answers, organized by topic.",
  "bytes": 139920,
  "file_counts": {
    "in_progress": 0,
    "completed": 3,
    "failed": 0,
    "cancelled": 0,
    "total": 3
  }
}
Returns Examples
{
  "id": "vs_abc123",
  "object": "vector_store",
  "created_at": 1699061776,
  "name": "Support FAQ",
  "description": "Contains commonly asked questions and answers, organized by topic.",
  "bytes": 139920,
  "file_counts": {
    "in_progress": 0,
    "completed": 3,
    "failed": 0,
    "cancelled": 0,
    "total": 3
  }
}