puzan789 commited on
Commit
a6ccbb2
·
1 Parent(s): f655ba2
Files changed (4) hide show
  1. pyproject.toml +1 -0
  2. src/embedding/embedding.py +11 -34
  3. src/settings.py +1 -0
  4. uv.lock +148 -0
pyproject.toml CHANGED
@@ -9,6 +9,7 @@ dependencies = [
9
  "huggingface-hub>=0.30.2",
10
  "langchain>=0.3.24",
11
  "langchain-community>=0.3.23",
 
12
  "langchain-groq>=0.3.2",
13
  "langchain-huggingface>=0.1.2",
14
  "langchain-qdrant>=0.2.0",
 
9
  "huggingface-hub>=0.30.2",
10
  "langchain>=0.3.24",
11
  "langchain-community>=0.3.23",
12
+ "langchain-google-genai>=2.1.4",
13
  "langchain-groq>=0.3.2",
14
  "langchain-huggingface>=0.1.2",
15
  "langchain-qdrant>=0.2.0",
src/embedding/embedding.py CHANGED
@@ -1,39 +1,16 @@
1
- from langchain_huggingface import HuggingFaceEmbeddings
 
2
 
 
3
 
4
- # embedding_instance = HuggingFaceEmbeddings(
5
- # model_name="all-MiniLM-L6-v2",
6
- # model_kwargs={"device": "cpu"},
7
- # )
8
 
9
- # def all_minilm_l6_v2():
10
- # """
11
- # Return the embedding instance.
12
- # """
13
- # return embedding_instance
14
-
15
-
16
- # from sentence_transformers import SentenceTransformer
17
- # from langchain.embeddings import HuggingFaceEmbeddings
18
-
19
- # # Load the sentence-transformers model directly
20
- # model = SentenceTransformer("sentence-transformers/all-MiniLM-L6-v2")
21
-
22
- # # Wrap it in LangChain HuggingFaceEmbeddings by passing the model instance
23
- # embedding_instance = HuggingFaceEmbeddings(model=model)
24
-
25
- # def all_minilm_l6_v2():
26
- # """
27
- # Return the embedding instance.
28
- # """
29
- # return embedding_instance
30
 
31
  def all_minilm_l6_v2():
32
- model_kwargs = {"device": "cpu"}
33
- encode_kwargs = {"normalize_embeddings": True}
34
- all_minilm_object = HuggingFaceEmbeddings(
35
- model_name="sentence-transformers/all-MiniLM-L6-v2", # or local path if manually downloaded
36
- model_kwargs=model_kwargs,
37
- encode_kwargs=encode_kwargs
38
- )
39
- return all_minilm_object
 
1
+ from langchain_google_genai import GoogleGenerativeAIEmbeddings
2
+ from src.settings import settings
3
 
4
+ GOOGLE_API_KEY = settings.GOOGLE_API_KEY
5
 
 
 
 
 
6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
 
8
  def all_minilm_l6_v2():
9
+ """
10
+ Return the embedding instance.
11
+ """
12
+ embedding_instance = GoogleGenerativeAIEmbeddings(
13
+ google_api_key=GOOGLE_API_KEY, model="models/text-embedding-004",output_dimensionality=384
14
+ )
15
+ return embedding_instance
16
+
src/settings.py CHANGED
@@ -8,6 +8,7 @@ class Settings(BaseSettings):
8
  QDRANT_URL:str
9
  QDRANT_API_KEY:str
10
  SERPER_API_KEY:str
 
11
 
12
  model_config = SettingsConfigDict(
13
  env_file=".env",
 
8
  QDRANT_URL:str
9
  QDRANT_API_KEY:str
10
  SERPER_API_KEY:str
11
+ GOOGLE_API_KEY:str
12
 
13
  model_config = SettingsConfigDict(
14
  env_file=".env",
uv.lock CHANGED
@@ -179,6 +179,7 @@ dependencies = [
179
  { name = "huggingface-hub" },
180
  { name = "langchain" },
181
  { name = "langchain-community" },
 
182
  { name = "langchain-groq" },
183
  { name = "langchain-huggingface" },
184
  { name = "langchain-qdrant" },
@@ -204,6 +205,7 @@ requires-dist = [
204
  { name = "huggingface-hub", specifier = ">=0.30.2" },
205
  { name = "langchain", specifier = ">=0.3.24" },
206
  { name = "langchain-community", specifier = ">=0.3.23" },
 
207
  { name = "langchain-groq", specifier = ">=0.3.2" },
208
  { name = "langchain-huggingface", specifier = ">=0.1.2" },
209
  { name = "langchain-qdrant", specifier = ">=0.2.0" },
@@ -525,6 +527,15 @@ wheels = [
525
  { url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl", hash = "sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de", size = 16215, upload_time = "2025-03-14T07:11:39.145Z" },
526
  ]
527
 
 
 
 
 
 
 
 
 
 
528
  [[package]]
529
  name = "frozenlist"
530
  version = "1.6.0"
@@ -623,6 +634,69 @@ wheels = [
623
  { url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl", hash = "sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110", size = 207599, upload_time = "2025-01-02T07:32:40.731Z" },
624
  ]
625
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
626
  [[package]]
627
  name = "greenlet"
628
  version = "3.2.1"
@@ -702,6 +776,20 @@ wheels = [
702
  { url = "https://files.pythonhosted.org/packages/be/f8/db5d5f3fc7e296166286c2a397836b8b042f7ad1e11028d82b061701f0f7/grpcio-1.71.0-cp313-cp313-win_amd64.whl", hash = "sha256:22c3bc8d488c039a199f7a003a38cb7635db6656fa96437a8accde8322ce2366", size = 4273308, upload_time = "2025-03-10T19:25:35.79Z" },
703
  ]
704
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
705
  [[package]]
706
  name = "h11"
707
  version = "0.16.0"
@@ -1095,6 +1183,21 @@ wheels = [
1095
  { url = "https://files.pythonhosted.org/packages/ca/fe/f8b2c32122cc2c842169164708fedc65db693daefcdaa9e9863d44b65b15/langchain_core-0.3.56-py3-none-any.whl", hash = "sha256:a20c6aca0fa0da265d96d3b14a5a01828ac5d2d9d27516434873d76f2d4839ed", size = 437218, upload_time = "2025-04-24T17:31:31.354Z" },
1096
  ]
1097
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1098
  [[package]]
1099
  name = "langchain-groq"
1100
  version = "0.3.2"
@@ -1908,6 +2011,18 @@ wheels = [
1908
  { url = "https://files.pythonhosted.org/packages/b8/d3/c3cb8f1d6ae3b37f83e1de806713a9b3642c5895f0215a62e1a4bd6e5e34/propcache-0.3.1-py3-none-any.whl", hash = "sha256:9a8ecf38de50a7f518c21568c80f985e776397b902f1ce0b01f799aba1608b40", size = 12376, upload_time = "2025-03-26T03:06:10.5Z" },
1909
  ]
1910
 
 
 
 
 
 
 
 
 
 
 
 
 
1911
  [[package]]
1912
  name = "protobuf"
1913
  version = "5.29.4"
@@ -1990,6 +2105,27 @@ wheels = [
1990
  { url = "https://files.pythonhosted.org/packages/37/40/ad395740cd641869a13bcf60851296c89624662575621968dcfafabaa7f6/pyarrow-20.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:82f1ee5133bd8f49d31be1299dc07f585136679666b502540db854968576faf9", size = 25944982, upload_time = "2025-04-27T12:33:04.72Z" },
1991
  ]
1992
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1993
  [[package]]
1994
  name = "pycparser"
1995
  version = "2.22"
@@ -2405,6 +2541,18 @@ wheels = [
2405
  { url = "https://files.pythonhosted.org/packages/2d/e5/22865285789f3412ad0c3d7ec4dc0a3e86483b794be8a5d9ed5a19390900/rpds_py-0.24.0-cp313-cp313t-win_amd64.whl", hash = "sha256:675269d407a257b8c00a6b58205b72eec8231656506c56fd429d924ca00bb350", size = 237354, upload_time = "2025-03-26T14:54:33.199Z" },
2406
  ]
2407
 
 
 
 
 
 
 
 
 
 
 
 
 
2408
  [[package]]
2409
  name = "safetensors"
2410
  version = "0.5.3"
 
179
  { name = "huggingface-hub" },
180
  { name = "langchain" },
181
  { name = "langchain-community" },
182
+ { name = "langchain-google-genai" },
183
  { name = "langchain-groq" },
184
  { name = "langchain-huggingface" },
185
  { name = "langchain-qdrant" },
 
205
  { name = "huggingface-hub", specifier = ">=0.30.2" },
206
  { name = "langchain", specifier = ">=0.3.24" },
207
  { name = "langchain-community", specifier = ">=0.3.23" },
208
+ { name = "langchain-google-genai", specifier = ">=2.1.4" },
209
  { name = "langchain-groq", specifier = ">=0.3.2" },
210
  { name = "langchain-huggingface", specifier = ">=0.1.2" },
211
  { name = "langchain-qdrant", specifier = ">=0.2.0" },
 
527
  { url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl", hash = "sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de", size = 16215, upload_time = "2025-03-14T07:11:39.145Z" },
528
  ]
529
 
530
+ [[package]]
531
+ name = "filetype"
532
+ version = "1.2.0"
533
+ source = { registry = "https://pypi.org/simple" }
534
+ sdist = { url = "https://files.pythonhosted.org/packages/bb/29/745f7d30d47fe0f251d3ad3dc2978a23141917661998763bebb6da007eb1/filetype-1.2.0.tar.gz", hash = "sha256:66b56cd6474bf41d8c54660347d37afcc3f7d1970648de365c102ef77548aadb", size = 998020, upload_time = "2022-11-02T17:34:04.141Z" }
535
+ wheels = [
536
+ { url = "https://files.pythonhosted.org/packages/18/79/1b8fa1bb3568781e84c9200f951c735f3f157429f44be0495da55894d620/filetype-1.2.0-py2.py3-none-any.whl", hash = "sha256:7ce71b6880181241cf7ac8697a2f1eb6a8bd9b429f7ad6d27b8db9ba5f1c2d25", size = 19970, upload_time = "2022-11-02T17:34:01.425Z" },
537
+ ]
538
+
539
  [[package]]
540
  name = "frozenlist"
541
  version = "1.6.0"
 
634
  { url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl", hash = "sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110", size = 207599, upload_time = "2025-01-02T07:32:40.731Z" },
635
  ]
636
 
637
+ [[package]]
638
+ name = "google-ai-generativelanguage"
639
+ version = "0.6.18"
640
+ source = { registry = "https://pypi.org/simple" }
641
+ dependencies = [
642
+ { name = "google-api-core", extra = ["grpc"] },
643
+ { name = "google-auth" },
644
+ { name = "proto-plus" },
645
+ { name = "protobuf" },
646
+ ]
647
+ sdist = { url = "https://files.pythonhosted.org/packages/eb/77/3e89a4c4200135eac74eca2f6c9153127e3719a825681ad55f5a4a58b422/google_ai_generativelanguage-0.6.18.tar.gz", hash = "sha256:274ba9fcf69466ff64e971d565884434388e523300afd468fc8e3033cd8e606e", size = 1444757, upload_time = "2025-04-29T15:45:45.527Z" }
648
+ wheels = [
649
+ { url = "https://files.pythonhosted.org/packages/e5/77/ca2889903a2d93b3072a49056d48b3f55410219743e338a1d7f94dc6455e/google_ai_generativelanguage-0.6.18-py3-none-any.whl", hash = "sha256:13d8174fea90b633f520789d32df7b422058fd5883b022989c349f1017db7fcf", size = 1372256, upload_time = "2025-04-29T15:45:43.601Z" },
650
+ ]
651
+
652
+ [[package]]
653
+ name = "google-api-core"
654
+ version = "2.24.2"
655
+ source = { registry = "https://pypi.org/simple" }
656
+ dependencies = [
657
+ { name = "google-auth" },
658
+ { name = "googleapis-common-protos" },
659
+ { name = "proto-plus" },
660
+ { name = "protobuf" },
661
+ { name = "requests" },
662
+ ]
663
+ sdist = { url = "https://files.pythonhosted.org/packages/09/5c/085bcb872556934bb119e5e09de54daa07873f6866b8f0303c49e72287f7/google_api_core-2.24.2.tar.gz", hash = "sha256:81718493daf06d96d6bc76a91c23874dbf2fac0adbbf542831b805ee6e974696", size = 163516, upload_time = "2025-03-10T15:55:26.201Z" }
664
+ wheels = [
665
+ { url = "https://files.pythonhosted.org/packages/46/95/f472d85adab6e538da2025dfca9e976a0d125cc0af2301f190e77b76e51c/google_api_core-2.24.2-py3-none-any.whl", hash = "sha256:810a63ac95f3c441b7c0e43d344e372887f62ce9071ba972eacf32672e072de9", size = 160061, upload_time = "2025-03-10T15:55:24.386Z" },
666
+ ]
667
+
668
+ [package.optional-dependencies]
669
+ grpc = [
670
+ { name = "grpcio" },
671
+ { name = "grpcio-status" },
672
+ ]
673
+
674
+ [[package]]
675
+ name = "google-auth"
676
+ version = "2.39.0"
677
+ source = { registry = "https://pypi.org/simple" }
678
+ dependencies = [
679
+ { name = "cachetools" },
680
+ { name = "pyasn1-modules" },
681
+ { name = "rsa" },
682
+ ]
683
+ sdist = { url = "https://files.pythonhosted.org/packages/cb/8e/8f45c9a32f73e786e954b8f9761c61422955d23c45d1e8c347f9b4b59e8e/google_auth-2.39.0.tar.gz", hash = "sha256:73222d43cdc35a3aeacbfdcaf73142a97839f10de930550d89ebfe1d0a00cde7", size = 274834, upload_time = "2025-04-14T17:44:49.402Z" }
684
+ wheels = [
685
+ { url = "https://files.pythonhosted.org/packages/ce/12/ad37a1ef86006d0a0117fc06a4a00bd461c775356b534b425f00dde208ea/google_auth-2.39.0-py2.py3-none-any.whl", hash = "sha256:0150b6711e97fb9f52fe599f55648950cc4540015565d8fbb31be2ad6e1548a2", size = 212319, upload_time = "2025-04-14T17:44:47.699Z" },
686
+ ]
687
+
688
+ [[package]]
689
+ name = "googleapis-common-protos"
690
+ version = "1.70.0"
691
+ source = { registry = "https://pypi.org/simple" }
692
+ dependencies = [
693
+ { name = "protobuf" },
694
+ ]
695
+ sdist = { url = "https://files.pythonhosted.org/packages/39/24/33db22342cf4a2ea27c9955e6713140fedd51e8b141b5ce5260897020f1a/googleapis_common_protos-1.70.0.tar.gz", hash = "sha256:0e1b44e0ea153e6594f9f394fef15193a68aaaea2d843f83e2742717ca753257", size = 145903, upload_time = "2025-04-14T10:17:02.924Z" }
696
+ wheels = [
697
+ { url = "https://files.pythonhosted.org/packages/86/f1/62a193f0227cf15a920390abe675f386dec35f7ae3ffe6da582d3ade42c7/googleapis_common_protos-1.70.0-py3-none-any.whl", hash = "sha256:b8bfcca8c25a2bb253e0e0b0adaf8c00773e5e6af6fd92397576680b807e0fd8", size = 294530, upload_time = "2025-04-14T10:17:01.271Z" },
698
+ ]
699
+
700
  [[package]]
701
  name = "greenlet"
702
  version = "3.2.1"
 
776
  { url = "https://files.pythonhosted.org/packages/be/f8/db5d5f3fc7e296166286c2a397836b8b042f7ad1e11028d82b061701f0f7/grpcio-1.71.0-cp313-cp313-win_amd64.whl", hash = "sha256:22c3bc8d488c039a199f7a003a38cb7635db6656fa96437a8accde8322ce2366", size = 4273308, upload_time = "2025-03-10T19:25:35.79Z" },
777
  ]
778
 
779
+ [[package]]
780
+ name = "grpcio-status"
781
+ version = "1.71.0"
782
+ source = { registry = "https://pypi.org/simple" }
783
+ dependencies = [
784
+ { name = "googleapis-common-protos" },
785
+ { name = "grpcio" },
786
+ { name = "protobuf" },
787
+ ]
788
+ sdist = { url = "https://files.pythonhosted.org/packages/d7/53/a911467bece076020456401f55a27415d2d70d3bc2c37af06b44ea41fc5c/grpcio_status-1.71.0.tar.gz", hash = "sha256:11405fed67b68f406b3f3c7c5ae5104a79d2d309666d10d61b152e91d28fb968", size = 13669, upload_time = "2025-03-10T19:29:00.901Z" }
789
+ wheels = [
790
+ { url = "https://files.pythonhosted.org/packages/ad/d6/31fbc43ff097d8c4c9fc3df741431b8018f67bf8dfbe6553a555f6e5f675/grpcio_status-1.71.0-py3-none-any.whl", hash = "sha256:843934ef8c09e3e858952887467f8256aac3910c55f077a359a65b2b3cde3e68", size = 14424, upload_time = "2025-03-10T19:27:04.967Z" },
791
+ ]
792
+
793
  [[package]]
794
  name = "h11"
795
  version = "0.16.0"
 
1183
  { url = "https://files.pythonhosted.org/packages/ca/fe/f8b2c32122cc2c842169164708fedc65db693daefcdaa9e9863d44b65b15/langchain_core-0.3.56-py3-none-any.whl", hash = "sha256:a20c6aca0fa0da265d96d3b14a5a01828ac5d2d9d27516434873d76f2d4839ed", size = 437218, upload_time = "2025-04-24T17:31:31.354Z" },
1184
  ]
1185
 
1186
+ [[package]]
1187
+ name = "langchain-google-genai"
1188
+ version = "2.1.4"
1189
+ source = { registry = "https://pypi.org/simple" }
1190
+ dependencies = [
1191
+ { name = "filetype" },
1192
+ { name = "google-ai-generativelanguage" },
1193
+ { name = "langchain-core" },
1194
+ { name = "pydantic" },
1195
+ ]
1196
+ sdist = { url = "https://files.pythonhosted.org/packages/81/48/73cb0a186f028a3597a825c930957a032895960381af505fa93805fe1736/langchain_google_genai-2.1.4.tar.gz", hash = "sha256:b52e10ea3daf1a65f70b73c78b78235466593de2aa9f4119fa887b804605efb7", size = 40368, upload_time = "2025-04-30T08:29:45.879Z" }
1197
+ wheels = [
1198
+ { url = "https://files.pythonhosted.org/packages/07/12/2be71bebbc23e4a499c50df567017110e4d382a045422647c8e6b1040541/langchain_google_genai-2.1.4-py3-none-any.whl", hash = "sha256:a3fa3cf7fe9c1de77280f42fbdd22cfcc5fbeb0d60cd5be7a0e6c50a74f5ce73", size = 44313, upload_time = "2025-04-30T08:29:44.864Z" },
1199
+ ]
1200
+
1201
  [[package]]
1202
  name = "langchain-groq"
1203
  version = "0.3.2"
 
2011
  { url = "https://files.pythonhosted.org/packages/b8/d3/c3cb8f1d6ae3b37f83e1de806713a9b3642c5895f0215a62e1a4bd6e5e34/propcache-0.3.1-py3-none-any.whl", hash = "sha256:9a8ecf38de50a7f518c21568c80f985e776397b902f1ce0b01f799aba1608b40", size = 12376, upload_time = "2025-03-26T03:06:10.5Z" },
2012
  ]
2013
 
2014
+ [[package]]
2015
+ name = "proto-plus"
2016
+ version = "1.26.1"
2017
+ source = { registry = "https://pypi.org/simple" }
2018
+ dependencies = [
2019
+ { name = "protobuf" },
2020
+ ]
2021
+ sdist = { url = "https://files.pythonhosted.org/packages/f4/ac/87285f15f7cce6d4a008f33f1757fb5a13611ea8914eb58c3d0d26243468/proto_plus-1.26.1.tar.gz", hash = "sha256:21a515a4c4c0088a773899e23c7bbade3d18f9c66c73edd4c7ee3816bc96a012", size = 56142, upload_time = "2025-03-10T15:54:38.843Z" }
2022
+ wheels = [
2023
+ { url = "https://files.pythonhosted.org/packages/4e/6d/280c4c2ce28b1593a19ad5239c8b826871fc6ec275c21afc8e1820108039/proto_plus-1.26.1-py3-none-any.whl", hash = "sha256:13285478c2dcf2abb829db158e1047e2f1e8d63a077d94263c2b88b043c75a66", size = 50163, upload_time = "2025-03-10T15:54:37.335Z" },
2024
+ ]
2025
+
2026
  [[package]]
2027
  name = "protobuf"
2028
  version = "5.29.4"
 
2105
  { url = "https://files.pythonhosted.org/packages/37/40/ad395740cd641869a13bcf60851296c89624662575621968dcfafabaa7f6/pyarrow-20.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:82f1ee5133bd8f49d31be1299dc07f585136679666b502540db854968576faf9", size = 25944982, upload_time = "2025-04-27T12:33:04.72Z" },
2106
  ]
2107
 
2108
+ [[package]]
2109
+ name = "pyasn1"
2110
+ version = "0.6.1"
2111
+ source = { registry = "https://pypi.org/simple" }
2112
+ sdist = { url = "https://files.pythonhosted.org/packages/ba/e9/01f1a64245b89f039897cb0130016d79f77d52669aae6ee7b159a6c4c018/pyasn1-0.6.1.tar.gz", hash = "sha256:6f580d2bdd84365380830acf45550f2511469f673cb4a5ae3857a3170128b034", size = 145322, upload_time = "2024-09-10T22:41:42.55Z" }
2113
+ wheels = [
2114
+ { url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl", hash = "sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629", size = 83135, upload_time = "2024-09-11T16:00:36.122Z" },
2115
+ ]
2116
+
2117
+ [[package]]
2118
+ name = "pyasn1-modules"
2119
+ version = "0.4.2"
2120
+ source = { registry = "https://pypi.org/simple" }
2121
+ dependencies = [
2122
+ { name = "pyasn1" },
2123
+ ]
2124
+ sdist = { url = "https://files.pythonhosted.org/packages/e9/e6/78ebbb10a8c8e4b61a59249394a4a594c1a7af95593dc933a349c8d00964/pyasn1_modules-0.4.2.tar.gz", hash = "sha256:677091de870a80aae844b1ca6134f54652fa2c8c5a52aa396440ac3106e941e6", size = 307892, upload_time = "2025-03-28T02:41:22.17Z" }
2125
+ wheels = [
2126
+ { url = "https://files.pythonhosted.org/packages/47/8d/d529b5d697919ba8c11ad626e835d4039be708a35b0d22de83a269a6682c/pyasn1_modules-0.4.2-py3-none-any.whl", hash = "sha256:29253a9207ce32b64c3ac6600edc75368f98473906e8fd1043bd6b5b1de2c14a", size = 181259, upload_time = "2025-03-28T02:41:19.028Z" },
2127
+ ]
2128
+
2129
  [[package]]
2130
  name = "pycparser"
2131
  version = "2.22"
 
2541
  { url = "https://files.pythonhosted.org/packages/2d/e5/22865285789f3412ad0c3d7ec4dc0a3e86483b794be8a5d9ed5a19390900/rpds_py-0.24.0-cp313-cp313t-win_amd64.whl", hash = "sha256:675269d407a257b8c00a6b58205b72eec8231656506c56fd429d924ca00bb350", size = 237354, upload_time = "2025-03-26T14:54:33.199Z" },
2542
  ]
2543
 
2544
+ [[package]]
2545
+ name = "rsa"
2546
+ version = "4.9.1"
2547
+ source = { registry = "https://pypi.org/simple" }
2548
+ dependencies = [
2549
+ { name = "pyasn1" },
2550
+ ]
2551
+ sdist = { url = "https://files.pythonhosted.org/packages/da/8a/22b7beea3ee0d44b1916c0c1cb0ee3af23b700b6da9f04991899d0c555d4/rsa-4.9.1.tar.gz", hash = "sha256:e7bdbfdb5497da4c07dfd35530e1a902659db6ff241e39d9953cad06ebd0ae75", size = 29034, upload_time = "2025-04-16T09:51:18.218Z" }
2552
+ wheels = [
2553
+ { url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl", hash = "sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762", size = 34696, upload_time = "2025-04-16T09:51:17.142Z" },
2554
+ ]
2555
+
2556
  [[package]]
2557
  name = "safetensors"
2558
  version = "0.5.3"