MCPcopy Create free account
hub / github.com/atomicdotdev/atomic / get_embedding

Method get_embedding

atomic-core/src/pristine/txn/read.rs:1161–1184  ·  view source on GitHub ↗
(&self, path: &str, chunk_idx: u32)

Source from the content-addressed store, hash-verified

1159
1160impl EmbeddingsTxnT for ReadTxn {
1161 fn get_embedding(&self, path: &str, chunk_idx: u32) -> PristineResult<Option<EmbeddingRecord>> {
1162 let table = match self.txn.open_table(EMBEDDINGS) {
1163 Ok(table) => table,
1164 Err(redb::TableError::TableDoesNotExist(_)) => return Ok(None),
1165 Err(e) => return Err(PristineError::from(e)),
1166 };
1167
1168 let key = encode_embedding_key(path, chunk_idx);
1169 let result = match table.get(key.as_str())? {
1170 Some(guard) => {
1171 let bytes = guard.value();
1172 let record: EmbeddingRecord =
1173 postcard::from_bytes(bytes).map_err(|e| PristineError::Serialization {
1174 message: format!(
1175 "failed to deserialize EmbeddingRecord at '{}': {}",
1176 key, e
1177 ),
1178 })?;
1179 Ok(Some(record))
1180 }
1181 None => Ok(None),
1182 };
1183 result
1184 }
1185
1186 fn list_embeddings(&self, path: &str) -> PristineResult<Vec<(u32, EmbeddingRecord)>> {
1187 let table = match self.txn.open_table(EMBEDDINGS) {

Callers 1

vault_embedMethod · 0.45

Calls 3

encode_embedding_keyFunction · 0.85
getMethod · 0.65
as_strMethod · 0.45

Tested by

no test coverage detected