sunholo 0.104.6__tar.gz → 0.105.0__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 (164) hide show
  1. {sunholo-0.104.6 → sunholo-0.105.0}/PKG-INFO +2 -2
  2. {sunholo-0.104.6 → sunholo-0.105.0}/setup.py +1 -1
  3. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/genai/process_funcs_cls.py +17 -16
  4. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo.egg-info/PKG-INFO +2 -2
  5. {sunholo-0.104.6 → sunholo-0.105.0}/LICENSE.txt +0 -0
  6. {sunholo-0.104.6 → sunholo-0.105.0}/MANIFEST.in +0 -0
  7. {sunholo-0.104.6 → sunholo-0.105.0}/README.md +0 -0
  8. {sunholo-0.104.6 → sunholo-0.105.0}/setup.cfg +0 -0
  9. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/__init__.py +0 -0
  10. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/__init__.py +0 -0
  11. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/chat_history.py +0 -0
  12. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/dispatch_to_qa.py +0 -0
  13. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/fastapi/__init__.py +0 -0
  14. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/fastapi/base.py +0 -0
  15. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/fastapi/qna_routes.py +0 -0
  16. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/flask/__init__.py +0 -0
  17. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/flask/base.py +0 -0
  18. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/flask/qna_routes.py +0 -0
  19. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/flask/vac_routes.py +0 -0
  20. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/langserve.py +0 -0
  21. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/pubsub.py +0 -0
  22. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/route.py +0 -0
  23. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/special_commands.py +0 -0
  24. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/agents/swagger.py +0 -0
  25. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/archive/__init__.py +0 -0
  26. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/archive/archive.py +0 -0
  27. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/auth/__init__.py +0 -0
  28. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/auth/gcloud.py +0 -0
  29. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/auth/refresh.py +0 -0
  30. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/auth/run.py +0 -0
  31. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/azure/__init__.py +0 -0
  32. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/azure/auth.py +0 -0
  33. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/azure/blobs.py +0 -0
  34. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/azure/event_grid.py +0 -0
  35. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/bots/__init__.py +0 -0
  36. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/bots/discord.py +0 -0
  37. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/bots/github_webhook.py +0 -0
  38. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/bots/webapp.py +0 -0
  39. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/__init__.py +0 -0
  40. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/azure.py +0 -0
  41. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/doc_handling.py +0 -0
  42. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/encode_metadata.py +0 -0
  43. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/images.py +0 -0
  44. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/loaders.py +0 -0
  45. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/message_data.py +0 -0
  46. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/pdfs.py +0 -0
  47. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/process_chunker_data.py +0 -0
  48. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/publish.py +0 -0
  49. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/pubsub.py +0 -0
  50. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/chunker/splitter.py +0 -0
  51. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/__init__.py +0 -0
  52. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/chat_vac.py +0 -0
  53. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/cli.py +0 -0
  54. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/cli_init.py +0 -0
  55. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/configs.py +0 -0
  56. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/deploy.py +0 -0
  57. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/embedder.py +0 -0
  58. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/merge_texts.py +0 -0
  59. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/run_proxy.py +0 -0
  60. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/sun_rich.py +0 -0
  61. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/swagger.py +0 -0
  62. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/cli/vertex.py +0 -0
  63. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/components/__init__.py +0 -0
  64. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/components/llm.py +0 -0
  65. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/components/retriever.py +0 -0
  66. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/components/vectorstore.py +0 -0
  67. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/custom_logging.py +0 -0
  68. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/__init__.py +0 -0
  69. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/alloydb.py +0 -0
  70. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/alloydb_client.py +0 -0
  71. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/database.py +0 -0
  72. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/lancedb.py +0 -0
  73. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/sql/sb/create_function.sql +0 -0
  74. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/sql/sb/create_function_time.sql +0 -0
  75. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/sql/sb/create_table.sql +0 -0
  76. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
  77. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/sql/sb/return_sources.sql +0 -0
  78. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/sql/sb/setup.sql +0 -0
  79. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/static_dbs.py +0 -0
  80. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/database/uuid.py +0 -0
  81. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/discovery_engine/__init__.py +0 -0
  82. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/discovery_engine/chunker_handler.py +0 -0
  83. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/discovery_engine/create_new.py +0 -0
  84. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/discovery_engine/discovery_engine_client.py +0 -0
  85. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/discovery_engine/get_ai_search_chunks.py +0 -0
  86. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/embedder/__init__.py +0 -0
  87. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/embedder/embed_chunk.py +0 -0
  88. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/excel/__init__.py +0 -0
  89. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/excel/plugin.py +0 -0
  90. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/gcs/__init__.py +0 -0
  91. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/gcs/add_file.py +0 -0
  92. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/gcs/download_folder.py +0 -0
  93. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/gcs/download_url.py +0 -0
  94. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/gcs/extract_and_sign.py +0 -0
  95. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/gcs/metadata.py +0 -0
  96. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/genai/__init__.py +0 -0
  97. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/genai/images.py +0 -0
  98. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/genai/init.py +0 -0
  99. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/genai/safety.py +0 -0
  100. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/invoke/__init__.py +0 -0
  101. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/invoke/async_class.py +0 -0
  102. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/invoke/direct_vac_func.py +0 -0
  103. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/invoke/invoke_vac_utils.py +0 -0
  104. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/langfuse/__init__.py +0 -0
  105. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/langfuse/callback.py +0 -0
  106. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/langfuse/evals.py +0 -0
  107. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/langfuse/prompts.py +0 -0
  108. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/llamaindex/__init__.py +0 -0
  109. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/llamaindex/get_files.py +0 -0
  110. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/llamaindex/import_files.py +0 -0
  111. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/llamaindex/llamaindex_class.py +0 -0
  112. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/llamaindex/user_history.py +0 -0
  113. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/lookup/__init__.py +0 -0
  114. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/lookup/model_lookup.yaml +0 -0
  115. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/patches/__init__.py +0 -0
  116. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/patches/langchain/__init__.py +0 -0
  117. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/patches/langchain/lancedb.py +0 -0
  118. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/patches/langchain/vertexai.py +0 -0
  119. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/pubsub/__init__.py +0 -0
  120. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/pubsub/process_pubsub.py +0 -0
  121. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/pubsub/pubsub_manager.py +0 -0
  122. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/qna/__init__.py +0 -0
  123. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/qna/parsers.py +0 -0
  124. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/qna/retry.py +0 -0
  125. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/streaming/__init__.py +0 -0
  126. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/streaming/content_buffer.py +0 -0
  127. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/streaming/langserve.py +0 -0
  128. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/streaming/stream_lookup.py +0 -0
  129. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/streaming/streaming.py +0 -0
  130. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/summarise/__init__.py +0 -0
  131. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/summarise/summarise.py +0 -0
  132. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/terraform/__init__.py +0 -0
  133. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/terraform/tfvars_editor.py +0 -0
  134. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/tools/__init__.py +0 -0
  135. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/tools/web_browser.py +0 -0
  136. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/__init__.py +0 -0
  137. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/api_key.py +0 -0
  138. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/big_context.py +0 -0
  139. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/config.py +0 -0
  140. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/config_class.py +0 -0
  141. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/config_schema.py +0 -0
  142. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/gcp.py +0 -0
  143. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/gcp_project.py +0 -0
  144. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/mime.py +0 -0
  145. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/parsers.py +0 -0
  146. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/timedelta.py +0 -0
  147. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/user_ids.py +0 -0
  148. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/utils/version.py +0 -0
  149. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/vertex/__init__.py +0 -0
  150. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/vertex/extensions_call.py +0 -0
  151. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/vertex/extensions_class.py +0 -0
  152. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/vertex/genai_functions.py +0 -0
  153. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/vertex/init.py +0 -0
  154. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/vertex/memory_tools.py +0 -0
  155. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/vertex/safety.py +0 -0
  156. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo/vertex/type_dict_to_json.py +0 -0
  157. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo.egg-info/SOURCES.txt +0 -0
  158. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo.egg-info/dependency_links.txt +0 -0
  159. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo.egg-info/entry_points.txt +0 -0
  160. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo.egg-info/requires.txt +0 -0
  161. {sunholo-0.104.6 → sunholo-0.105.0}/sunholo.egg-info/top_level.txt +0 -0
  162. {sunholo-0.104.6 → sunholo-0.105.0}/tests/test_async.py +0 -0
  163. {sunholo-0.104.6 → sunholo-0.105.0}/tests/test_chat_history.py +0 -0
  164. {sunholo-0.104.6 → sunholo-0.105.0}/tests/test_config.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.104.6
3
+ Version: 0.105.0
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.104.6.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.105.0.tar.gz
7
7
  Author: Holosun ApS
8
8
  Author-email: multivac@sunholo.com
9
9
  License: Apache License, Version 2.0
@@ -1,6 +1,6 @@
1
1
  from setuptools import setup, find_packages
2
2
 
3
- version = '0.104.6'
3
+ version = '0.105.0'
4
4
 
5
5
  setup(
6
6
  name='sunholo',
@@ -12,7 +12,7 @@ from collections import deque
12
12
  try:
13
13
  import google.generativeai as genai
14
14
  import proto
15
- from google.generativeai.types import RequestOptions
15
+ from google.generativeai.types import RequestOptions, GenerateContentResponse
16
16
  from google.api_core import retry
17
17
  from google.generativeai import ChatSession
18
18
  from google.api_core.exceptions import RetryError
@@ -441,11 +441,11 @@ class GenAIFunctionProcessor:
441
441
 
442
442
  log.info(f"== Start input content for loop [{guardrail}]\n ## Content: {content_parse}")
443
443
  this_text = "" # reset for this loop
444
- response = []
444
+ response = None
445
445
 
446
446
  try:
447
447
  token_queue.append("\n= Calling Agent =\n")
448
- response = chat.send_message(content, stream=True, request_options=RequestOptions(
448
+ response:GenerateContentResponse = chat.send_message(content, stream=True, request_options=RequestOptions(
449
449
  retry=retry.Retry(
450
450
  initial=10,
451
451
  multiplier=2,
@@ -465,19 +465,20 @@ class GenAIFunctionProcessor:
465
465
  token_queue.append(msg)
466
466
  break
467
467
 
468
- loop_metadata = response.usage_metadata
469
- if loop_metadata:
470
- usage_metadata = {
471
- "prompt_token_count": usage_metadata["prompt_token_count"] + (loop_metadata.prompt_token_count or 0),
472
- "candidates_token_count": usage_metadata["candidates_token_count"] + (loop_metadata.candidates_token_count or 0),
473
- "total_token_count": usage_metadata["total_token_count"] + (loop_metadata.total_token_count or 0),
474
- }
475
- token_queue.append((
476
- "\n-- Agent response -- "
477
- f"Loop tokens: [{loop_metadata.prompt_token_count}]/[{usage_metadata['prompt_token_count']}] "
478
- f"Session tokens: [{loop_metadata.total_token_count}]/[{usage_metadata['total_token_count']}] \n"
479
- ))
480
- loop_metadata = None
468
+ if response:
469
+ loop_metadata = response.usage_metadata
470
+ if loop_metadata:
471
+ usage_metadata = {
472
+ "prompt_token_count": usage_metadata["prompt_token_count"] + (loop_metadata.prompt_token_count or 0),
473
+ "candidates_token_count": usage_metadata["candidates_token_count"] + (loop_metadata.candidates_token_count or 0),
474
+ "total_token_count": usage_metadata["total_token_count"] + (loop_metadata.total_token_count or 0),
475
+ }
476
+ token_queue.append((
477
+ "\n-- Agent response -- "
478
+ f"Loop tokens: [{loop_metadata.prompt_token_count}]/[{usage_metadata['prompt_token_count']}] "
479
+ f"Session tokens: [{loop_metadata.total_token_count}]/[{usage_metadata['total_token_count']}] \n"
480
+ ))
481
+ loop_metadata = None
481
482
 
482
483
  for chunk in response:
483
484
  if not chunk:
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.104.6
3
+ Version: 0.105.0
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.104.6.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.105.0.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