diff options
Diffstat (limited to '.venv/lib/python3.12/site-packages/pgvector/asyncpg/register.py')
-rw-r--r-- | .venv/lib/python3.12/site-packages/pgvector/asyncpg/register.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/pgvector/asyncpg/register.py b/.venv/lib/python3.12/site-packages/pgvector/asyncpg/register.py new file mode 100644 index 00000000..a3880585 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/pgvector/asyncpg/register.py @@ -0,0 +1,31 @@ +from ..utils import Vector, HalfVector, SparseVector + + +async def register_vector(conn, schema='public'): + await conn.set_type_codec( + 'vector', + schema=schema, + encoder=Vector._to_db_binary, + decoder=Vector._from_db_binary, + format='binary' + ) + + try: + await conn.set_type_codec( + 'halfvec', + schema=schema, + encoder=HalfVector._to_db_binary, + decoder=HalfVector._from_db_binary, + format='binary' + ) + + await conn.set_type_codec( + 'sparsevec', + schema=schema, + encoder=SparseVector._to_db_binary, + decoder=SparseVector._from_db_binary, + format='binary' + ) + except ValueError as e: + if not str(e).startswith('unknown type:'): + raise e |