|
@@ -60,14 +60,17 @@ class CacheEmbedding(Embeddings):
|
|
|
db.session.rollback()
|
|
|
except Exception as e:
|
|
|
logging.exception('Failed transform embedding: ', e)
|
|
|
+ cache_embeddings = []
|
|
|
for i, embedding in zip(embedding_queue_indices, embedding_queue_embeddings):
|
|
|
text_embeddings[i] = embedding
|
|
|
hash = helper.generate_text_hash(texts[i])
|
|
|
- embedding_cache = Embedding(model_name=self._model_instance.model,
|
|
|
- hash=hash,
|
|
|
- provider_name=self._model_instance.provider)
|
|
|
- embedding_cache.set_embedding(embedding)
|
|
|
- db.session.add(embedding_cache)
|
|
|
+ if hash not in cache_embeddings:
|
|
|
+ embedding_cache = Embedding(model_name=self._model_instance.model,
|
|
|
+ hash=hash,
|
|
|
+ provider_name=self._model_instance.provider)
|
|
|
+ embedding_cache.set_embedding(embedding)
|
|
|
+ db.session.add(embedding_cache)
|
|
|
+ cache_embeddings.append(hash)
|
|
|
db.session.commit()
|
|
|
except Exception as ex:
|
|
|
db.session.rollback()
|