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

Method get_embedding

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

Source from the content-addressed store, hash-verified

985
986impl EmbeddingsTxnT for ReadTxn {
987 fn get_embedding(&self, path: &str, chunk_idx: u32) -> PristineResult<Option<EmbeddingRecord>> {
988 let table = match self.txn.open_table(EMBEDDINGS) {
989 Ok(table) => table,
990 Err(redb::TableError::TableDoesNotExist(_)) => return Ok(None),
991 Err(e) => return Err(PristineError::from(e)),
992 };
993
994 let key = encode_embedding_key(path, chunk_idx);
995 let result = match table.get(key.as_str())? {
996 Some(guard) => {
997 let bytes = guard.value();
998 let record: EmbeddingRecord =
999 postcard::from_bytes(bytes).map_err(|e| PristineError::Serialization {
1000 message: format!(
1001 "failed to deserialize EmbeddingRecord at '{}': {}",
1002 key, e
1003 ),
1004 })?;
1005 Ok(Some(record))
1006 }
1007 None => Ok(None),
1008 };
1009 result
1010 }
1011
1012 fn list_embeddings(&self, path: &str) -> PristineResult<Vec<(u32, EmbeddingRecord)>> {
1013 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