|
1 | 1 | { |
2 | 2 | "cells": [ |
3 | 3 | { |
| 4 | + "attachments": {}, |
4 | 5 | "cell_type": "markdown", |
5 | 6 | "metadata": {}, |
6 | 7 | "source": [ |
|
46 | 47 | "outputs": [], |
47 | 48 | "source": [ |
48 | 49 | "_ = load_dotenv(find_dotenv()) \n", |
49 | | - "connection_string = os.environ['PG_CONNECTION_STRING'] " |
| 50 | + "service_url = os.environ['TIMESCALE_SERVICE_URL'] " |
50 | 51 | ] |
51 | 52 | }, |
52 | 53 | { |
| 54 | + "attachments": {}, |
53 | 55 | "cell_type": "markdown", |
54 | 56 | "metadata": {}, |
55 | 57 | "source": [ |
|
305 | 307 | ] |
306 | 308 | }, |
307 | 309 | { |
| 310 | + "attachments": {}, |
308 | 311 | "cell_type": "markdown", |
309 | 312 | "metadata": {}, |
310 | 313 | "source": [ |
|
321 | 324 | "class Async(QueryBuilder):\n", |
322 | 325 | " def __init__(\n", |
323 | 326 | " self,\n", |
324 | | - " connection_string: str,\n", |
| 327 | + " service_url: str,\n", |
325 | 328 | " table_name: str,\n", |
326 | 329 | " num_dimensions: int,\n", |
327 | 330 | " distance_type: str = 'cosine') -> None:\n", |
328 | 331 | " \"\"\"\n", |
329 | 332 | " Initializes a async client for storing vector data.\n", |
330 | 333 | " \n", |
331 | 334 | " Args:\n", |
332 | | - " connection_string (str): The connection string for the database.\n", |
| 335 | + " service_url (str): The connection string for the database.\n", |
333 | 336 | " table_name (str): The name of the table.\n", |
334 | 337 | " num_dimensions (int): The number of dimensions for the embedding vector.\n", |
335 | 338 | " distance_type (str, optional): The distance type for indexing. Default is 'cosine' or '<=>'.\n", |
336 | 339 | " \"\"\"\n", |
337 | 340 | " self.builder = QueryBuilder(table_name,num_dimensions, distance_type)\n", |
338 | | - " self.connection_string = connection_string\n", |
| 341 | + " self.service_url = service_url\n", |
339 | 342 | " self.pool = None\n", |
340 | 343 | " \n", |
341 | 344 | " async def connect(self):\n", |
|
348 | 351 | " if self.pool == None:\n", |
349 | 352 | " async def init(conn):\n", |
350 | 353 | " await register_vector(conn)\n", |
351 | | - " self.pool = await asyncpg.create_pool(dsn=self.connection_string, init=init)\n", |
| 354 | + " self.pool = await asyncpg.create_pool(dsn=self.service_url, init=init)\n", |
352 | 355 | " return self.pool.acquire()\n", |
353 | 356 | "\n", |
354 | 357 | " async def table_is_empty(self):\n", |
|
609 | 612 | "outputs": [], |
610 | 613 | "source": [ |
611 | 614 | "#| hide\n", |
612 | | - "con = await asyncpg.connect(connection_string)\n", |
| 615 | + "con = await asyncpg.connect(service_url)\n", |
613 | 616 | "await con.execute(\"DROP TABLE IF EXISTS data_table;\")\n", |
614 | 617 | "await con.close()" |
615 | 618 | ] |
616 | 619 | }, |
617 | 620 | { |
| 621 | + "attachments": {}, |
618 | 622 | "cell_type": "markdown", |
619 | 623 | "metadata": {}, |
620 | 624 | "source": [ |
|
627 | 631 | "metadata": {}, |
628 | 632 | "outputs": [], |
629 | 633 | "source": [ |
630 | | - "vec = Async(connection_string, \"data_table\", 2)\n", |
| 634 | + "vec = Async(service_url, \"data_table\", 2)\n", |
631 | 635 | "await vec.create_tables()\n", |
632 | 636 | "empty = await vec.table_is_empty()\n", |
633 | 637 | "assert empty\n", |
|
702 | 706 | ] |
703 | 707 | }, |
704 | 708 | { |
| 709 | + "attachments": {}, |
705 | 710 | "cell_type": "markdown", |
706 | 711 | "metadata": {}, |
707 | 712 | "source": [ |
|
735 | 740 | " \n", |
736 | 741 | " def __init__(\n", |
737 | 742 | " self,\n", |
738 | | - " connection_string: str,\n", |
| 743 | + " service_url: str,\n", |
739 | 744 | " table_name: str,\n", |
740 | 745 | " num_dimensions: int,\n", |
741 | 746 | " distance_type: str = 'cosine') -> None:\n", |
742 | 747 | " self.builder = QueryBuilder(table_name,num_dimensions, distance_type)\n", |
743 | | - " self.connection_string = connection_string\n", |
| 748 | + " self.service_url = service_url\n", |
744 | 749 | " self.pool = None\n", |
745 | 750 | " psycopg2.extras.register_uuid()\n", |
746 | 751 | "\n", |
|
752 | 757 | " use in a context manager.\n", |
753 | 758 | " \"\"\"\n", |
754 | 759 | " if self.pool == None:\n", |
755 | | - " self.pool = psycopg2.pool.SimpleConnectionPool(1, 10, dsn=self.connection_string)\n", |
| 760 | + " self.pool = psycopg2.pool.SimpleConnectionPool(1, 10, dsn=self.service_url)\n", |
756 | 761 | " \n", |
757 | 762 | " connection = self.pool.getconn()\n", |
758 | 763 | " pgvector.psycopg2.register_vector(connection)\n", |
|
1079 | 1084 | ] |
1080 | 1085 | }, |
1081 | 1086 | { |
| 1087 | + "attachments": {}, |
1082 | 1088 | "cell_type": "markdown", |
1083 | 1089 | "metadata": {}, |
1084 | 1090 | "source": [ |
|
1092 | 1098 | "outputs": [], |
1093 | 1099 | "source": [ |
1094 | 1100 | "#| hide\n", |
1095 | | - "con = await asyncpg.connect(connection_string)\n", |
| 1101 | + "con = await asyncpg.connect(service_url)\n", |
1096 | 1102 | "await con.execute(\"DROP TABLE IF EXISTS data_table;\")\n", |
1097 | 1103 | "await con.close()" |
1098 | 1104 | ] |
|
1103 | 1109 | "metadata": {}, |
1104 | 1110 | "outputs": [], |
1105 | 1111 | "source": [ |
1106 | | - "vec = Sync(connection_string, \"data_table\", 2)\n", |
| 1112 | + "vec = Sync(service_url, \"data_table\", 2)\n", |
1107 | 1113 | "vec.create_tables()\n", |
1108 | 1114 | "empty = vec.table_is_empty()\n", |
1109 | 1115 | "\n", |
|
1204 | 1210 | ], |
1205 | 1211 | "metadata": { |
1206 | 1212 | "kernelspec": { |
1207 | | - "display_name": "nbdev_env", |
| 1213 | + "display_name": "python3", |
1208 | 1214 | "language": "python", |
1209 | | - "name": "nbdev_env" |
| 1215 | + "name": "python3" |
1210 | 1216 | } |
1211 | 1217 | }, |
1212 | 1218 | "nbformat": 4, |
|
0 commit comments