Similarity ranking for Retrieval-Augmented Generation
✨ What is SymRank?
SymRank is a blazing-fast Python library for top-k cosine similarity ranking, designed for vector search, retrieval-augmented generation (RAG), and embedding-based matching.
Built with a Rust + SIMD backend, it offers the speed of native code with the ease of Python.
🚀 Why SymRank?
⚡ Fast: SIMD-accelerated cosine scoring with adaptive parallelism
🧠 Smart: Automatically selects serial or parallel mode based on workload
🔢 Top-K optimized: Efficient inlined heap selection (no full sort overhead)
🐍 Pythonic: Easy-to-use Python API
🦀 Powered by Rust: Safe, high-performance core engine
📉 Memory Efficient: Supports batching for speed and to reduce memory footprint
Below are single-query cosine similarity benchmarks comparing SymRank to NumPy and scikit-learn across realistic re-ranking candidate sizes.
| Candidates (N) | SymRank matrix (ms) | NumPy normalized (ms) | sklearn (ms) | Fastest | SymRank Speedup |
|---|---|---|---|---|---|
| 20 | 0.006 | 0.027 | 0.210 | SymRank | 4.50x |
| 50 | 0.017 | 0.050 | 0.266 | SymRank | 2.92x |
| 100 | 0.020 | 0.086 | 0.390 | SymRank | 4.18x |
| 500 | 0.169 | 0.393 | 1.843 | SymRank | 2.32x |
| 1,000 | 0.170 | 0.669 | 3.588 | SymRank | 3.95x |
| 5,000 | 0.748 | 5.261 | 32.196 | SymRank | 7.03x |
| 10,000 | 1.976 | 13.938 | 42.514 | SymRank | 7.05x |
- Cosine similarity top k (k=5), embedding dimension 1536, float32.
- NumPy baseline uses candidates normalized once and query normalized per call.
- sklearn uses sklearn.metrics.pairwise.cosine_similarity.
- Times are mean milliseconds per query on Windows.
Real-world benchmark (Hugging Face embeddings)
Performance on 10,000 real OpenAI-style embeddings streamed from the Hugging Face Hub.
| Method | Mean time (ms) | Speedup vs SymRank |
|---|---|---|
| SymRank matrix | 1.800 | 1.0x |
| SymRank list | 22.753 | 12.64x |
| NumPy normalized | 44.665 | 24.81x |
| sklearn | 42.709 | 23.73x |
- Dataset: Qdrant/dbpedia-entities-openai3-text-embedding-3-large-1536-1M
- k=5, float32, Windows
- Mean time per query
📦 Installation
You can install SymRank with 'uv' or alternatively using 'pip'.
Recommended (with uv)
uv pip install symrank
Alternatively (using pip)
pip install symrank
🧪 Usage
SymRank provides two APIs optimized for different workflows.
Option 1: cosine_similarity_matrix (recommended for performance)
Best when:
- Candidate embeddings are already stored as a single 2D NumPy array
- Performance matters (about 10 to 14x faster for N=1,000 to 10,000 versus the list API)
- Running many queries against the same candidate set
import numpy as np
from symrank import cosine_similarity_matrix
# Example data (dimension = 4 for readability)
query = np.array([1.0, 0.0, 0.0, 0.0], dtype=np.float32)
candidate_matrix = np.array(
[
[1.0, 0.0, 0.0, 0.0], # identical to query
[0.0, 1.0, 0.0, 0.0], # orthogonal
[0.5, 0.5, 0.0, 0.0], # partially aligned
[0.2, 0.1, 0.0, 0.0], # weakly aligned
],
dtype=np.float32,
)
ids = ["doc_a", "doc_b", "doc_c", "doc_d"]
results = cosine_similarity_matrix(query, candidate_matrix, ids, k=3)
print(results)
Output:
[
{"id": "doc_a", "score": 1.0},
{"id": "doc_d", "score": 0.8944272},
{"id": "doc_c", "score": 0.70710677}
]
Notes:
- Scores are cosine similarity (range -1 to 1, higher = more similar)
- Results are sorted by descending similarity
Typical production usage (1536-dimensional embeddings):
import numpy as np
from symrank import cosine_similarity_matrix
D = 1536
N = 10_000
query = np.random.rand(D).astype(np.float32)
candidate_matrix = np.random.rand(N, D).astype(np.float32)
ids = [f"doc_{i}" for i in range(N)]
top5 = cosine_similarity_matrix(query, candidate_matrix, ids, k=5)
for result in top5:
print(f"{result['id']}: {result['score']:.4f}")
Optional batching for memory control:
# Process 10k candidates in batches of 2000
results = cosine_similarity_matrix(
query, candidate_matrix, ids, k=5, batch_size=2000
)
Option 2: cosine_similarity (flexible and convenient)
Best when:
- Candidates come from mixed or streaming sources
- Vectors are naturally represented as (id, vector) pairs
- Simplicity is more important than maximum throughput
Basic example using Python lists:
import symrank as sr
query = [0.1, 0.2, 0.3, 0.4]
candidates = [
("doc_1", [0.1, 0.2, 0.3, 0.5]),
("doc_2", [0.9, 0.1, 0.2, 0.1]),
("doc_3", [0.0, 0.0, 0.0, 1.0]),
]
results = sr.cosine_similarity(query, candidates, k=2)
print(results)
Output:
[
{"id": "doc_1", "score": 0.9939991235733032},
{"id": "doc_3", "score": 0.7302967309951782}
]
Basic example using NumPy arrays:
import symrank as sr
import numpy as np
query = np.array([0.1, 0.2, 0.3, 0.4], dtype=np.float32)
candidates = [
("doc_1", np.array([0.1, 0.2, 0.3, 0.5], dtype=np.float32)),
("doc_2", np.array([0.9, 0.1, 0.2, 0.1], dtype=np.float32)),
("doc_3", np.array([0.0, 0.0, 0.0, 1.0], dtype=np.float32)),
]
results = sr.cosine_similarity(query, candidates, k=2)
print(results)
Output:
[
{"id": "doc_1", "score": 0.9939991235733032},
{"id": "doc_3", "score": 0.7302967309951782}
]
Optional batching:
results = sr.cosine_similarity(query, candidates, k=5, batch_size=1000)
Performance Comparison
| Dataset Size | Option 1 (matrix) | Option 2 (list) | Speedup |
|---|---|---|---|
| N=100 | 0.02 ms | 0.06 ms | 3.3x |
| N=1,000 | 0.18 ms | 2.28 ms | 12.7x |
| N=10,000 | 1.50 ms | 19.66 ms | 13.1x |
Benchmark: 1536-dimensional embeddings, k=5, Python 3.14, Windows. Benchmark includes Python-side overhead for each API.
Quick Decision Guide
Use cosine_similarity_matrix if:
- ✅ You have a pre-built NumPy matrix of candidates
- ✅ Performance is critical
- ✅ Processing many queries against the same corpus
Use cosine_similarity if:
- ✅ Building candidates on-the-fly
- ✅ Mixed vector input types (lists or NumPy arrays)
- ✅ Flexibility > raw speed
Both functions return the same format: a list of dicts sorted by descending similarity score.
🧩 API: cosine_similarity(...)
cosine_similarity(
query_vector, # List[float] or np.ndarray
candidate_vectors, # List[Tuple[str, List[float] or np.ndarray]]
k=5, # Number of top results to return
batch_size=None # Optional: set for memory-efficient batching
)
'cosine_similarity(...)' Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
query_vector |
list[float] or np.ndarray |
required | The query vector you want to compare against the candidate vectors. |
candidate_vectors |
list[tuple[str, list[float] or np.ndarray]] |
required | List of (id, vector) pairs. Each vector can be a list or NumPy array. |
k |
int |
5 | Number of top results to return, sorted by descending similarity. |
batch_size |
int or None |
None | Optional batch size to reduce memory usage. If None, uses SIMD directly. |
Returns
List of dictionaries with id and score (cosine similarity), sorted by descending similarity:
[{"id": "doc_42", "score": 0.8763}, {"id": "doc_17", "score": 0.8451}, ...]
📄 License
This project is licensed under the Apache License 2.0.
Metadata
Release files for symrank 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| symrank-0.2.0.tar.gz | 18.8 kB | Details |
Built distributions (wheels)
Total release size: 3.7 MB
Release files / symrank-0.2.0.tar.gz
| Download URL | symrank-0.2.0.tar.gz |
|---|---|
| Size | 18.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cbee55d91183c78aef1f8c5e9e678be71ee7a70e5b3df9cd889061e1afc53034
|
|
BLAKE2b-256 checksum How to use checksums |
4c6bf6a70615dc039fe5edbd1ba48cb086d79ddb3119915178ac85684d370822
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp314-cp314-win_amd64.whl
| Download URL | symrank-0.2.0-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 167.9 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
52bb5d10151625f771fc1277e589d92f773e4c30a2345f9d6eaa860e3b9e7ee8
|
|
BLAKE2b-256 checksum How to use checksums |
ea696c10126a1326a21d1f239966616cef2c096c8a98f0bb011b6461c38a7af0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp314-cp314-manylinux_2_34_x86_64.whl
| Download URL | symrank-0.2.0-cp314-cp314-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 296.3 kB |
| Tags | CPython 3.14 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
8ba170e3c90f59bd86135c391e898363ab9fab779392d7d5d8371c6a87836b0e
|
|
BLAKE2b-256 checksum How to use checksums |
9e8c664325de0943852716609d6c147f412e739e19f6d11d62ae8f4dc89d5052
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | symrank-0.2.0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 262.0 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4ab0258e854b873aecfa7310ff7553cf0b1648ef070a93d3022cd830244ea8bd
|
|
BLAKE2b-256 checksum How to use checksums |
7144784478685a60885a3bff3025ee641f940000f0ed22828c95b6ffea927019
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp313-cp313-win_amd64.whl
| Download URL | symrank-0.2.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 167.9 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
cfbfd7284f4876e497b9c2f51e0ad572ee7b32de4289b123d68318922b9a2896
|
|
BLAKE2b-256 checksum How to use checksums |
7222a65ba028e549a65bb55b8d8888140e838aff157b3dab0d5cd21e17cf6f5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp313-cp313-manylinux_2_34_x86_64.whl
| Download URL | symrank-0.2.0-cp313-cp313-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 296.6 kB |
| Tags | CPython 3.13 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
47369bad846b889e31f890f94a6a5e07c55d1c7229c8c400cc1f2e8a6388c0b1
|
|
BLAKE2b-256 checksum How to use checksums |
ad24109daa52d695e9105fa8da3fe9483e07a4d2438f4706b8f4a367cd3f5060
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | symrank-0.2.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 262.4 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
62ebaee1e614ee034b2ba17f55a8d9b78be2e1133cb91627db7482c5c7c4d1fc
|
|
BLAKE2b-256 checksum How to use checksums |
8721ce61d7a022510c95d126c01c54403ff8120cad190aa9fbc5d17830712835
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp312-cp312-win_amd64.whl
| Download URL | symrank-0.2.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 167.8 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
453f26050d2c11929c38f4222ced130a69d759a553aad20dd2d4a05c8592368c
|
|
BLAKE2b-256 checksum How to use checksums |
580ae7ed6ab671b90df2eeb74b82219d8d917277160e3639dc6e2cc50aacdbfa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp312-cp312-manylinux_2_34_x86_64.whl
| Download URL | symrank-0.2.0-cp312-cp312-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 296.5 kB |
| Tags | CPython 3.12 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
5eb0528d6cf1e957f458d5498c17dc5b390da49192161db648345db2f5a0e43e
|
|
BLAKE2b-256 checksum How to use checksums |
0e7e57e4b02a8e5457e4b1aea527ef2f050109174f563420cd2d0684550612fe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | symrank-0.2.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 262.2 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
0796b8217928eaa7a726db3ccbc769edec2d1cd7145a583768a5bb25ea5a8412
|
|
BLAKE2b-256 checksum How to use checksums |
bf326c114d6a370f12a1ee85c9cf16089a796f69a820fa679db08191afaad995
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp311-cp311-win_amd64.whl
| Download URL | symrank-0.2.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 169.3 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
1d8fca3532b05ed26fbf4119b119a0807011f1c4251e96f22d8116d8f465e462
|
|
BLAKE2b-256 checksum How to use checksums |
a84236f0ba383fd68f880e1573587d2786e40d7418575a392f22bb369e0dbcc5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp311-cp311-manylinux_2_34_x86_64.whl
| Download URL | symrank-0.2.0-cp311-cp311-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 296.7 kB |
| Tags | CPython 3.11 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
61fbf6f31caeb69385b86a47190a9b7ca62b2889ba1a63061047eca607c56c84
|
|
BLAKE2b-256 checksum How to use checksums |
35d5965a1f7477ef2c91d41a83449249e328380810f66d5c0d323685e3c4a46b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | symrank-0.2.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 262.5 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
2cbbed0a125623e3bf9a5a04a16d0020f8dcce35a4541552b6b54f33ea291c0b
|
|
BLAKE2b-256 checksum How to use checksums |
004a3f7a4bcf7b5c7e0c7e52dcd11c2b385f1d58e5ca4cb78068385f9b3f3da1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp310-cp310-win_amd64.whl
| Download URL | symrank-0.2.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 169.5 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
3b25558a246f9ccdfc18cd2f90be4b01e031e4ac488197ee0b76e9c5f5e95ac7
|
|
BLAKE2b-256 checksum How to use checksums |
906207fe49078d4a92797090634e975da3037939cf77cbbdada4e6a731e7303a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp310-cp310-manylinux_2_34_x86_64.whl
| Download URL | symrank-0.2.0-cp310-cp310-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 296.9 kB |
| Tags | CPython 3.10 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
5631c0e3c9f3206f7f49673121813bedcb0aaadbfe595f8c1b0b3dd18a5daa83
|
|
BLAKE2b-256 checksum How to use checksums |
51c0bcd765931e7999e56e19ba35761baeb74e64c11792d2190fb973436a1190
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency logRelease files / symrank-0.2.0-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | symrank-0.2.0-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 262.8 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
10f6575fa7c847fc138a850270e6de096cba5233930ea6088f0063ac1a255440
|
|
BLAKE2b-256 checksum How to use checksums |
9007be3944cb1c7929178788c14640a88fb3935f029d8901631acf742e81899a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 24, 2025.
Transparency log