Golfn commited on
Commit
dbdcb6d
Β·
1 Parent(s): 5eaf224

created vector store in Supabase

Browse files
Files changed (5) hide show
  1. README.md +28 -0
  2. metadata.jsonl +0 -0
  3. pdm.lock +374 -17
  4. pyproject.toml +1 -1
  5. upload_metadata.py +96 -0
README.md CHANGED
@@ -14,3 +14,31 @@ hf_oauth_expiration_minutes: 480
14
  ---
15
 
16
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
  ---
15
 
16
 
17
+ Script to setting up tables and vector search
18
+ "CREATE EXTENSION IF NOT EXISTS vector;"
19
+ """
20
+ CREATE TABLE IF NOT EXISTS documents2 (
21
+ id BIGINT PRIMARY KEY,
22
+ content TEXT,
23
+ metadata JSONB,
24
+ embedding VECTOR(1536)
25
+ );
26
+ """
27
+
28
+ create or replace function match_documents_2(
29
+ query_embedding vector(1536),
30
+ match_count int default 5
31
+ )
32
+ returns table (
33
+ id bigint,
34
+ content text,
35
+ metadata jsonb,
36
+ embedding vector
37
+ )
38
+ language sql
39
+ as $$
40
+ select id, content, metadata, embedding
41
+ from documents2
42
+ order by embedding <#> query_embedding
43
+ limit match_count;
44
+ $$;
metadata.jsonl ADDED
The diff for this file is too large to render. See raw diff
 
pdm.lock CHANGED
@@ -5,7 +5,7 @@
5
  groups = ["default"]
6
  strategy = ["inherit_metadata"]
7
  lock_version = "4.5.0"
8
- content_hash = "sha256:d1b978f5c5889ca1859fe0ed1e488dcb2e81f11d054248bf21c48daccbdc55af"
9
 
10
  [[metadata.targets]]
11
  requires_python = "==3.12.*"
@@ -220,7 +220,7 @@ version = "0.4.6"
220
  requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"
221
  summary = "Cross-platform colored terminal text."
222
  groups = ["default"]
223
- marker = "platform_system == \"Windows\""
224
  files = [
225
  {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"},
226
  {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"},
@@ -267,6 +267,19 @@ files = [
267
  {file = "datasets-3.6.0.tar.gz", hash = "sha256:1b2bf43b19776e2787e181cfd329cb0ca1a358ea014780c3581e0f276375e041"},
268
  ]
269
 
 
 
 
 
 
 
 
 
 
 
 
 
 
270
  [[package]]
271
  name = "dill"
272
  version = "0.3.8"
@@ -424,6 +437,23 @@ files = [
424
  {file = "fsspec-2025.3.0.tar.gz", hash = "sha256:a935fd1ea872591f2b5148907d103488fc523295e6c64b835cfad8c3eca44972"},
425
  ]
426
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
427
  [[package]]
428
  name = "gradio"
429
  version = "5.29.1"
@@ -516,6 +546,25 @@ files = [
516
  {file = "groovy-0.1.2.tar.gz", hash = "sha256:25c1dc09b3f9d7e292458aa762c6beb96ea037071bf5e917fc81fb78d2231083"},
517
  ]
518
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
519
  [[package]]
520
  name = "h11"
521
  version = "0.16.0"
@@ -527,6 +576,32 @@ files = [
527
  {file = "h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1"},
528
  ]
529
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
530
  [[package]]
531
  name = "httpcore"
532
  version = "1.0.9"
@@ -570,6 +645,22 @@ files = [
570
  {file = "httpx_sse-0.4.0-py3-none-any.whl", hash = "sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f"},
571
  ]
572
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
573
  [[package]]
574
  name = "huggingface-hub"
575
  version = "0.31.2"
@@ -590,6 +681,17 @@ files = [
590
  {file = "huggingface_hub-0.31.2.tar.gz", hash = "sha256:7053561376ed7f6ffdaecf09cc54d70dc784ac6315fa4bb9b93e19662b029675"},
591
  ]
592
 
 
 
 
 
 
 
 
 
 
 
 
593
  [[package]]
594
  name = "idna"
595
  version = "3.10"
@@ -601,6 +703,17 @@ files = [
601
  {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"},
602
  ]
603
 
 
 
 
 
 
 
 
 
 
 
 
604
  [[package]]
605
  name = "jinja2"
606
  version = "3.1.6"
@@ -963,6 +1076,23 @@ files = [
963
  {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"},
964
  ]
965
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
966
  [[package]]
967
  name = "mpmath"
968
  version = "1.3.0"
@@ -1388,6 +1518,34 @@ files = [
1388
  {file = "pillow-11.2.1.tar.gz", hash = "sha256:a64dd61998416367b7ef979b73d3a85853ba9bec4c2925f74e588879a58716b6"},
1389
  ]
1390
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1391
  [[package]]
1392
  name = "primp"
1393
  version = "0.15.0"
@@ -1433,6 +1591,44 @@ files = [
1433
  {file = "propcache-0.3.1.tar.gz", hash = "sha256:40d980c33765359098837527e18eddefc9a24cea5b45e078a7f3bb5b032c6ecf"},
1434
  ]
1435
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1436
  [[package]]
1437
  name = "pyarrow"
1438
  version = "20.0.0"
@@ -1546,6 +1742,39 @@ files = [
1546
  {file = "pygments-2.19.1.tar.gz", hash = "sha256:61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f"},
1547
  ]
1548
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1549
  [[package]]
1550
  name = "pymupdf"
1551
  version = "1.25.5"
@@ -1563,6 +1792,39 @@ files = [
1563
  {file = "pymupdf-1.25.5.tar.gz", hash = "sha256:5f96311cacd13254c905f6654a004a0a2025b71cabc04fda667f5472f72c15a0"},
1564
  ]
1565
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1566
  [[package]]
1567
  name = "python-dateutil"
1568
  version = "2.9.0.post0"
@@ -1641,6 +1903,23 @@ files = [
1641
  {file = "rank_bm25-0.2.2.tar.gz", hash = "sha256:096ccef76f8188563419aaf384a02f0ea459503fdf77901378d4fd9d87e5e51d"},
1642
  ]
1643
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1644
  [[package]]
1645
  name = "regex"
1646
  version = "2024.11.6"
@@ -1861,7 +2140,6 @@ version = "80.7.1"
1861
  requires_python = ">=3.9"
1862
  summary = "Easily download, build, install, upgrade, and uninstall Python packages"
1863
  groups = ["default"]
1864
- marker = "platform_system == \"Linux\" and platform_machine == \"x86_64\" or python_version >= \"3.12\""
1865
  files = [
1866
  {file = "setuptools-80.7.1-py3-none-any.whl", hash = "sha256:ca5cc1069b85dc23070a6628e6bcecb3292acac802399c7f8edc0100619f9009"},
1867
  {file = "setuptools-80.7.1.tar.gz", hash = "sha256:f6ffc5f0142b1bd8d0ca94ee91b30c0ca862ffd50826da1ea85258a06fd94552"},
@@ -1949,6 +2227,65 @@ files = [
1949
  {file = "starlette-0.46.2.tar.gz", hash = "sha256:7f7361f34eed179294600af672f565727419830b54b7b084efe44bb82d2fccd5"},
1950
  ]
1951
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1952
  [[package]]
1953
  name = "sympy"
1954
  version = "1.14.0"
@@ -2199,6 +2536,26 @@ files = [
2199
  {file = "tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9"},
2200
  ]
2201
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2202
  [[package]]
2203
  name = "urllib3"
2204
  version = "2.4.0"
@@ -2229,24 +2586,24 @@ files = [
2229
 
2230
  [[package]]
2231
  name = "websockets"
2232
- version = "15.0.1"
2233
  requires_python = ">=3.9"
2234
  summary = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
2235
  groups = ["default"]
2236
  files = [
2237
- {file = "websockets-15.0.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:3e90baa811a5d73f3ca0bcbf32064d663ed81318ab225ee4f427ad4e26e5aff3"},
2238
- {file = "websockets-15.0.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:592f1a9fe869c778694f0aa806ba0374e97648ab57936f092fd9d87f8bc03665"},
2239
- {file = "websockets-15.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0701bc3cfcb9164d04a14b149fd74be7347a530ad3bbf15ab2c678a2cd3dd9a2"},
2240
- {file = "websockets-15.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8b56bdcdb4505c8078cb6c7157d9811a85790f2f2b3632c7d1462ab5783d215"},
2241
- {file = "websockets-15.0.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0af68c55afbd5f07986df82831c7bff04846928ea8d1fd7f30052638788bc9b5"},
2242
- {file = "websockets-15.0.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64dee438fed052b52e4f98f76c5790513235efaa1ef7f3f2192c392cd7c91b65"},
2243
- {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d5f6b181bb38171a8ad1d6aa58a67a6aa9d4b38d0f8c5f496b9e42561dfc62fe"},
2244
- {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5d54b09eba2bada6011aea5375542a157637b91029687eb4fdb2dab11059c1b4"},
2245
- {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3be571a8b5afed347da347bfcf27ba12b069d9d7f42cb8c7028b5e98bbb12597"},
2246
- {file = "websockets-15.0.1-cp312-cp312-win32.whl", hash = "sha256:c338ffa0520bdb12fbc527265235639fb76e7bc7faafbb93f6ba80d9c06578a9"},
2247
- {file = "websockets-15.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcd5cf9e305d7b8338754470cf69cf81f420459dbae8a3b40cee57417f4614a7"},
2248
- {file = "websockets-15.0.1-py3-none-any.whl", hash = "sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f"},
2249
- {file = "websockets-15.0.1.tar.gz", hash = "sha256:82544de02076bafba038ce055ee6412d68da13ab47f0c60cab827346de828dee"},
2250
  ]
2251
 
2252
  [[package]]
 
5
  groups = ["default"]
6
  strategy = ["inherit_metadata"]
7
  lock_version = "4.5.0"
8
+ content_hash = "sha256:0c6e1c83ed4ec2b1751cc0917ce598d614bf977d7f7b4568110a8a1b16d40739"
9
 
10
  [[metadata.targets]]
11
  requires_python = "==3.12.*"
 
220
  requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"
221
  summary = "Cross-platform colored terminal text."
222
  groups = ["default"]
223
+ marker = "platform_system == \"Windows\" or sys_platform == \"win32\""
224
  files = [
225
  {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"},
226
  {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"},
 
267
  {file = "datasets-3.6.0.tar.gz", hash = "sha256:1b2bf43b19776e2787e181cfd329cb0ca1a358ea014780c3581e0f276375e041"},
268
  ]
269
 
270
+ [[package]]
271
+ name = "deprecation"
272
+ version = "2.1.0"
273
+ summary = "A library to handle automated deprecations"
274
+ groups = ["default"]
275
+ dependencies = [
276
+ "packaging",
277
+ ]
278
+ files = [
279
+ {file = "deprecation-2.1.0-py2.py3-none-any.whl", hash = "sha256:a10811591210e1fb0e768a8c25517cabeabcba6f0bf96564f8ff45189f90b14a"},
280
+ {file = "deprecation-2.1.0.tar.gz", hash = "sha256:72b3bde64e5d778694b0cf68178aed03d15e15477116add3fb773e581f9518ff"},
281
+ ]
282
+
283
  [[package]]
284
  name = "dill"
285
  version = "0.3.8"
 
437
  {file = "fsspec-2025.3.0.tar.gz", hash = "sha256:a935fd1ea872591f2b5148907d103488fc523295e6c64b835cfad8c3eca44972"},
438
  ]
439
 
440
+ [[package]]
441
+ name = "gotrue"
442
+ version = "2.12.0"
443
+ requires_python = "<4.0,>=3.9"
444
+ summary = "Python Client Library for Supabase Auth"
445
+ groups = ["default"]
446
+ dependencies = [
447
+ "httpx[http2]<0.29,>=0.26",
448
+ "pydantic<3,>=1.10",
449
+ "pyjwt<3.0.0,>=2.10.1",
450
+ "pytest-mock<4.0.0,>=3.14.0",
451
+ ]
452
+ files = [
453
+ {file = "gotrue-2.12.0-py3-none-any.whl", hash = "sha256:de94928eebb42d7d9672dbe4fbd0b51140a45051a31626a06dad2ad44a9a976a"},
454
+ {file = "gotrue-2.12.0.tar.gz", hash = "sha256:b9ea164ee52964d8364c550cde16dd0e9576241a4cffeaa52eca339f61d1d14b"},
455
+ ]
456
+
457
  [[package]]
458
  name = "gradio"
459
  version = "5.29.1"
 
546
  {file = "groovy-0.1.2.tar.gz", hash = "sha256:25c1dc09b3f9d7e292458aa762c6beb96ea037071bf5e917fc81fb78d2231083"},
547
  ]
548
 
549
+ [[package]]
550
+ name = "grpcio"
551
+ version = "1.67.1"
552
+ requires_python = ">=3.8"
553
+ summary = "HTTP/2-based RPC framework"
554
+ groups = ["default"]
555
+ files = [
556
+ {file = "grpcio-1.67.1-cp312-cp312-linux_armv7l.whl", hash = "sha256:267d1745894200e4c604958da5f856da6293f063327cb049a51fe67348e4f953"},
557
+ {file = "grpcio-1.67.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:85f69fdc1d28ce7cff8de3f9c67db2b0ca9ba4449644488c1e0303c146135ddb"},
558
+ {file = "grpcio-1.67.1-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:f26b0b547eb8d00e195274cdfc63ce64c8fc2d3e2d00b12bf468ece41a0423a0"},
559
+ {file = "grpcio-1.67.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4422581cdc628f77302270ff839a44f4c24fdc57887dc2a45b7e53d8fc2376af"},
560
+ {file = "grpcio-1.67.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1d7616d2ded471231c701489190379e0c311ee0a6c756f3c03e6a62b95a7146e"},
561
+ {file = "grpcio-1.67.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8a00efecde9d6fcc3ab00c13f816313c040a28450e5e25739c24f432fc6d3c75"},
562
+ {file = "grpcio-1.67.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:699e964923b70f3101393710793289e42845791ea07565654ada0969522d0a38"},
563
+ {file = "grpcio-1.67.1-cp312-cp312-win32.whl", hash = "sha256:4e7b904484a634a0fff132958dabdb10d63e0927398273917da3ee103e8d1f78"},
564
+ {file = "grpcio-1.67.1-cp312-cp312-win_amd64.whl", hash = "sha256:5721e66a594a6c4204458004852719b38f3d5522082be9061d6510b455c90afc"},
565
+ {file = "grpcio-1.67.1.tar.gz", hash = "sha256:3dc2ed4cabea4dc14d5e708c2b426205956077cc5de419b4d4079315017e9732"},
566
+ ]
567
+
568
  [[package]]
569
  name = "h11"
570
  version = "0.16.0"
 
576
  {file = "h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1"},
577
  ]
578
 
579
+ [[package]]
580
+ name = "h2"
581
+ version = "4.2.0"
582
+ requires_python = ">=3.9"
583
+ summary = "Pure-Python HTTP/2 protocol implementation"
584
+ groups = ["default"]
585
+ dependencies = [
586
+ "hpack<5,>=4.1",
587
+ "hyperframe<7,>=6.1",
588
+ ]
589
+ files = [
590
+ {file = "h2-4.2.0-py3-none-any.whl", hash = "sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0"},
591
+ {file = "h2-4.2.0.tar.gz", hash = "sha256:c8a52129695e88b1a0578d8d2cc6842bbd79128ac685463b887ee278126ad01f"},
592
+ ]
593
+
594
+ [[package]]
595
+ name = "hpack"
596
+ version = "4.1.0"
597
+ requires_python = ">=3.9"
598
+ summary = "Pure-Python HPACK header encoding"
599
+ groups = ["default"]
600
+ files = [
601
+ {file = "hpack-4.1.0-py3-none-any.whl", hash = "sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496"},
602
+ {file = "hpack-4.1.0.tar.gz", hash = "sha256:ec5eca154f7056aa06f196a557655c5b009b382873ac8d1e66e79e87535f1dca"},
603
+ ]
604
+
605
  [[package]]
606
  name = "httpcore"
607
  version = "1.0.9"
 
645
  {file = "httpx_sse-0.4.0-py3-none-any.whl", hash = "sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f"},
646
  ]
647
 
648
+ [[package]]
649
+ name = "httpx"
650
+ version = "0.28.1"
651
+ extras = ["http2"]
652
+ requires_python = ">=3.8"
653
+ summary = "The next generation HTTP client."
654
+ groups = ["default"]
655
+ dependencies = [
656
+ "h2<5,>=3",
657
+ "httpx==0.28.1",
658
+ ]
659
+ files = [
660
+ {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"},
661
+ {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"},
662
+ ]
663
+
664
  [[package]]
665
  name = "huggingface-hub"
666
  version = "0.31.2"
 
681
  {file = "huggingface_hub-0.31.2.tar.gz", hash = "sha256:7053561376ed7f6ffdaecf09cc54d70dc784ac6315fa4bb9b93e19662b029675"},
682
  ]
683
 
684
+ [[package]]
685
+ name = "hyperframe"
686
+ version = "6.1.0"
687
+ requires_python = ">=3.9"
688
+ summary = "Pure-Python HTTP/2 framing"
689
+ groups = ["default"]
690
+ files = [
691
+ {file = "hyperframe-6.1.0-py3-none-any.whl", hash = "sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5"},
692
+ {file = "hyperframe-6.1.0.tar.gz", hash = "sha256:f630908a00854a7adeabd6382b43923a4c4cd4b821fcb527e6ab9e15382a3b08"},
693
+ ]
694
+
695
  [[package]]
696
  name = "idna"
697
  version = "3.10"
 
703
  {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"},
704
  ]
705
 
706
+ [[package]]
707
+ name = "iniconfig"
708
+ version = "2.1.0"
709
+ requires_python = ">=3.8"
710
+ summary = "brain-dead simple config-ini parsing"
711
+ groups = ["default"]
712
+ files = [
713
+ {file = "iniconfig-2.1.0-py3-none-any.whl", hash = "sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760"},
714
+ {file = "iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7"},
715
+ ]
716
+
717
  [[package]]
718
  name = "jinja2"
719
  version = "3.1.6"
 
1076
  {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"},
1077
  ]
1078
 
1079
+ [[package]]
1080
+ name = "milvus-lite"
1081
+ version = "2.4.12"
1082
+ requires_python = ">=3.7"
1083
+ summary = "A lightweight version of Milvus wrapped with Python."
1084
+ groups = ["default"]
1085
+ marker = "sys_platform != \"win32\""
1086
+ dependencies = [
1087
+ "tqdm",
1088
+ ]
1089
+ files = [
1090
+ {file = "milvus_lite-2.4.12-py3-none-macosx_10_9_x86_64.whl", hash = "sha256:e8d4f7cdd5f731efd6faeee3715d280fd91a5f9b4d89312664d56401f65b1473"},
1091
+ {file = "milvus_lite-2.4.12-py3-none-macosx_11_0_arm64.whl", hash = "sha256:20087663e7b4385050b7ad08f1f03404426d4c87b1ff91d5a8723eee7fd49e88"},
1092
+ {file = "milvus_lite-2.4.12-py3-none-manylinux2014_aarch64.whl", hash = "sha256:a0f3a5ddbfd19f4a6b842b2fd3445693c796cde272b701a1646a94c1ac45d3d7"},
1093
+ {file = "milvus_lite-2.4.12-py3-none-manylinux2014_x86_64.whl", hash = "sha256:334037ebbab60243b5d8b43d54ca2f835d81d48c3cda0c6a462605e588deb05d"},
1094
+ ]
1095
+
1096
  [[package]]
1097
  name = "mpmath"
1098
  version = "1.3.0"
 
1518
  {file = "pillow-11.2.1.tar.gz", hash = "sha256:a64dd61998416367b7ef979b73d3a85853ba9bec4c2925f74e588879a58716b6"},
1519
  ]
1520
 
1521
+ [[package]]
1522
+ name = "pluggy"
1523
+ version = "1.6.0"
1524
+ requires_python = ">=3.9"
1525
+ summary = "plugin and hook calling mechanisms for python"
1526
+ groups = ["default"]
1527
+ files = [
1528
+ {file = "pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746"},
1529
+ {file = "pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3"},
1530
+ ]
1531
+
1532
+ [[package]]
1533
+ name = "postgrest"
1534
+ version = "1.0.1"
1535
+ requires_python = "<4.0,>=3.9"
1536
+ summary = "PostgREST client for Python. This library provides an ORM interface to PostgREST."
1537
+ groups = ["default"]
1538
+ dependencies = [
1539
+ "deprecation<3.0.0,>=2.1.0",
1540
+ "httpx[http2]<0.29,>=0.26",
1541
+ "pydantic<3.0,>=1.9",
1542
+ "strenum<0.5.0,>=0.4.9; python_version < \"3.11\"",
1543
+ ]
1544
+ files = [
1545
+ {file = "postgrest-1.0.1-py3-none-any.whl", hash = "sha256:fcc0518d68d924198c41c8cbaa70c342c641cb49311be33ba4fc74b4e742f22e"},
1546
+ {file = "postgrest-1.0.1.tar.gz", hash = "sha256:0d6556dadfd8392147d98aad097fe7bf0196602e28a58eee5e9bde4390bb573f"},
1547
+ ]
1548
+
1549
  [[package]]
1550
  name = "primp"
1551
  version = "0.15.0"
 
1591
  {file = "propcache-0.3.1.tar.gz", hash = "sha256:40d980c33765359098837527e18eddefc9a24cea5b45e078a7f3bb5b032c6ecf"},
1592
  ]
1593
 
1594
+ [[package]]
1595
+ name = "protobuf"
1596
+ version = "6.31.0"
1597
+ requires_python = ">=3.9"
1598
+ summary = ""
1599
+ groups = ["default"]
1600
+ files = [
1601
+ {file = "protobuf-6.31.0-cp310-abi3-win32.whl", hash = "sha256:10bd62802dfa0588649740a59354090eaf54b8322f772fbdcca19bc78d27f0d6"},
1602
+ {file = "protobuf-6.31.0-cp310-abi3-win_amd64.whl", hash = "sha256:3e987c99fd634be8347246a02123250f394ba20573c953de133dc8b2c107dd71"},
1603
+ {file = "protobuf-6.31.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:2c812f0f96ceb6b514448cefeb1df54ec06dde456783f5099c0e2f8a0f2caa89"},
1604
+ {file = "protobuf-6.31.0-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:67ce50195e4e584275623b8e6bc6d3d3dfd93924bf6116b86b3b8975ab9e4571"},
1605
+ {file = "protobuf-6.31.0-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:5353e38844168a327acd2b2aa440044411cd8d1b6774d5701008bd1dba067c79"},
1606
+ {file = "protobuf-6.31.0-py3-none-any.whl", hash = "sha256:6ac2e82556e822c17a8d23aa1190bbc1d06efb9c261981da95c71c9da09e9e23"},
1607
+ {file = "protobuf-6.31.0.tar.gz", hash = "sha256:314fab1a6a316469dc2dd46f993cbbe95c861ea6807da910becfe7475bc26ffe"},
1608
+ ]
1609
+
1610
+ [[package]]
1611
+ name = "psycopg2-binary"
1612
+ version = "2.9.10"
1613
+ requires_python = ">=3.8"
1614
+ summary = "psycopg2 - Python-PostgreSQL Database Adapter"
1615
+ groups = ["default"]
1616
+ files = [
1617
+ {file = "psycopg2-binary-2.9.10.tar.gz", hash = "sha256:4b3df0e6990aa98acda57d983942eff13d824135fe2250e6522edaa782a06de2"},
1618
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-macosx_12_0_x86_64.whl", hash = "sha256:880845dfe1f85d9d5f7c412efea7a08946a46894537e4e5d091732eb1d34d9a0"},
1619
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:9440fa522a79356aaa482aa4ba500b65f28e5d0e63b801abf6aa152a29bd842a"},
1620
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e3923c1d9870c49a2d44f795df0c889a22380d36ef92440ff618ec315757e539"},
1621
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7b2c956c028ea5de47ff3a8d6b3cc3330ab45cf0b7c3da35a2d6ff8420896526"},
1622
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f758ed67cab30b9a8d2833609513ce4d3bd027641673d4ebc9c067e4d208eec1"},
1623
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8cd9b4f2cfab88ed4a9106192de509464b75a906462fb846b936eabe45c2063e"},
1624
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6dc08420625b5a20b53551c50deae6e231e6371194fa0651dbe0fb206452ae1f"},
1625
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:d7cd730dfa7c36dbe8724426bf5612798734bff2d3c3857f36f2733f5bfc7c00"},
1626
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:155e69561d54d02b3c3209545fb08938e27889ff5a10c19de8d23eb5a41be8a5"},
1627
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c3cc28a6fd5a4a26224007712e79b81dbaee2ffb90ff406256158ec4d7b52b47"},
1628
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-win32.whl", hash = "sha256:ec8a77f521a17506a24a5f626cb2aee7850f9b69a0afe704586f63a464f3cd64"},
1629
+ {file = "psycopg2_binary-2.9.10-cp312-cp312-win_amd64.whl", hash = "sha256:18c5ee682b9c6dd3696dad6e54cc7ff3a1a9020df6a5c0f861ef8bfd338c3ca0"},
1630
+ ]
1631
+
1632
  [[package]]
1633
  name = "pyarrow"
1634
  version = "20.0.0"
 
1742
  {file = "pygments-2.19.1.tar.gz", hash = "sha256:61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f"},
1743
  ]
1744
 
1745
+ [[package]]
1746
+ name = "pyjwt"
1747
+ version = "2.10.1"
1748
+ requires_python = ">=3.9"
1749
+ summary = "JSON Web Token implementation in Python"
1750
+ groups = ["default"]
1751
+ files = [
1752
+ {file = "PyJWT-2.10.1-py3-none-any.whl", hash = "sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb"},
1753
+ {file = "pyjwt-2.10.1.tar.gz", hash = "sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953"},
1754
+ ]
1755
+
1756
+ [[package]]
1757
+ name = "pymilvus"
1758
+ version = "2.5.9"
1759
+ requires_python = ">=3.8"
1760
+ summary = "Python Sdk for Milvus"
1761
+ groups = ["default"]
1762
+ dependencies = [
1763
+ "grpcio<=1.67.1,>=1.49.1",
1764
+ "milvus-lite>=2.4.0; sys_platform != \"win32\"",
1765
+ "numpy<1.25.0; python_version <= \"3.8\"",
1766
+ "pandas>=1.2.4",
1767
+ "protobuf>=3.20.0",
1768
+ "python-dotenv<2.0.0,>=1.0.1",
1769
+ "setuptools<70.1; python_version <= \"3.8\"",
1770
+ "setuptools>69",
1771
+ "ujson>=2.0.0",
1772
+ ]
1773
+ files = [
1774
+ {file = "pymilvus-2.5.9-py3-none-any.whl", hash = "sha256:e905a38429c3d8682a314e133a2dcc6e97f7b3cd28f07ef41c679e0cf92b0e0a"},
1775
+ {file = "pymilvus-2.5.9.tar.gz", hash = "sha256:5f524233450494f64d4db6549d0f56e7eb147e96da6183486c737c71a3f7dc61"},
1776
+ ]
1777
+
1778
  [[package]]
1779
  name = "pymupdf"
1780
  version = "1.25.5"
 
1792
  {file = "pymupdf-1.25.5.tar.gz", hash = "sha256:5f96311cacd13254c905f6654a004a0a2025b71cabc04fda667f5472f72c15a0"},
1793
  ]
1794
 
1795
+ [[package]]
1796
+ name = "pytest"
1797
+ version = "8.3.5"
1798
+ requires_python = ">=3.8"
1799
+ summary = "pytest: simple powerful testing with Python"
1800
+ groups = ["default"]
1801
+ dependencies = [
1802
+ "colorama; sys_platform == \"win32\"",
1803
+ "exceptiongroup>=1.0.0rc8; python_version < \"3.11\"",
1804
+ "iniconfig",
1805
+ "packaging",
1806
+ "pluggy<2,>=1.5",
1807
+ "tomli>=1; python_version < \"3.11\"",
1808
+ ]
1809
+ files = [
1810
+ {file = "pytest-8.3.5-py3-none-any.whl", hash = "sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820"},
1811
+ {file = "pytest-8.3.5.tar.gz", hash = "sha256:f4efe70cc14e511565ac476b57c279e12a855b11f48f212af1080ef2263d3845"},
1812
+ ]
1813
+
1814
+ [[package]]
1815
+ name = "pytest-mock"
1816
+ version = "3.14.0"
1817
+ requires_python = ">=3.8"
1818
+ summary = "Thin-wrapper around the mock package for easier use with pytest"
1819
+ groups = ["default"]
1820
+ dependencies = [
1821
+ "pytest>=6.2.5",
1822
+ ]
1823
+ files = [
1824
+ {file = "pytest-mock-3.14.0.tar.gz", hash = "sha256:2719255a1efeceadbc056d6bf3df3d1c5015530fb40cf347c0f9afac88410bd0"},
1825
+ {file = "pytest_mock-3.14.0-py3-none-any.whl", hash = "sha256:0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"},
1826
+ ]
1827
+
1828
  [[package]]
1829
  name = "python-dateutil"
1830
  version = "2.9.0.post0"
 
1903
  {file = "rank_bm25-0.2.2.tar.gz", hash = "sha256:096ccef76f8188563419aaf384a02f0ea459503fdf77901378d4fd9d87e5e51d"},
1904
  ]
1905
 
1906
+ [[package]]
1907
+ name = "realtime"
1908
+ version = "2.4.3"
1909
+ requires_python = "<4.0,>=3.9"
1910
+ summary = ""
1911
+ groups = ["default"]
1912
+ dependencies = [
1913
+ "aiohttp<4.0.0,>=3.11.18",
1914
+ "python-dateutil<3.0.0,>=2.8.1",
1915
+ "typing-extensions<5.0.0,>=4.13.2",
1916
+ "websockets<15,>=11",
1917
+ ]
1918
+ files = [
1919
+ {file = "realtime-2.4.3-py3-none-any.whl", hash = "sha256:09ff3b61ac928413a27765640b67362380eaddba84a7037a17972a64b1ac52f7"},
1920
+ {file = "realtime-2.4.3.tar.gz", hash = "sha256:152febabc822ce60e11f202842c5aa6858ae4bd04920bfd6a00c1dd492f426b0"},
1921
+ ]
1922
+
1923
  [[package]]
1924
  name = "regex"
1925
  version = "2024.11.6"
 
2140
  requires_python = ">=3.9"
2141
  summary = "Easily download, build, install, upgrade, and uninstall Python packages"
2142
  groups = ["default"]
 
2143
  files = [
2144
  {file = "setuptools-80.7.1-py3-none-any.whl", hash = "sha256:ca5cc1069b85dc23070a6628e6bcecb3292acac802399c7f8edc0100619f9009"},
2145
  {file = "setuptools-80.7.1.tar.gz", hash = "sha256:f6ffc5f0142b1bd8d0ca94ee91b30c0ca862ffd50826da1ea85258a06fd94552"},
 
2227
  {file = "starlette-0.46.2.tar.gz", hash = "sha256:7f7361f34eed179294600af672f565727419830b54b7b084efe44bb82d2fccd5"},
2228
  ]
2229
 
2230
+ [[package]]
2231
+ name = "storage3"
2232
+ version = "0.11.3"
2233
+ requires_python = "<4.0,>=3.9"
2234
+ summary = "Supabase Storage client for Python."
2235
+ groups = ["default"]
2236
+ dependencies = [
2237
+ "httpx[http2]<0.29,>=0.26",
2238
+ "python-dateutil<3.0.0,>=2.8.2",
2239
+ ]
2240
+ files = [
2241
+ {file = "storage3-0.11.3-py3-none-any.whl", hash = "sha256:090c42152217d5d39bd94af3ddeb60c8982f3a283dcd90b53d058f2db33e6007"},
2242
+ {file = "storage3-0.11.3.tar.gz", hash = "sha256:883637132aad36d9d92b7c497a8a56dff7c51f15faf2ff7acbccefbbd5e97347"},
2243
+ ]
2244
+
2245
+ [[package]]
2246
+ name = "strenum"
2247
+ version = "0.4.15"
2248
+ summary = "An Enum that inherits from str."
2249
+ groups = ["default"]
2250
+ files = [
2251
+ {file = "StrEnum-0.4.15-py3-none-any.whl", hash = "sha256:a30cda4af7cc6b5bf52c8055bc4bf4b2b6b14a93b574626da33df53cf7740659"},
2252
+ {file = "StrEnum-0.4.15.tar.gz", hash = "sha256:878fb5ab705442070e4dd1929bb5e2249511c0bcf2b0eeacf3bcd80875c82eff"},
2253
+ ]
2254
+
2255
+ [[package]]
2256
+ name = "supabase"
2257
+ version = "2.15.1"
2258
+ requires_python = "<4.0,>=3.9"
2259
+ summary = "Supabase client for Python."
2260
+ groups = ["default"]
2261
+ dependencies = [
2262
+ "gotrue<3.0.0,>=2.11.0",
2263
+ "httpx<0.29,>=0.26",
2264
+ "postgrest<1.1,>0.19",
2265
+ "realtime<2.5.0,>=2.4.0",
2266
+ "storage3<0.12,>=0.10",
2267
+ "supafunc<0.10,>=0.9",
2268
+ ]
2269
+ files = [
2270
+ {file = "supabase-2.15.1-py3-none-any.whl", hash = "sha256:749299cdd74ecf528f52045c1e60d9dba81cc2054656f754c0ca7fba0dd34827"},
2271
+ {file = "supabase-2.15.1.tar.gz", hash = "sha256:66e847dab9346062aa6a25b4e81ac786b972c5d4299827c57d1d5bd6a0346070"},
2272
+ ]
2273
+
2274
+ [[package]]
2275
+ name = "supafunc"
2276
+ version = "0.9.4"
2277
+ requires_python = "<4.0,>=3.9"
2278
+ summary = "Library for Supabase Functions"
2279
+ groups = ["default"]
2280
+ dependencies = [
2281
+ "httpx[http2]<0.29,>=0.26",
2282
+ "strenum<0.5.0,>=0.4.15",
2283
+ ]
2284
+ files = [
2285
+ {file = "supafunc-0.9.4-py3-none-any.whl", hash = "sha256:2b34a794fb7930953150a434cdb93c24a04cf526b2f51a9e60b2be0b86d44fb2"},
2286
+ {file = "supafunc-0.9.4.tar.gz", hash = "sha256:68824a9a7bcccf5ab1e038cda632ba47cba27f2a7dc606014206b56f5a071de2"},
2287
+ ]
2288
+
2289
  [[package]]
2290
  name = "sympy"
2291
  version = "1.14.0"
 
2536
  {file = "tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9"},
2537
  ]
2538
 
2539
+ [[package]]
2540
+ name = "ujson"
2541
+ version = "5.10.0"
2542
+ requires_python = ">=3.8"
2543
+ summary = "Ultra fast JSON encoder and decoder for Python"
2544
+ groups = ["default"]
2545
+ files = [
2546
+ {file = "ujson-5.10.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:98ba15d8cbc481ce55695beee9f063189dce91a4b08bc1d03e7f0152cd4bbdd5"},
2547
+ {file = "ujson-5.10.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a9d2edbf1556e4f56e50fab7d8ff993dbad7f54bac68eacdd27a8f55f433578e"},
2548
+ {file = "ujson-5.10.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6627029ae4f52d0e1a2451768c2c37c0c814ffc04f796eb36244cf16b8e57043"},
2549
+ {file = "ujson-5.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8ccb77b3e40b151e20519c6ae6d89bfe3f4c14e8e210d910287f778368bb3d1"},
2550
+ {file = "ujson-5.10.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3caf9cd64abfeb11a3b661329085c5e167abbe15256b3b68cb5d914ba7396f3"},
2551
+ {file = "ujson-5.10.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6e32abdce572e3a8c3d02c886c704a38a1b015a1fb858004e03d20ca7cecbb21"},
2552
+ {file = "ujson-5.10.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a65b6af4d903103ee7b6f4f5b85f1bfd0c90ba4eeac6421aae436c9988aa64a2"},
2553
+ {file = "ujson-5.10.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:604a046d966457b6cdcacc5aa2ec5314f0e8c42bae52842c1e6fa02ea4bda42e"},
2554
+ {file = "ujson-5.10.0-cp312-cp312-win32.whl", hash = "sha256:6dea1c8b4fc921bf78a8ff00bbd2bfe166345f5536c510671bccececb187c80e"},
2555
+ {file = "ujson-5.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:38665e7d8290188b1e0d57d584eb8110951a9591363316dd41cf8686ab1d0abc"},
2556
+ {file = "ujson-5.10.0.tar.gz", hash = "sha256:b3cd8f3c5d8c7738257f1018880444f7b7d9b66232c64649f562d7ba86ad4bc1"},
2557
+ ]
2558
+
2559
  [[package]]
2560
  name = "urllib3"
2561
  version = "2.4.0"
 
2586
 
2587
  [[package]]
2588
  name = "websockets"
2589
+ version = "14.2"
2590
  requires_python = ">=3.9"
2591
  summary = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
2592
  groups = ["default"]
2593
  files = [
2594
+ {file = "websockets-14.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:1f20522e624d7ffbdbe259c6b6a65d73c895045f76a93719aa10cd93b3de100c"},
2595
+ {file = "websockets-14.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:647b573f7d3ada919fd60e64d533409a79dcf1ea21daeb4542d1d996519ca967"},
2596
+ {file = "websockets-14.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6af99a38e49f66be5a64b1e890208ad026cda49355661549c507152113049990"},
2597
+ {file = "websockets-14.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:091ab63dfc8cea748cc22c1db2814eadb77ccbf82829bac6b2fbe3401d548eda"},
2598
+ {file = "websockets-14.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b374e8953ad477d17e4851cdc66d83fdc2db88d9e73abf755c94510ebddceb95"},
2599
+ {file = "websockets-14.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a39d7eceeea35db85b85e1169011bb4321c32e673920ae9c1b6e0978590012a3"},
2600
+ {file = "websockets-14.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0a6f3efd47ffd0d12080594f434faf1cd2549b31e54870b8470b28cc1d3817d9"},
2601
+ {file = "websockets-14.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:065ce275e7c4ffb42cb738dd6b20726ac26ac9ad0a2a48e33ca632351a737267"},
2602
+ {file = "websockets-14.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e9d0e53530ba7b8b5e389c02282f9d2aa47581514bd6049d3a7cffe1385cf5fe"},
2603
+ {file = "websockets-14.2-cp312-cp312-win32.whl", hash = "sha256:20e6dd0984d7ca3037afcb4494e48c74ffb51e8013cac71cf607fffe11df7205"},
2604
+ {file = "websockets-14.2-cp312-cp312-win_amd64.whl", hash = "sha256:44bba1a956c2c9d268bdcdf234d5e5ff4c9b6dc3e300545cbe99af59dda9dcce"},
2605
+ {file = "websockets-14.2-py3-none-any.whl", hash = "sha256:7a6ceec4ea84469f15cf15807a747e9efe57e369c384fa86e022b3bea679b79b"},
2606
+ {file = "websockets-14.2.tar.gz", hash = "sha256:5059ed9c54945efb321f097084b4c7e52c246f2c869815876a69d1efc4ad6eb5"},
2607
  ]
2608
 
2609
  [[package]]
pyproject.toml CHANGED
@@ -5,7 +5,7 @@ description = "Default template for PDM package"
5
  authors = [
6
  {name = "Supphawit_Golf", email = "supphawit.n@gmail.com"},
7
  ]
8
- dependencies = ["langchain>=0.3.25", "huggingface-hub>=0.31.2", "pandas>=2.2.3", "langgraph>=0.4.5", "langchain-openai>=0.3.17", "dotenv>=0.9.9", "datasets>=3.6.0", "langchain-community>=0.3.24", "rank-bm25>=0.2.2", "langchain-huggingface>=0.2.0", "duckduckgo-search>=8.0.2", "requests>=2.32.3", "gradio>=5.29.1", "arxiv>=2.2.0", "pymupdf>=1.25.5"]
9
  requires-python = "==3.12.*"
10
  readme = "README.md"
11
  license = {text = "MIT"}
 
5
  authors = [
6
  {name = "Supphawit_Golf", email = "supphawit.n@gmail.com"},
7
  ]
8
+ dependencies = ["langchain>=0.3.25", "huggingface-hub>=0.31.2", "pandas>=2.2.3", "langgraph>=0.4.5", "langchain-openai>=0.3.17", "dotenv>=0.9.9", "datasets>=3.6.0", "langchain-community>=0.3.24", "rank-bm25>=0.2.2", "langchain-huggingface>=0.2.0", "duckduckgo-search>=8.0.2", "requests>=2.32.3", "gradio>=5.29.1", "arxiv>=2.2.0", "pymupdf>=1.25.5", "pymilvus>=2.5.9", "supabase>=2.15.1", "psycopg2-binary>=2.9.10"]
9
  requires-python = "==3.12.*"
10
  readme = "README.md"
11
  license = {text = "MIT"}
upload_metadata.py ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import json
2
+ import os
3
+ from dotenv import load_dotenv
4
+ load_dotenv()
5
+ with open('metadata.jsonl', 'r') as f:
6
+ json_list = list(f)
7
+
8
+ json_QA = []
9
+ for json_str in json_list:
10
+ json_data = json.loads(json_str)
11
+ json_QA.append(json_data)
12
+
13
+ #test access to the metadata
14
+ # import random
15
+ # random_samples = random.sample(json_QA, 1)
16
+ # for sample in random_samples:
17
+ # print("=" * 50)
18
+ # print(f"Task ID: {sample['task_id']}")
19
+ # print(f"Question: {sample['Question']}")
20
+ # print(f"Level: {sample['Level']}")
21
+ # print(f"Final Answer: {sample['Final answer']}")
22
+ # print(f"Annotator Metadata: ")
23
+ # print(f" β”œβ”€β”€ Steps: ")
24
+ # for step in sample['Annotator Metadata']['Steps'].split('\n'):
25
+ # print(f" β”‚ β”œβ”€β”€ {step}")
26
+ # print(f" β”œβ”€β”€ Number of steps: {sample['Annotator Metadata']['Number of steps']}")
27
+ # print(f" β”œβ”€β”€ How long did this take?: {sample['Annotator Metadata']['How long did this take?']}")
28
+ # print(f" β”œβ”€β”€ Tools:")
29
+ # for tool in sample['Annotator Metadata']['Tools'].split('\n'):
30
+ # print(f" β”‚ β”œβ”€β”€ {tool}")
31
+ # print(f" └── Number of tools: {sample['Annotator Metadata']['Number of tools']}")
32
+ # print("=" * 50)
33
+ #initialize the supabase client
34
+ import os
35
+ from dotenv import load_dotenv
36
+ from langchain_huggingface import HuggingFaceEmbeddings
37
+ from langchain_community.vectorstores import SupabaseVectorStore
38
+ from supabase.client import Client, create_client
39
+ from langchain.embeddings import OpenAIEmbeddings
40
+
41
+ load_dotenv()
42
+
43
+ supabase_url = os.environ.get("SUPABASE_URL")
44
+ supabase_key = os.environ.get("SUPABASE_KEY")
45
+ supabase: Client = create_client(supabase_url, supabase_key)
46
+
47
+ #setup embedding model
48
+ embeddings = OpenAIEmbeddings(
49
+ model="text-embedding-3-small",api_key=os.environ.get("OPENAI_KEY"))
50
+
51
+ def get_embedding(text: str) -> list[float]:
52
+ """Get the embedding for a given text using OpenAI's API."""
53
+ response = embeddings.embed_query(text)
54
+ return response
55
+
56
+ # #insert data into database
57
+ # from langchain.schema import Document
58
+ # docs = []
59
+ # cnt = 0
60
+ # for sample in json_QA:
61
+ # content = f"Question : {sample['Question']}\n\nFinal answer : {sample['Final answer']}"
62
+ # doc = {
63
+ # "id" : cnt,
64
+ # "content" : content,
65
+ # "metadata" : {
66
+ # "source" : sample['task_id']
67
+ # },
68
+ # "embedding" : get_embedding(content),
69
+ # }
70
+ # docs.append(doc)
71
+ # cnt += 1
72
+ # print(f'total number of documents: {cnt+1}')
73
+ # # upload the documents to the vector database
74
+ # try:
75
+ # response = (
76
+ # supabase.table("documents_agent")
77
+ # .insert(docs)
78
+ # .execute()
79
+ # )
80
+ # except Exception as exception:
81
+ # print("Error inserting data into Supabase:", exception)
82
+
83
+ #Check data in table and setup vectorstore
84
+ # add items to vector database
85
+ vector_store = SupabaseVectorStore(
86
+ client=supabase,
87
+ embedding= embeddings,
88
+ table_name="documents_agent",
89
+ query_name="match_documents",
90
+ )
91
+ retriever = vector_store.as_retriever()
92
+
93
+ query = "On June 6, 2023, an article by Carolyn Collins Petersen was published in Universe Today. This article mentions a team that produced a paper about their observations, linked at the bottom of the article. Find this paper. Under what NASA award number was the work performed by R. G. Arendt supported by?"
94
+ # matched_docs = vector_store.similarity_search(query, k=2)
95
+ retrived_docs = retriever.invoke(query)
96
+ print(retrived_docs[0])