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

Method get_embedding

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

Source from the content-addressed store, hash-verified

1114
1115impl EmbeddingsTxnT for ReadTxn {
1116 fn get_embedding(&self, path: &str, chunk_idx: u32) -> PristineResult<Option<EmbeddingRecord>> {
1117 let table = match self.txn.open_table(EMBEDDINGS) {
1118 Ok(table) => table,
1119 Err(redb::TableError::TableDoesNotExist(_)) => return Ok(None),
1120 Err(e) => return Err(PristineError::from(e)),
1121 };
1122
1123 let key = encode_embedding_key(path, chunk_idx);
1124 let result = match table.get(key.as_str())? {
1125 Some(guard) => {
1126 let bytes = guard.value();
1127 let record: EmbeddingRecord =
1128 postcard::from_bytes(bytes).map_err(|e| PristineError::Serialization {
1129 message: format!(
1130 "failed to deserialize EmbeddingRecord at '{}': {}",
1131 key, e
1132 ),
1133 })?;
1134 Ok(Some(record))
1135 }
1136 None => Ok(None),
1137 };
1138 result
1139 }
1140
1141 fn list_embeddings(&self, path: &str) -> PristineResult<Vec<(u32, EmbeddingRecord)>> {
1142 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