文件

命令列參考

本頁整理 Store.Exec 與內附 REPL 接受的所有指令。

指令總覽

指令 語法 用途
GET GET <key> 讀取 key 或 dotted JSON field
SET SET <key> <value> [NX|XX] [seconds] [VECTOR] 寫入 value,並可指定條件、TTL 與 embedding
EXIST EXIST <key> 檢查 key 或 field 是否存在
TYPE TYPE <key> 回傳偵測到的 value type
DEL DEL <key> [key2] ... 刪除 key 或單一 dotted field
INCR INCR <key> [delta] 遞增數值 key 或 field
TTL TTL <key> 回傳剩餘 lifetime
EXPIRE EXPIRE <key> <seconds> 設定相對過期時間
EXPIREAT EXPIREAT <key> <timestamp> 設定絕對 Unix 過期時間
PERSIST PERSIST <key> 移除過期時間
KEYS KEYS <pattern> 列出符合 glob 的 key
FIND FIND <op> <value> [LIMIT <n>] 比較完整 stored value
QUERY QUERY <expression> [LIMIT <n>] 篩選 JSON document
VSEARCH VSEARCH <text> [MATCH <pattern>] [LIMIT <n>] 搜尋已向量化 key
VSIM VSIM <key1> <key2> 計算 vector similarity
VGET VGET <key> 回傳 stored vector
SELECT SELECT <db> 切換 0 到 15 的目前資料庫

Key 與 Field 指令

GET

GET <key>

Dotted key 會讀取巢狀 JSON field。Key 或 field 不存在時回傳 (nil)

SET

SET <key> <value> [NX|XX] [seconds] [VECTOR]

NX 要求頂層 key 不存在;XX 要求 key 已存在。尾端正整數會設定秒數 TTL。VECTOR 僅支援頂層寫入,並啟動非同步 embedding attachment。

指令移除辨識到的尾端 option 後,會以空白連接其餘 value token。

EXIST 與 TYPE

EXIST <key>
TYPE <key>

EXIST 回傳 (integer) 1(integer) 0TYPE 回傳 jsonstringintfloatbooldate(nil)

DEL

DEL <key> [key2] ...

單一 dotted key 會刪除 JSON field 並回傳 OK;其他形式刪除頂層 key,回傳刪除數量。

INCR

INCR <key> [delta]

預設 delta 為 1。目標必須已是數值;點記法可遞增 JSON numeric field。

過期指令

TTL <key>
EXPIRE <key> <seconds>
EXPIREAT <key> <timestamp>
PERSIST <key>

Key 無過期時間時,TTL 回傳 (integer) -1;key 不存在或已過期時回傳 (nil)。成功修改過期設定時回傳 OK,無效或不存在的目標則依指令路徑回傳 error 或 (nil)

掃描與查詢指令

KEYS

KEYS <pattern>

使用 Go path.Match 比對頂層 key,結果依字典順序排列。

FIND

FIND <op> <value> [LIMIT <n>]

運算子:eqnegtgte/geltlte/lelike。結果由新到舊排序。

QUERY

QUERY <expression> [LIMIT <n>]

支援 JSON field condition、ANDORNOT 與括號。比較別名包括 =!=>>=<<=

回傳 list 的指令會產生 1) key 等編號行;無結果時回傳 (empty list)

向量指令

VSEARCH

VSEARCH <text> [MATCH <pattern>] [LIMIT <n>]

MATCHLIMIT 可用任一順序放在尾端。預設 limit 為 10。此指令需要已初始化 embedder。

VSIM

VSIM <key1> <key2>

回傳 (float) <score>;缺少 vector 時回傳 (nil);dimension 不符時回報 error。

VGET

VGET <key>

以 JSON array 回傳 embedding;無資料時回傳 (nil)

資料庫切換

SELECT <db>

Index 必須是 015 的 integer。選擇狀態只屬於目前 StoreSession handle。

REPL 控制

內附 client 會在本地處理 quitexit,它們不是 Exec 指令。空白行會被忽略;收到 SIGINTSIGTERM 時會先關閉 store。

相關頁面

EN