sunholo 0.71.27__tar.gz → 0.71.28__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. {sunholo-0.71.27 → sunholo-0.71.28}/PKG-INFO +2 -2
  2. {sunholo-0.71.27 → sunholo-0.71.28}/setup.py +1 -1
  3. sunholo-0.71.28/sunholo/gcs/__init__.py +1 -0
  4. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/gcs/download_url.py +40 -0
  5. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo.egg-info/PKG-INFO +2 -2
  6. sunholo-0.71.27/sunholo/gcs/__init__.py +0 -1
  7. {sunholo-0.71.27 → sunholo-0.71.28}/LICENSE.txt +0 -0
  8. {sunholo-0.71.27 → sunholo-0.71.28}/MANIFEST.in +0 -0
  9. {sunholo-0.71.27 → sunholo-0.71.28}/README.md +0 -0
  10. {sunholo-0.71.27 → sunholo-0.71.28}/setup.cfg +0 -0
  11. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/__init__.py +0 -0
  12. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/__init__.py +0 -0
  13. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/chat_history.py +0 -0
  14. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/dispatch_to_qa.py +0 -0
  15. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/fastapi/__init__.py +0 -0
  16. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/fastapi/base.py +0 -0
  17. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/fastapi/qna_routes.py +0 -0
  18. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/flask/__init__.py +0 -0
  19. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/flask/base.py +0 -0
  20. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/flask/qna_routes.py +0 -0
  21. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/flask/vac_routes.py +0 -0
  22. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/langserve.py +0 -0
  23. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/pubsub.py +0 -0
  24. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/route.py +0 -0
  25. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/special_commands.py +0 -0
  26. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/agents/swagger.py +0 -0
  27. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/archive/__init__.py +0 -0
  28. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/archive/archive.py +0 -0
  29. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/auth/__init__.py +0 -0
  30. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/auth/run.py +0 -0
  31. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/bots/__init__.py +0 -0
  32. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/bots/discord.py +0 -0
  33. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/bots/github_webhook.py +0 -0
  34. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/bots/webapp.py +0 -0
  35. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/__init__.py +0 -0
  36. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/data_to_embed_pubsub.py +0 -0
  37. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/doc_handling.py +0 -0
  38. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/images.py +0 -0
  39. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/loaders.py +0 -0
  40. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/message_data.py +0 -0
  41. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/pdfs.py +0 -0
  42. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/publish.py +0 -0
  43. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/chunker/splitter.py +0 -0
  44. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/__init__.py +0 -0
  45. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/chat_vac.py +0 -0
  46. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/cli.py +0 -0
  47. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/cli_init.py +0 -0
  48. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/configs.py +0 -0
  49. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/deploy.py +0 -0
  50. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/embedder.py +0 -0
  51. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/merge_texts.py +0 -0
  52. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/run_proxy.py +0 -0
  53. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/sun_rich.py +0 -0
  54. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/cli/swagger.py +0 -0
  55. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/components/__init__.py +0 -0
  56. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/components/llm.py +0 -0
  57. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/components/retriever.py +0 -0
  58. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/components/vectorstore.py +0 -0
  59. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/__init__.py +0 -0
  60. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/alloydb.py +0 -0
  61. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/alloydb_client.py +0 -0
  62. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/database.py +0 -0
  63. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/lancedb.py +0 -0
  64. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/sql/sb/create_function.sql +0 -0
  65. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/sql/sb/create_function_time.sql +0 -0
  66. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/sql/sb/create_table.sql +0 -0
  67. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
  68. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/sql/sb/return_sources.sql +0 -0
  69. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/sql/sb/setup.sql +0 -0
  70. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/static_dbs.py +0 -0
  71. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/database/uuid.py +0 -0
  72. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/discovery_engine/__init__.py +0 -0
  73. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/discovery_engine/chunker_handler.py +0 -0
  74. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/discovery_engine/create_new.py +0 -0
  75. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/discovery_engine/discovery_engine_client.py +0 -0
  76. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/embedder/__init__.py +0 -0
  77. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/embedder/embed_chunk.py +0 -0
  78. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/gcs/add_file.py +0 -0
  79. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/gcs/metadata.py +0 -0
  80. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/langfuse/__init__.py +0 -0
  81. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/langfuse/callback.py +0 -0
  82. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/langfuse/prompts.py +0 -0
  83. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/llamaindex/__init__.py +0 -0
  84. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/llamaindex/generate.py +0 -0
  85. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/llamaindex/get_files.py +0 -0
  86. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/llamaindex/import_files.py +0 -0
  87. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/logging.py +0 -0
  88. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/lookup/__init__.py +0 -0
  89. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/lookup/model_lookup.yaml +0 -0
  90. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/patches/__init__.py +0 -0
  91. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/patches/langchain/__init__.py +0 -0
  92. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/patches/langchain/lancedb.py +0 -0
  93. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/patches/langchain/vertexai.py +0 -0
  94. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/pubsub/__init__.py +0 -0
  95. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/pubsub/process_pubsub.py +0 -0
  96. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/pubsub/pubsub_manager.py +0 -0
  97. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/qna/__init__.py +0 -0
  98. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/qna/parsers.py +0 -0
  99. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/qna/retry.py +0 -0
  100. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/streaming/__init__.py +0 -0
  101. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/streaming/content_buffer.py +0 -0
  102. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/streaming/langserve.py +0 -0
  103. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/streaming/stream_lookup.py +0 -0
  104. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/streaming/streaming.py +0 -0
  105. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/summarise/__init__.py +0 -0
  106. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/summarise/summarise.py +0 -0
  107. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/tools/__init__.py +0 -0
  108. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/tools/web_browser.py +0 -0
  109. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/__init__.py +0 -0
  110. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/api_key.py +0 -0
  111. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/big_context.py +0 -0
  112. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/config.py +0 -0
  113. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/config_schema.py +0 -0
  114. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/gcp.py +0 -0
  115. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/gcp_project.py +0 -0
  116. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/parsers.py +0 -0
  117. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/timedelta.py +0 -0
  118. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/user_ids.py +0 -0
  119. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/utils/version.py +0 -0
  120. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/vertex/__init__.py +0 -0
  121. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/vertex/extensions.py +0 -0
  122. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/vertex/extensions_class.py +0 -0
  123. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/vertex/init.py +0 -0
  124. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/vertex/memory_tools.py +0 -0
  125. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo/vertex/safety.py +0 -0
  126. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo.egg-info/SOURCES.txt +0 -0
  127. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo.egg-info/dependency_links.txt +0 -0
  128. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo.egg-info/entry_points.txt +0 -0
  129. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo.egg-info/requires.txt +0 -0
  130. {sunholo-0.71.27 → sunholo-0.71.28}/sunholo.egg-info/top_level.txt +0 -0
  131. {sunholo-0.71.27 → sunholo-0.71.28}/tests/test_chat_history.py +0 -0
  132. {sunholo-0.71.27 → sunholo-0.71.28}/tests/test_chunker.py +0 -0
  133. {sunholo-0.71.27 → sunholo-0.71.28}/tests/test_config.py +0 -0
  134. {sunholo-0.71.27 → sunholo-0.71.28}/tests/test_dispatch_to_qa.py +0 -0
  135. {sunholo-0.71.27 → sunholo-0.71.28}/tests/test_swagger.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.71.27
3
+ Version: 0.71.28
4
4
  Summary: Large Language Model DevOps - a package to help deploy LLMs to the Cloud.
5
5
  Home-page: https://github.com/sunholo-data/sunholo-py
6
- Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.71.27.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.71.28.tar.gz
7
7
  Author: Holosun ApS
8
8
  Author-email: multivac@sunholo.com
9
9
  License: Apache License, Version 2.0
@@ -1,7 +1,7 @@
1
1
  from setuptools import setup, find_packages
2
2
 
3
3
  # Define your base version
4
- version = '0.71.27'
4
+ version = '0.71.28'
5
5
 
6
6
  setup(
7
7
  name='sunholo',
@@ -0,0 +1 @@
1
+ from .download_url import construct_download_link, get_bytes_from_gcs
@@ -20,6 +20,46 @@ project_id = None
20
20
  gcs_client = None
21
21
  gcs_bucket_cache = {}
22
22
 
23
+
24
+ def get_bytes_from_gcs(gs_uri):
25
+ """
26
+ Downloads a file from Google Cloud Storage and returns its bytes.
27
+
28
+ Args:
29
+ gs_uri (str): The Google Cloud Storage URI of the file to download (e.g., 'gs://bucket_name/file_name').
30
+
31
+ Returns:
32
+ bytes: The content of the file in bytes, or None if an error occurs.
33
+ """
34
+ if not gs_uri.startswith('gs://'):
35
+ log.error(f"Invalid GCS URI: {gs_uri}")
36
+ return None
37
+
38
+ try:
39
+ storage_client = storage.Client()
40
+ except Exception as err:
41
+ log.error(f"Error creating storage client: {str(err)}")
42
+ return None
43
+
44
+ try:
45
+ # Parse the GCS URI
46
+ path_parts = gs_uri[5:].split('/', 1)
47
+ bucket_name = path_parts[0]
48
+ blob_name = path_parts[1]
49
+
50
+ # Get the bucket and blob
51
+ bucket = storage_client.bucket(bucket_name)
52
+ blob = bucket.blob(blob_name)
53
+
54
+ # Download the blob as bytes
55
+ file_bytes = blob.download_as_bytes()
56
+ return file_bytes
57
+
58
+ except Exception as err:
59
+ log.error(f"Error downloading file from GCS: {str(err)}")
60
+ return None
61
+
62
+
23
63
  if is_running_on_gcp():
24
64
  # Perform a refresh request to get the access token of the current credentials (Else, it's None)
25
65
  gcs_credentials, project_id = google.auth.default()
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.71.27
3
+ Version: 0.71.28
4
4
  Summary: Large Language Model DevOps - a package to help deploy LLMs to the Cloud.
5
5
  Home-page: https://github.com/sunholo-data/sunholo-py
6
- Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.71.27.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.71.28.tar.gz
7
7
  Author: Holosun ApS
8
8
  Author-email: multivac@sunholo.com
9
9
  License: Apache License, Version 2.0
@@ -1 +0,0 @@
1
- from .download_url import construct_download_link
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes