sunholo 0.71.23__tar.gz → 0.71.25__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 (134) hide show
  1. {sunholo-0.71.23 → sunholo-0.71.25}/PKG-INFO +2 -2
  2. {sunholo-0.71.23 → sunholo-0.71.25}/setup.py +1 -1
  3. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/flask/qna_routes.py +3 -3
  4. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/chat_vac.py +7 -2
  5. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/gcs/add_file.py +6 -2
  6. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo.egg-info/PKG-INFO +2 -2
  7. {sunholo-0.71.23 → sunholo-0.71.25}/LICENSE.txt +0 -0
  8. {sunholo-0.71.23 → sunholo-0.71.25}/MANIFEST.in +0 -0
  9. {sunholo-0.71.23 → sunholo-0.71.25}/README.md +0 -0
  10. {sunholo-0.71.23 → sunholo-0.71.25}/setup.cfg +0 -0
  11. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/__init__.py +0 -0
  12. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/__init__.py +0 -0
  13. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/chat_history.py +0 -0
  14. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/dispatch_to_qa.py +0 -0
  15. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/fastapi/__init__.py +0 -0
  16. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/fastapi/base.py +0 -0
  17. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/fastapi/qna_routes.py +0 -0
  18. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/flask/__init__.py +0 -0
  19. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/flask/base.py +0 -0
  20. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/flask/vac_routes.py +0 -0
  21. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/langserve.py +0 -0
  22. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/pubsub.py +0 -0
  23. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/route.py +0 -0
  24. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/special_commands.py +0 -0
  25. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/agents/swagger.py +0 -0
  26. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/archive/__init__.py +0 -0
  27. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/archive/archive.py +0 -0
  28. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/auth/__init__.py +0 -0
  29. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/auth/run.py +0 -0
  30. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/bots/__init__.py +0 -0
  31. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/bots/discord.py +0 -0
  32. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/bots/github_webhook.py +0 -0
  33. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/bots/webapp.py +0 -0
  34. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/__init__.py +0 -0
  35. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/data_to_embed_pubsub.py +0 -0
  36. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/doc_handling.py +0 -0
  37. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/images.py +0 -0
  38. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/loaders.py +0 -0
  39. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/message_data.py +0 -0
  40. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/pdfs.py +0 -0
  41. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/publish.py +0 -0
  42. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/chunker/splitter.py +0 -0
  43. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/__init__.py +0 -0
  44. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/cli.py +0 -0
  45. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/cli_init.py +0 -0
  46. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/configs.py +0 -0
  47. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/deploy.py +0 -0
  48. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/embedder.py +0 -0
  49. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/merge_texts.py +0 -0
  50. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/run_proxy.py +0 -0
  51. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/sun_rich.py +0 -0
  52. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/cli/swagger.py +0 -0
  53. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/components/__init__.py +0 -0
  54. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/components/llm.py +0 -0
  55. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/components/retriever.py +0 -0
  56. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/components/vectorstore.py +0 -0
  57. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/__init__.py +0 -0
  58. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/alloydb.py +0 -0
  59. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/alloydb_client.py +0 -0
  60. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/database.py +0 -0
  61. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/lancedb.py +0 -0
  62. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/sql/sb/create_function.sql +0 -0
  63. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/sql/sb/create_function_time.sql +0 -0
  64. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/sql/sb/create_table.sql +0 -0
  65. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
  66. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/sql/sb/return_sources.sql +0 -0
  67. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/sql/sb/setup.sql +0 -0
  68. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/static_dbs.py +0 -0
  69. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/database/uuid.py +0 -0
  70. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/discovery_engine/__init__.py +0 -0
  71. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/discovery_engine/chunker_handler.py +0 -0
  72. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/discovery_engine/create_new.py +0 -0
  73. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/discovery_engine/discovery_engine_client.py +0 -0
  74. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/embedder/__init__.py +0 -0
  75. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/embedder/embed_chunk.py +0 -0
  76. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/gcs/__init__.py +0 -0
  77. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/gcs/download_url.py +0 -0
  78. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/gcs/metadata.py +0 -0
  79. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/langfuse/__init__.py +0 -0
  80. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/langfuse/callback.py +0 -0
  81. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/langfuse/prompts.py +0 -0
  82. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/llamaindex/__init__.py +0 -0
  83. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/llamaindex/generate.py +0 -0
  84. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/llamaindex/get_files.py +0 -0
  85. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/llamaindex/import_files.py +0 -0
  86. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/logging.py +0 -0
  87. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/lookup/__init__.py +0 -0
  88. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/lookup/model_lookup.yaml +0 -0
  89. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/patches/__init__.py +0 -0
  90. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/patches/langchain/__init__.py +0 -0
  91. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/patches/langchain/lancedb.py +0 -0
  92. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/patches/langchain/vertexai.py +0 -0
  93. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/pubsub/__init__.py +0 -0
  94. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/pubsub/process_pubsub.py +0 -0
  95. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/pubsub/pubsub_manager.py +0 -0
  96. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/qna/__init__.py +0 -0
  97. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/qna/parsers.py +0 -0
  98. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/qna/retry.py +0 -0
  99. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/streaming/__init__.py +0 -0
  100. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/streaming/content_buffer.py +0 -0
  101. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/streaming/langserve.py +0 -0
  102. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/streaming/stream_lookup.py +0 -0
  103. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/streaming/streaming.py +0 -0
  104. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/summarise/__init__.py +0 -0
  105. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/summarise/summarise.py +0 -0
  106. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/tools/__init__.py +0 -0
  107. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/tools/web_browser.py +0 -0
  108. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/__init__.py +0 -0
  109. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/api_key.py +0 -0
  110. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/big_context.py +0 -0
  111. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/config.py +0 -0
  112. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/config_schema.py +0 -0
  113. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/gcp.py +0 -0
  114. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/gcp_project.py +0 -0
  115. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/parsers.py +0 -0
  116. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/timedelta.py +0 -0
  117. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/user_ids.py +0 -0
  118. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/utils/version.py +0 -0
  119. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/vertex/__init__.py +0 -0
  120. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/vertex/extensions.py +0 -0
  121. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/vertex/extensions_class.py +0 -0
  122. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/vertex/init.py +0 -0
  123. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/vertex/memory_tools.py +0 -0
  124. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo/vertex/safety.py +0 -0
  125. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo.egg-info/SOURCES.txt +0 -0
  126. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo.egg-info/dependency_links.txt +0 -0
  127. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo.egg-info/entry_points.txt +0 -0
  128. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo.egg-info/requires.txt +0 -0
  129. {sunholo-0.71.23 → sunholo-0.71.25}/sunholo.egg-info/top_level.txt +0 -0
  130. {sunholo-0.71.23 → sunholo-0.71.25}/tests/test_chat_history.py +0 -0
  131. {sunholo-0.71.23 → sunholo-0.71.25}/tests/test_chunker.py +0 -0
  132. {sunholo-0.71.23 → sunholo-0.71.25}/tests/test_config.py +0 -0
  133. {sunholo-0.71.23 → sunholo-0.71.25}/tests/test_dispatch_to_qa.py +0 -0
  134. {sunholo-0.71.23 → sunholo-0.71.25}/tests/test_swagger.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.71.23
3
+ Version: 0.71.25
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.23.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.71.25.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.23'
4
+ version = '0.71.25'
5
5
 
6
6
  setup(
7
7
  name='sunholo',
@@ -510,11 +510,11 @@ def prep_vac(request, vector_name):
510
510
  data["image_uri"] = image_uri
511
511
  data["mime"] = mime_type
512
512
  except Exception as e:
513
- return jsonify({'error': str(e), 'traceback': traceback.format_exc()}), 500
513
+ log.error(f"Error uploading file: {str(e)}")
514
514
  else:
515
- return jsonify({"error": "No file selected"}), 400
515
+ log.info("No file selected to upload to GCS")
516
516
  else:
517
- return jsonify({"error": "Unsupported content type"}), 400
517
+ log.warning(f"Error uploading file: Unsupported content type {request.content_type}")
518
518
 
519
519
  log.info(f"vac/{vector_name} got data: {data}")
520
520
 
@@ -50,10 +50,14 @@ def handle_file_upload(file, vector_name):
50
50
  if not Path(file).is_file():
51
51
  return None
52
52
 
53
+ agent_name = load_config_key("agent", vector_name, kind="vacConfig")
54
+ # vertex can't handle directories
55
+ bucket_filepath = f"{vector_name}/uploads/{os.path.basename(file)}" if agent_name != "vertex-genai" else os.path.basename(file)
56
+
53
57
  file_url = add_file_to_gcs(file,
54
58
  vector_name=vector_name,
55
59
  metadata={"type": "cli"},
56
- bucket_filepath=f"{vector_name}/uploads/{os.path.basename(file)}")
60
+ bucket_filepath=bucket_filepath)
57
61
 
58
62
  return file_url
59
63
 
@@ -61,6 +65,7 @@ def stream_chat_session(service_url, service_name, stream=True):
61
65
 
62
66
  user_id = generate_user_id()
63
67
  chat_history = []
68
+ agent_name = load_config_key("agent", service_name, kind="vacConfig")
64
69
  while True:
65
70
  session_id = str(uuid.uuid4())
66
71
  user_input = Prompt.ask("[bold cyan]You[/bold cyan]")
@@ -136,7 +141,7 @@ def stream_chat_session(service_url, service_name, stream=True):
136
141
  chat_history=chat_history,
137
142
  generate_f_output=lambda x: x, # Replace with actual processing function
138
143
  stream_wait_time=0.5,
139
- stream_timeout=120,
144
+ stream_timeout=120 if agent_name != "vertex-genai" else 1200,
140
145
  message_author=user_id,
141
146
  #TODO: populate these
142
147
  image_url=file_reply,
@@ -85,7 +85,11 @@ def resolve_bucket(vector_name):
85
85
 
86
86
  return bucket_name
87
87
 
88
- def add_file_to_gcs(filename: str, vector_name:str, bucket_name: str=None, metadata:dict=None, bucket_filepath:str=None):
88
+ def add_file_to_gcs(filename: str,
89
+ vector_name:str,
90
+ bucket_name: str=None,
91
+ metadata:dict=None,
92
+ bucket_filepath:str=None):
89
93
 
90
94
  if not storage:
91
95
  return None
@@ -117,7 +121,7 @@ def add_file_to_gcs(filename: str, vector_name:str, bucket_name: str=None, metad
117
121
  blob = bucket.blob(bucket_filepath)
118
122
  blob_prev = bucket.blob(bucket_filepath_prev)
119
123
 
120
- if blob.exists():
124
+ if blob.exists() and not os.getenv('EXTENSIONS_BUCKET'):
121
125
  log.info(f"File {filename} already exists in gs://{bucket_name}/{bucket_filepath}")
122
126
  return f"gs://{bucket_name}/{bucket_filepath}"
123
127
 
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.71.23
3
+ Version: 0.71.25
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.23.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.71.25.tar.gz
7
7
  Author: Holosun ApS
8
8
  Author-email: multivac@sunholo.com
9
9
  License: Apache License, Version 2.0
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes