A vector database optimized for cosine similarity using quantum algorithms
Project description
StateVector
StateVector is a highly efficient vector database leveraging classical and quantum algorithms to optimize cosine similarity calculations. It supports various data types such as text, images, and audio, providing fast and accurate similarity searches.
Features
- Vector Representation: Converts text, images, and audio into vector representations using algorithms like Word2Vec.
- Similarity Calculation: Computes cosine similarity using both classical and quantum-optimized algorithms.
- Indexing: Builds efficient indexes using KD Trees for quick retrieval of similar vectors.
- Search: Performs nearest neighbor search for similarity queries.
Installation
- Clone the repository:
git clone https://github.com/yourusername/StateVector.git cd StateVector
- Install the required dependencies:
pip install -r requirements.txt
Usage
Text Vectorization
from vector_representation.text_vectorizer import TextVectorizer
vectorizer = TextVectorizer('model/word2vec_model.bin')
vector = vectorizer.vectorize("example text")
Cosine Similarity
from similarity.cosine_similarity import CosineSimilarity
similarity = CosineSimilarity.compute(vector1, vector2)
Quantum Cosine Similarity
from similarity.quantum_cosine_similarity import QuantumCosineSimilarity
quantum_similarity = QuantumCosineSimilarity()
similarity = quantum_similarity.compute(vector1, vector2)
KD Tree Indexing
from index.kd_tree import KDTreeIndex
index = KDTreeIndex(data)
distance, index = index.query(vector, k=5)
Nearest Neighbor Search
from search.nearest_neighbor import NearestNeighborSearch
search = NearestNeighborSearch(index)
results = search.search(vector, k=5)
Documentation
See the docs directory for detailed documentation on each module.
StateVector
StateVector 是一个高效的向量数据库,利用经典和量子算法优化余弦相似性计算。它支持文本、图像和音频等多种数据类型,提供快速准确的相似性搜索。
特性
- 向量表示:使用 Word2Vec 等算法将文本、图像和音频转换为向量表示。
- 相似度计算:使用经典和量子优化算法计算余弦相似度。
- 索引:使用 KD 树构建高效索引,快速检索相似向量。
- 搜索:执行最近邻搜索以进行相似性查询。
安装
- 克隆仓库:
git clone https://github.com/yourusername/StateVector.git cd StateVector
- 安装所需依赖:
pip install -r requirements.txt
使用方法
文本向量化
from vector_representation.text_vectorizer import TextVectorizer
vectorizer = TextVectorizer('model/word2vec_model.bin')
vector = vectorizer.vectorize("example text")
余弦相似度
from similarity.cosine_similarity import CosineSimilarity
similarity = CosineSimilarity.compute(vector1, vector2)
量子余弦相似度
from similarity.quantum_cosine_similarity import QuantumCosineSimilarity
quantum_similarity = QuantumCosineSimilarity()
similarity = quantum_similarity.compute(vector1, vector2)
KD 树索引
from index.kd_tree import KDTreeIndex
index = KDTreeIndex(data)
distance, index = index.query(vector, k=5)
最近邻搜索
from search.nearest_neighbor import NearestNeighborSearch
search = NearestNeighborSearch(index)
results = search.search(vector, k=5)
文档
详见 docs 目录下各模块的详细文档。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file StateVector-0.1.tar.gz.
File metadata
- Download URL: StateVector-0.1.tar.gz
- Upload date:
- Size: 4.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d594cd58cf56580332b8ec25981e72829f7179ea47196ca9414c40e5131c9b17
|
|
| MD5 |
c5599051917ae258753a6be70e511942
|
|
| BLAKE2b-256 |
e1b4a1545736db30527ba0b692ffdfb9f26ed83765dd9d1cba4b778e42a854ed
|
File details
Details for the file StateVector-0.1-py3-none-any.whl.
File metadata
- Download URL: StateVector-0.1-py3-none-any.whl
- Upload date:
- Size: 5.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
170c27a7a60f340fc218d22e8a1c7535a845cd08c63293a934b9454ed3a2863a
|
|
| MD5 |
f7c7b65c0cd98280ae0727d5305b76c9
|
|
| BLAKE2b-256 |
02fe0c56688ef8c6c713952867b2a9633b014954e5ed886471c503b876f0cf1a
|