embeddingcache
1.0.0
텍스트 임베딩을 검색하지만 이미 계산 한 경우 로컬로 캐시하십시오.
소수의 다른 NLP 작업을 수행하거나 튜닝을 계속 유지하는 단일 NLP 파이프 라인이있는 경우 임베딩을 다시 작성하고 싶지 않을 것입니다. 따라서 캐시를 캐시합니다.
pip install embeddingcache
from embeddingcache.embeddingcache import get_embeddings
embeddings = get_embeddings(
strs=["hi", "I love Berlin."],
embedding_model="all-MiniLM-L6-v2",
db_directory=Path("dbs/"),
verbose=True,
)
우리는 SQLITE3을 사용하여 캐시 임베딩을 사용합니다. [우리는 sqlalchemy를 사용하기 때문에 쉽게 적응할 수 있습니다.]
우리는 동시 작가 한 명과 함께 무거운 하중을 가정합니다. (그러나 우리는 쓰기 실패를 다시 시도합니다.)
우리는 sqlite3를 두 개의 데이터베이스로 hashstring.db : hashstring 테이블로 깎습니다. 각 행은 (고유 한 기본 키) SHA512 해시 (고유 한)입니다. 두 필드 모두 색인이 표시됩니다.
[embedding_model_name] .db : 임베딩 테이블. 각 행은 (고유 한 기본 키) SHA512 해시로 1-dim numpy (float32) 벡터로, 테이블로 바이트로 직렬화됩니다.
pre-commit install
pip install -e .
pytest