sunholo 0.69.10__tar.gz → 0.69.12__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 (130) hide show
  1. {sunholo-0.69.10 → sunholo-0.69.12}/PKG-INFO +4 -2
  2. {sunholo-0.69.10 → sunholo-0.69.12}/setup.py +3 -1
  3. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/discovery_engine/chunker_handler.py +2 -0
  4. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/discovery_engine/discovery_engine_client.py +11 -5
  5. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/logging.py +7 -1
  6. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo.egg-info/PKG-INFO +4 -2
  7. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo.egg-info/requires.txt +2 -0
  8. {sunholo-0.69.10 → sunholo-0.69.12}/LICENSE.txt +0 -0
  9. {sunholo-0.69.10 → sunholo-0.69.12}/MANIFEST.in +0 -0
  10. {sunholo-0.69.10 → sunholo-0.69.12}/README.md +0 -0
  11. {sunholo-0.69.10 → sunholo-0.69.12}/setup.cfg +0 -0
  12. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/__init__.py +0 -0
  13. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/__init__.py +0 -0
  14. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/chat_history.py +0 -0
  15. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/dispatch_to_qa.py +0 -0
  16. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/fastapi/__init__.py +0 -0
  17. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/fastapi/base.py +0 -0
  18. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/fastapi/qna_routes.py +0 -0
  19. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/flask/__init__.py +0 -0
  20. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/flask/base.py +0 -0
  21. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/flask/qna_routes.py +0 -0
  22. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/flask/vac_routes.py +0 -0
  23. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/langserve.py +0 -0
  24. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/pubsub.py +0 -0
  25. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/route.py +0 -0
  26. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/special_commands.py +0 -0
  27. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/agents/swagger.py +0 -0
  28. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/archive/__init__.py +0 -0
  29. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/archive/archive.py +0 -0
  30. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/auth/__init__.py +0 -0
  31. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/auth/run.py +0 -0
  32. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/bots/__init__.py +0 -0
  33. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/bots/discord.py +0 -0
  34. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/bots/github_webhook.py +0 -0
  35. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/bots/webapp.py +0 -0
  36. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/__init__.py +0 -0
  37. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/data_to_embed_pubsub.py +0 -0
  38. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/doc_handling.py +0 -0
  39. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/images.py +0 -0
  40. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/loaders.py +0 -0
  41. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/message_data.py +0 -0
  42. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/pdfs.py +0 -0
  43. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/publish.py +0 -0
  44. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/chunker/splitter.py +0 -0
  45. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/__init__.py +0 -0
  46. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/chat_vac.py +0 -0
  47. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/cli.py +0 -0
  48. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/cli_init.py +0 -0
  49. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/configs.py +0 -0
  50. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/deploy.py +0 -0
  51. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/embedder.py +0 -0
  52. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/merge_texts.py +0 -0
  53. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/run_proxy.py +0 -0
  54. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/sun_rich.py +0 -0
  55. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/cli/swagger.py +0 -0
  56. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/components/__init__.py +0 -0
  57. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/components/llm.py +0 -0
  58. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/components/retriever.py +0 -0
  59. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/components/vectorstore.py +0 -0
  60. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/__init__.py +0 -0
  61. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/alloydb.py +0 -0
  62. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/alloydb_client.py +0 -0
  63. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/database.py +0 -0
  64. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/lancedb.py +0 -0
  65. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/sql/sb/create_function.sql +0 -0
  66. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/sql/sb/create_function_time.sql +0 -0
  67. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/sql/sb/create_table.sql +0 -0
  68. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
  69. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/sql/sb/return_sources.sql +0 -0
  70. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/sql/sb/setup.sql +0 -0
  71. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/static_dbs.py +0 -0
  72. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/database/uuid.py +0 -0
  73. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/discovery_engine/__init__.py +0 -0
  74. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/discovery_engine/create_new.py +0 -0
  75. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/embedder/__init__.py +0 -0
  76. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/embedder/embed_chunk.py +0 -0
  77. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/gcs/__init__.py +0 -0
  78. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/gcs/add_file.py +0 -0
  79. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/gcs/download_url.py +0 -0
  80. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/gcs/metadata.py +0 -0
  81. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/langfuse/__init__.py +0 -0
  82. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/langfuse/callback.py +0 -0
  83. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/langfuse/prompts.py +0 -0
  84. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/llamaindex/__init__.py +0 -0
  85. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/llamaindex/generate.py +0 -0
  86. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/llamaindex/get_files.py +0 -0
  87. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/llamaindex/import_files.py +0 -0
  88. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/lookup/__init__.py +0 -0
  89. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/lookup/model_lookup.yaml +0 -0
  90. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/patches/__init__.py +0 -0
  91. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/patches/langchain/__init__.py +0 -0
  92. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/patches/langchain/lancedb.py +0 -0
  93. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/patches/langchain/vertexai.py +0 -0
  94. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/pubsub/__init__.py +0 -0
  95. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/pubsub/process_pubsub.py +0 -0
  96. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/pubsub/pubsub_manager.py +0 -0
  97. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/qna/__init__.py +0 -0
  98. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/qna/parsers.py +0 -0
  99. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/qna/retry.py +0 -0
  100. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/streaming/__init__.py +0 -0
  101. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/streaming/content_buffer.py +0 -0
  102. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/streaming/langserve.py +0 -0
  103. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/streaming/stream_lookup.py +0 -0
  104. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/streaming/streaming.py +0 -0
  105. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/summarise/__init__.py +0 -0
  106. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/summarise/summarise.py +0 -0
  107. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/__init__.py +0 -0
  108. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/api_key.py +0 -0
  109. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/big_context.py +0 -0
  110. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/config.py +0 -0
  111. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/config_schema.py +0 -0
  112. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/gcp.py +0 -0
  113. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/gcp_project.py +0 -0
  114. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/parsers.py +0 -0
  115. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/timedelta.py +0 -0
  116. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/user_ids.py +0 -0
  117. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/utils/version.py +0 -0
  118. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/vertex/__init__.py +0 -0
  119. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/vertex/init.py +0 -0
  120. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/vertex/memory_tools.py +0 -0
  121. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo/vertex/safety.py +0 -0
  122. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo.egg-info/SOURCES.txt +0 -0
  123. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo.egg-info/dependency_links.txt +0 -0
  124. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo.egg-info/entry_points.txt +0 -0
  125. {sunholo-0.69.10 → sunholo-0.69.12}/sunholo.egg-info/top_level.txt +0 -0
  126. {sunholo-0.69.10 → sunholo-0.69.12}/tests/test_chat_history.py +0 -0
  127. {sunholo-0.69.10 → sunholo-0.69.12}/tests/test_chunker.py +0 -0
  128. {sunholo-0.69.10 → sunholo-0.69.12}/tests/test_config.py +0 -0
  129. {sunholo-0.69.10 → sunholo-0.69.12}/tests/test_dispatch_to_qa.py +0 -0
  130. {sunholo-0.69.10 → sunholo-0.69.12}/tests/test_swagger.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.69.10
3
+ Version: 0.69.12
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.69.10.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.69.12.tar.gz
7
7
  Author: Holosun ApS
8
8
  Author-email: multivac@sunholo.com
9
9
  License: Apache License, Version 2.0
@@ -61,6 +61,7 @@ Requires-Dist: pypdf; extra == "all"
61
61
  Requires-Dist: python-socketio; extra == "all"
62
62
  Requires-Dist: rich; extra == "all"
63
63
  Requires-Dist: supabase; extra == "all"
64
+ Requires-Dist: tantivy; extra == "all"
64
65
  Requires-Dist: tiktoken; extra == "all"
65
66
  Provides-Extra: cli
66
67
  Requires-Dist: jsonschema>=4.21.1; extra == "cli"
@@ -73,6 +74,7 @@ Requires-Dist: pg8000; extra == "database"
73
74
  Requires-Dist: pgvector; extra == "database"
74
75
  Requires-Dist: psycopg2-binary; extra == "database"
75
76
  Requires-Dist: lancedb; extra == "database"
77
+ Requires-Dist: tantivy; extra == "database"
76
78
  Provides-Extra: pipeline
77
79
  Requires-Dist: GitPython; extra == "pipeline"
78
80
  Requires-Dist: lark; extra == "pipeline"
@@ -1,7 +1,7 @@
1
1
  from setuptools import setup, find_packages
2
2
 
3
3
  # Define your base version
4
- version = '0.69.10'
4
+ version = '0.69.12'
5
5
 
6
6
  setup(
7
7
  name='sunholo',
@@ -76,6 +76,7 @@ setup(
76
76
  "python-socketio",
77
77
  "rich",
78
78
  "supabase",
79
+ "tantivy",
79
80
  "tiktoken",
80
81
 
81
82
  ],
@@ -91,6 +92,7 @@ setup(
91
92
  "pgvector",
92
93
  "psycopg2-binary",
93
94
  "lancedb",
95
+ "tantivy"
94
96
  ],
95
97
  'pipeline': [
96
98
  "GitPython",
@@ -51,6 +51,8 @@ def do_discovery_engine(message_data, metadata, vector_name):
51
51
 
52
52
  if message_data.startswith("gs://"):
53
53
  log.info(f"DiscoveryEngineClient.import_files for {message_data}")
54
+ if "/pdf_parts/" in message_data:
55
+ return None
54
56
  for corp in corpuses:
55
57
  try:
56
58
  response = corp.import_documents(
@@ -201,19 +201,25 @@ class DiscoveryEngineClient:
201
201
  ),
202
202
  )
203
203
 
204
+ log.info(f"Discovery engine request: {search_request=}")
204
205
  search_response = self.search_client.search(search_request)
206
+
205
207
 
206
208
  if parse_chunks_to_string:
207
-
208
- return self.process_chunks(search_response)
209
+
210
+ big_string = self.process_chunks(search_response)
211
+ log.info(f"Discovery engine chunks string sample: {big_string[:100]}")
212
+
213
+ return big_string
209
214
 
215
+ log.info("Discovery engine response object")
210
216
  return search_response
211
217
 
212
218
  def process_chunks(self, response):
213
219
  all_chunks = []
214
220
 
215
221
  if 'results' not in response:
216
- raise ValueError('No results found in response')
222
+ raise ValueError(f'No results found in response: {response=}')
217
223
 
218
224
  for result in response['results']:
219
225
  chunk = result['chunk']
@@ -311,9 +317,9 @@ class DiscoveryEngineClient:
311
317
  try:
312
318
  operation = import_documents_with_retry(self.doc_client, request)
313
319
  except ResourceExhausted as e:
314
- print(f"Operation failed after retries due to quota exceeded: {e}")
320
+ log.error(f"Operation failed after retries due to quota exceeded: {e}")
315
321
  except Exception as e:
316
- print(f"An unexpected error occurred: {e}")
322
+ log.error(f"An unexpected error occurred: {e}")
317
323
 
318
324
  return operation.operation.name
319
325
 
@@ -119,8 +119,14 @@ class GoogleCloudLogging:
119
119
  if log_text:
120
120
  if isinstance(log_struct, dict):
121
121
  logger.log_struct(log_struct, severity=severity, source_location=caller_info)
122
- else:
122
+ elif isinstance(log_struct, str):
123
123
  logger.log_text(log_text, severity=severity, source_location=caller_info)
124
+ else:
125
+ try:
126
+ turn_to_text = str(log_text)
127
+ logger.log_text(turn_to_text, severity=severity, source_location=caller_info)
128
+ except Exception as err:
129
+ print(f"Could not log this: {log_text=} - {str(err)}")
124
130
 
125
131
  elif log_struct:
126
132
  if not isinstance(log_struct, dict):
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.69.10
3
+ Version: 0.69.12
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.69.10.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.69.12.tar.gz
7
7
  Author: Holosun ApS
8
8
  Author-email: multivac@sunholo.com
9
9
  License: Apache License, Version 2.0
@@ -61,6 +61,7 @@ Requires-Dist: pypdf; extra == "all"
61
61
  Requires-Dist: python-socketio; extra == "all"
62
62
  Requires-Dist: rich; extra == "all"
63
63
  Requires-Dist: supabase; extra == "all"
64
+ Requires-Dist: tantivy; extra == "all"
64
65
  Requires-Dist: tiktoken; extra == "all"
65
66
  Provides-Extra: cli
66
67
  Requires-Dist: jsonschema>=4.21.1; extra == "cli"
@@ -73,6 +74,7 @@ Requires-Dist: pg8000; extra == "database"
73
74
  Requires-Dist: pgvector; extra == "database"
74
75
  Requires-Dist: psycopg2-binary; extra == "database"
75
76
  Requires-Dist: lancedb; extra == "database"
77
+ Requires-Dist: tantivy; extra == "database"
76
78
  Provides-Extra: pipeline
77
79
  Requires-Dist: GitPython; extra == "pipeline"
78
80
  Requires-Dist: lark; extra == "pipeline"
@@ -42,6 +42,7 @@ pypdf
42
42
  python-socketio
43
43
  rich
44
44
  supabase
45
+ tantivy
45
46
  tiktoken
46
47
 
47
48
  [anthropic]
@@ -59,6 +60,7 @@ pg8000
59
60
  pgvector
60
61
  psycopg2-binary
61
62
  lancedb
63
+ tantivy
62
64
 
63
65
  [gcp]
64
66
  google-auth-httplib2
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes