aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/pgvector/asyncpg
diff options
context:
space:
mode:
Diffstat (limited to '.venv/lib/python3.12/site-packages/pgvector/asyncpg')
-rw-r--r--.venv/lib/python3.12/site-packages/pgvector/asyncpg/__init__.py9
-rw-r--r--.venv/lib/python3.12/site-packages/pgvector/asyncpg/register.py31
2 files changed, 40 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/pgvector/asyncpg/__init__.py b/.venv/lib/python3.12/site-packages/pgvector/asyncpg/__init__.py
new file mode 100644
index 00000000..543b8823
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/pgvector/asyncpg/__init__.py
@@ -0,0 +1,9 @@
+from .register import register_vector
+from ..utils import Vector, HalfVector, SparseVector
+
+__all__ = [
+ 'register_vector',
+ 'Vector',
+ 'HalfVector',
+ 'SparseVector'
+]
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