garden.engram.searchMemories

hailey.at

Schema Diff

+15 -6

From

CID
bafyreiedcrdt7uf...
Indexed At
2026-10-09 03:42 UTC
View this version

To

CID
bafyreigsu5qcx5g...
Indexed At
2026-10-09 19:08 UTC
View this version

Compatibility Analysis

Backward Compatible

No changes detected.

1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 -
      "description": "Vector search over a space's memories. The caller embeds its query with the space's model and query prefix. Requires a space credential for the space, presented with an HTTP message signature whose audience is this service's DID.",
5 +
      "description": "Vector search over a space's memories. The caller embeds its query with the space's model and query prefix and sends vector, model and modelDigest. A service that runs the space's model may instead embed q itself when no vector is sent. A service that doesn't embed queries answers InvalidRequest, and one that doesn't run the space's model answers ModelNotHosted. Requires a space credential for the space, presented with an HTTP message signature whose audience is this service's DID.",
6 6
      "errors": [
7 7
        {
8 8
          "description": "This service does not index the space.",
9 9
          "name": "UnknownSpace"
10 10
        },
11 11
        {
12 12
          "description": "The space's authority hasn't declared an embedding model.",
13 13
          "name": "NoModel"
14 14
        },
15 15
        {
16 16
          "description": "The query's model isn't the space's model. Re-read the space's config.",
17 17
          "name": "ModelMismatch"
18 18
        },
19 19
        {
20 +
          "description": "q was sent without a vector, and this service doesn't run the space's model. Embed the query with the space's model and send the vector.",
21 +
          "name": "ModelNotHosted"
22 +
        },
23 +
        {
24 +
          "description": "This service doesn't embed queries for this space's authority.",
25 +
          "name": "TextSearchNotAllowed"
26 +
        },
27 +
        {
28 +
          "description": "Too many queries are being embedded. Retry shortly.",
29 +
          "name": "EmbedderBusy"
30 +
        },
31 +
        {
20 32
          "description": "The space's index is loading. Retry shortly.",
21 33
          "name": "IndexLoading"
22 34
        },
23 35
        {
24 36
          "description": "Too many searches for this space.",
25 37
          "name": "RateLimitExceeded"
26 38
        }
27 39
      ],
28 40
      "output": {
29 41
        "encoding": "application/json",
30 42
        "schema": {
31 43
          "properties": {
32 44
            "approximate": {
33 45
              "description": "Set when the index couldn't re-rank in time, so results are ranked by a coarser comparison and may be less precise.",
34 46
              "type": "boolean"
35 47
            },
36 48
            "memories": {
37 49
              "items": {
38 50
                "ref": "garden.engram.defs#memoryView",
39 51
                "type": "ref"
40 52
              },
41 53
              "type": "array"
42 54
            }
43 55
          },
44 56
          "required": [
45 57
            "memories"
46 58
          ],
47 59
          "type": "object"
48 60
        }
49 61
      },
50 62
      "parameters": {
51 63
        "properties": {
52 64
          "author": {
53 65
            "description": "Only memories written by this DID.",
54 66
            "format": "did",
55 67
            "type": "string"
56 68
          },
57 69
          "limit": {
58 70
            "default": 10,
59 71
            "maximum": 50,
60 72
            "minimum": 1,
61 73
            "type": "integer"
62 74
          },
63 75
          "model": {
64 76
            "description": "Must match the space's model.",
65 77
            "type": "string"
66 78
          },
67 79
          "modelDigest": {
68 80
            "description": "Must match the space's model digest.",
69 81
            "type": "string"
70 82
          },
71 83
          "q": {
72 -
            "description": "The query's text. Optional and not used for ranking yet; kept for keyword search later.",
84 +
            "description": "The query's text. Sent with a vector, it isn't used for ranking. Sent alone, a service that embeds queries (at most 1000 characters) embeds it with the space's model and query prefix.",
73 85
            "maxLength": 4000,
74 86
            "type": "string"
75 87
          },
76 88
          "since": {
77 89
            "description": "Only memories created at or after this time.",
78 90
            "format": "datetime",
79 91
            "type": "string"
80 92
          },
81 93
          "space": {
82 94
            "description": "The space URI.",
83 95
            "type": "string"
84 96
          },
85 97
          "tags": {
86 98
            "description": "Only memories carrying every one of these tags.",
87 99
            "items": {
88 100
              "type": "string"
89 101
            },
90 102
            "maxLength": 16,
91 103
            "type": "array"
92 104
          },
93 105
          "vector": {
94 106
            "description": "The query's vector: little-endian IEEE half precision, base64url-encoded without padding.",
95 107
            "maxLength": 43000,
96 108
            "type": "string"
97 109
          }
98 110
        },
99 111
        "required": [
100 -
          "space",
101 -
          "vector",
102 -
          "model",
103 -
          "modelDigest"
112 +
          "space"
104 113
        ],
105 114
        "type": "params"
106 115
      },
107 116
      "type": "query"
108 117
    }
109 118
  },
110 119
  "id": "garden.engram.searchMemories",
111 120
  "lexicon": 1
112 121
}

Compare Other Versions

Lexicon Garden

@