Skip to main content

ai-parrot-embeddings

Concrete backend implementations for the AI-Parrot retrieval stack: embedding models, vector stores, and rerankers.

What's in this package

This satellite contributes modules to three subsystems of the parrot.* namespace:

  • parrot.embeddings.{google, huggingface, openai} — embedding backends
  • parrot.stores.{postgres, pgvector, milvus, arango, bigquery, faiss_store} — vector stores
  • parrot.rerankers.{local, llm} — rerankers

The abstract base classes (EmbeddingModel, AbstractStore, AbstractReranker), the registries (EmbeddingRegistry), the dispatch maps (supported_embeddings, supported_stores), and all shared types (parrot.stores.models.Document, SearchResult, etc.) remain in the ai-parrot core package.

Import contract

This package uses PEP 420 implicit namespace packages. Its modules ship directly under the existing parrot.* namespace — no separate top-level. Existing imports continue to work unchanged once installed:

from parrot.embeddings.huggingface import SentenceTransformerModel  # from satellite
from parrot.stores.pgvector import PgVectorStore                    # from satellite
from parrot.embeddings import EmbeddingRegistry                     # from core
from parrot.stores import AbstractStore, supported_stores           # from core

No code changes are needed in user projects after upgrading from ai-parrot[embeddings] to ai-parrot-embeddings[...].

Install

Goal Command
Core framework only (no backends) pip install ai-parrot
One backend pip install ai-parrot-embeddings[pgvector]
Multiple backends pip install ai-parrot-embeddings[pgvector,milvus,huggingface]
Embeddings + vector stores pip install ai-parrot-embeddings[huggingface,pgvector]
Rerankers pip install ai-parrot-embeddings[reranker-local]
Everything pip install ai-parrot-embeddings[all]
Legacy all-in-one (unchanged) pip install ai-parrot[all]

Extras

Extra Pulls in Enables
huggingface sentence-transformers, tokenizers, safetensors, einops, accelerate, peft, xformers, simsimd, bm25s, rank_bm25, sentencepiece parrot.embeddings.huggingface.SentenceTransformerModel
google google-genai, google-cloud-aiplatform parrot.embeddings.google.GoogleEmbeddingModel
openai openai, tiktoken parrot.embeddings.openai.OpenAIEmbeddingModel
pgvector pgvector==0.4.1 parrot.stores.postgres.PgVectorStore, parrot.stores.pgvector.PgVectorStore
milvus pymilvus, milvus-lite parrot.stores.milvus.MilvusStore
arango python-arango-async parrot.stores.arango.ArangoDBStore
bigquery google-cloud-bigquery parrot.stores.bigquery.BigQueryStore
faiss (no extra deps; faiss-cpu ships with ai-parrot core) parrot.stores.faiss_store.FAISSStore
chroma chromadb (reserved for future ChromaStore)
reranker-local sentence-transformers, tokenizers, safetensors parrot.rerankers.local.LocalCrossEncoderReranker
reranker-llm (no extra deps; uses existing LLM clients) parrot.rerankers.llm.LLMReranker
all All of the above Full retrieval stack

Development

git clone https://github.com/phenobarbital/ai-parrot
cd ai-parrot
source .venv/bin/activate
uv pip install -e packages/ai-parrot -e packages/ai-parrot-embeddings
uv run pytest packages/ai-parrot-embeddings/tests/

Or for the full workspace (if no pre-existing dependency conflicts):

uv sync --all-packages

Architecture

This package uses PEP 420 implicit namespace packages (not the parrot_<name>.* + sys.meta_path redirector pattern used by ai-parrot-tools, -loaders, -pipelines). The satellite ships no __init__.py files at parrot/, parrot/embeddings/, parrot/stores/, or parrot/rerankers/. Python's import machinery merges the satellite's directory entries with the host's regular packages at import time, because the host's sub-package __init__.py files call pkgutil.extend_path.

Design rationale

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ai_parrot_embeddings-0.1.33-py3-none-any.whl (82.1 kB view details)

Uploaded Python 3

File details

Details for the file ai_parrot_embeddings-0.1.33-py3-none-any.whl.

File metadata

File hashes

Hashes for ai_parrot_embeddings-0.1.33-py3-none-any.whl
Algorithm Hash digest
SHA256 28fd56139b806f2d6bf22668f41a4e7b572d6c30ea9268c7582440cbab8d0473
MD5 ca7f08fdeb77e039017384a3a3513399
BLAKE2b-256 4925c36c2078c77e527ad34cd5c8e542a98829313fc70f064147b4d3e17e1ff9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_parrot_embeddings-0.1.33-py3-none-any.whl:

Publisher: release.yml on phenobarbital/ai-parrot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page