Use VECTOR.GET to read back the vector stored under an ID.
The reply is the vector's elements as doubles, in the order they were written. Because the index stores them as 32-bit floats, the values come back with float precision rather than exactly as sent, which matters when comparing them against the original embedding.
An ID that is not in the index replies null, while an index that does not exist is an error, so the two cases stay distinguishable.
Vector indexes are an Upstash extension. See the vector command overview for how an index is created, written to, and queried.
Syntax#
Arguments#
| Argument | Required | Repeatable | Description |
|---|---|---|---|
<index> | Yes | No | Key holding the vector index. |
<id> | Yes | No | Identifier to read. Cannot be empty. |
Important points#
- An index that does not exist returns
ERR Index <index> is not found; an ID that is not in an existing index replies null.
Response#
The reply reports the result of the operation. Error replies have the same shape in RESP2 and RESP3 and are surfaced as exceptions by the SDKs below.
| Protocol | Reply |
|---|---|
| RESP2 | Array of bulk strings containing numbers, or Null array |
| RESP3 | Array of doubles, or Null |
Client libraries often decode bulk strings, maps, sets, and numeric strings into language-native values. The table describes the Redis wire reply.
Examples#
TCP examples use the TLS REDIS_URL from the Upstash console. REST examples use UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN.
Redis CLI
@upstash/redis
This command is not supported yet in @upstash/redis.
upstash_redis
This command is not supported yet in upstash_redis.