sunholo 0.69.3__tar.gz → 0.69.4__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.3 → sunholo-0.69.4}/PKG-INFO +2 -2
  2. {sunholo-0.69.3 → sunholo-0.69.4}/setup.py +1 -1
  3. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/discovery_engine/discovery_engine_client.py +35 -26
  4. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo.egg-info/PKG-INFO +2 -2
  5. {sunholo-0.69.3 → sunholo-0.69.4}/LICENSE.txt +0 -0
  6. {sunholo-0.69.3 → sunholo-0.69.4}/MANIFEST.in +0 -0
  7. {sunholo-0.69.3 → sunholo-0.69.4}/README.md +0 -0
  8. {sunholo-0.69.3 → sunholo-0.69.4}/setup.cfg +0 -0
  9. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/__init__.py +0 -0
  10. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/__init__.py +0 -0
  11. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/chat_history.py +0 -0
  12. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/dispatch_to_qa.py +0 -0
  13. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/fastapi/__init__.py +0 -0
  14. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/fastapi/base.py +0 -0
  15. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/fastapi/qna_routes.py +0 -0
  16. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/flask/__init__.py +0 -0
  17. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/flask/base.py +0 -0
  18. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/flask/qna_routes.py +0 -0
  19. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/flask/vac_routes.py +0 -0
  20. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/langserve.py +0 -0
  21. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/pubsub.py +0 -0
  22. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/route.py +0 -0
  23. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/special_commands.py +0 -0
  24. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/agents/swagger.py +0 -0
  25. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/archive/__init__.py +0 -0
  26. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/archive/archive.py +0 -0
  27. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/auth/__init__.py +0 -0
  28. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/auth/run.py +0 -0
  29. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/bots/__init__.py +0 -0
  30. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/bots/discord.py +0 -0
  31. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/bots/github_webhook.py +0 -0
  32. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/bots/webapp.py +0 -0
  33. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/__init__.py +0 -0
  34. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/data_to_embed_pubsub.py +0 -0
  35. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/doc_handling.py +0 -0
  36. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/images.py +0 -0
  37. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/loaders.py +0 -0
  38. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/message_data.py +0 -0
  39. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/pdfs.py +0 -0
  40. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/publish.py +0 -0
  41. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/chunker/splitter.py +0 -0
  42. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/__init__.py +0 -0
  43. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/chat_vac.py +0 -0
  44. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/cli.py +0 -0
  45. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/cli_init.py +0 -0
  46. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/configs.py +0 -0
  47. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/deploy.py +0 -0
  48. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/embedder.py +0 -0
  49. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/merge_texts.py +0 -0
  50. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/run_proxy.py +0 -0
  51. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/sun_rich.py +0 -0
  52. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/cli/swagger.py +0 -0
  53. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/components/__init__.py +0 -0
  54. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/components/llm.py +0 -0
  55. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/components/retriever.py +0 -0
  56. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/components/vectorstore.py +0 -0
  57. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/__init__.py +0 -0
  58. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/alloydb.py +0 -0
  59. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/alloydb_client.py +0 -0
  60. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/database.py +0 -0
  61. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/lancedb.py +0 -0
  62. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/sql/sb/create_function.sql +0 -0
  63. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/sql/sb/create_function_time.sql +0 -0
  64. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/sql/sb/create_table.sql +0 -0
  65. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
  66. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/sql/sb/return_sources.sql +0 -0
  67. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/sql/sb/setup.sql +0 -0
  68. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/static_dbs.py +0 -0
  69. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/database/uuid.py +0 -0
  70. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/discovery_engine/__init__.py +0 -0
  71. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/discovery_engine/chunker_handler.py +0 -0
  72. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/discovery_engine/create_new.py +0 -0
  73. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/embedder/__init__.py +0 -0
  74. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/embedder/embed_chunk.py +0 -0
  75. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/gcs/__init__.py +0 -0
  76. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/gcs/add_file.py +0 -0
  77. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/gcs/download_url.py +0 -0
  78. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/gcs/metadata.py +0 -0
  79. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/langfuse/__init__.py +0 -0
  80. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/langfuse/callback.py +0 -0
  81. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/langfuse/prompts.py +0 -0
  82. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/llamaindex/__init__.py +0 -0
  83. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/llamaindex/generate.py +0 -0
  84. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/llamaindex/get_files.py +0 -0
  85. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/llamaindex/import_files.py +0 -0
  86. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/logging.py +0 -0
  87. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/lookup/__init__.py +0 -0
  88. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/lookup/model_lookup.yaml +0 -0
  89. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/patches/__init__.py +0 -0
  90. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/patches/langchain/__init__.py +0 -0
  91. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/patches/langchain/lancedb.py +0 -0
  92. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/patches/langchain/vertexai.py +0 -0
  93. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/pubsub/__init__.py +0 -0
  94. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/pubsub/process_pubsub.py +0 -0
  95. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/pubsub/pubsub_manager.py +0 -0
  96. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/qna/__init__.py +0 -0
  97. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/qna/parsers.py +0 -0
  98. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/qna/retry.py +0 -0
  99. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/streaming/__init__.py +0 -0
  100. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/streaming/content_buffer.py +0 -0
  101. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/streaming/langserve.py +0 -0
  102. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/streaming/stream_lookup.py +0 -0
  103. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/streaming/streaming.py +0 -0
  104. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/summarise/__init__.py +0 -0
  105. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/summarise/summarise.py +0 -0
  106. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/__init__.py +0 -0
  107. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/api_key.py +0 -0
  108. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/big_context.py +0 -0
  109. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/config.py +0 -0
  110. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/config_schema.py +0 -0
  111. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/gcp.py +0 -0
  112. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/gcp_project.py +0 -0
  113. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/parsers.py +0 -0
  114. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/timedelta.py +0 -0
  115. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/user_ids.py +0 -0
  116. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/utils/version.py +0 -0
  117. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/vertex/__init__.py +0 -0
  118. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/vertex/init.py +0 -0
  119. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/vertex/memory_tools.py +0 -0
  120. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo/vertex/safety.py +0 -0
  121. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo.egg-info/SOURCES.txt +0 -0
  122. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo.egg-info/dependency_links.txt +0 -0
  123. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo.egg-info/entry_points.txt +0 -0
  124. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo.egg-info/requires.txt +0 -0
  125. {sunholo-0.69.3 → sunholo-0.69.4}/sunholo.egg-info/top_level.txt +0 -0
  126. {sunholo-0.69.3 → sunholo-0.69.4}/tests/test_chat_history.py +0 -0
  127. {sunholo-0.69.3 → sunholo-0.69.4}/tests/test_chunker.py +0 -0
  128. {sunholo-0.69.3 → sunholo-0.69.4}/tests/test_config.py +0 -0
  129. {sunholo-0.69.3 → sunholo-0.69.4}/tests/test_dispatch_to_qa.py +0 -0
  130. {sunholo-0.69.3 → sunholo-0.69.4}/tests/test_swagger.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.69.3
3
+ Version: 0.69.4
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.3.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.69.4.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.69.3'
4
+ version = '0.69.4'
5
5
 
6
6
  setup(
7
7
  name='sunholo',
@@ -61,16 +61,13 @@ class DiscoveryEngineClient:
61
61
  if location != "global"
62
62
  else None
63
63
  )
64
- self.client = discoveryengine.DataStoreServiceClient(client_options=client_options)
65
- self.parent = self.client.branch_path(
66
- project=project_id,
67
- location=location,
68
- data_store=data_store_id,
69
- branch="default_branch",
70
- )
64
+ self.store_client = discoveryengine.DataStoreServiceClient(client_options=client_options)
65
+ self.doc_client = discoveryengine.DocumentServiceClient(client_options=client_options)
66
+ self.search_client = discoveryengine.SearchServiceClient(client_options=client_options)
71
67
 
72
68
  def create_data_store(
73
- self, chunk_size: int = 500
69
+ self, chunk_size: int = 500,
70
+ collection: str = "default_collection"
74
71
  ) -> str:
75
72
  """
76
73
  Creates a new data store with default configuration.
@@ -109,9 +106,15 @@ class DiscoveryEngineClient:
109
106
  document_processing_config=doc_config
110
107
  )
111
108
 
109
+ parent = self.store_client.collection_path(
110
+ project=self.project_id,
111
+ location=self.location,
112
+ collection=collection,
113
+ )
114
+
112
115
  # https://cloud.google.com/python/docs/reference/discoveryengine/0.11.4/google.cloud.discoveryengine_v1alpha.types.CreateDataStoreRequest
113
116
  request = discoveryengine.CreateDataStoreRequest(
114
- parent=self.parent,
117
+ parent=parent,
115
118
  data_store_id=self.data_store_id,
116
119
  data_store=data_store,
117
120
  # Optional: For Advanced Site Search Only
@@ -119,7 +122,7 @@ class DiscoveryEngineClient:
119
122
  )
120
123
 
121
124
  # Make the request
122
- operation = self.client.create_data_store(request=request)
125
+ operation = self.store_client.create_data_store(request=request)
123
126
 
124
127
  log.info(f"Waiting for operation to complete: {operation.operation.name}")
125
128
  response = operation.result()
@@ -140,6 +143,7 @@ class DiscoveryEngineClient:
140
143
  num_next_chunks: int = 3,
141
144
  page_size: int = 10,
142
145
  doc_or_chunks: str = "CHUNKS", # or DOCUMENTS
146
+ serving_config: str = "default_serving_config",
143
147
  ):
144
148
  """Retrieves chunks or documents based on a query.
145
149
 
@@ -161,22 +165,19 @@ class DiscoveryEngineClient:
161
165
  print(f"Chunk: {chunk.snippet}, document name: {chunk.document_name}")
162
166
  ```
163
167
  """
164
- serving_config = self.client.get_default_serving_config(
165
- name=self.client.serving_config_path(
166
- project=self.project_id,
167
- location=self.location,
168
- data_store=self.data_store_id,
169
- serving_config="default_serving_config")
170
- ).name
171
-
168
+
169
+ serving_config_path = self.search_client.serving_config_path(
170
+ self.project_id,
171
+ self.location,
172
+ self.data_store_id,
173
+ serving_config
174
+ )
175
+
172
176
  search_request = discoveryengine.SearchRequest(
173
- serving_config=serving_config,
177
+ serving_config=serving_config_path,
174
178
  query=query,
175
179
  page_size=page_size,
176
180
  content_search_spec=discoveryengine.SearchRequest.ContentSearchSpec(
177
- #snippet_spec=discoveryengine.SearchRequest.ContentSearchSpec.SnippetSpec(
178
- # return_snippet=True
179
- #),
180
181
  search_result_mode=doc_or_chunks, # CHUNKS or DOCUMENTS
181
182
  chunk_spec=discoveryengine.SearchRequest.ContentSearchSpec.ChunkSpec(
182
183
  num_previous_chunks=num_previous_chunks,
@@ -185,13 +186,14 @@ class DiscoveryEngineClient:
185
186
  ),
186
187
  )
187
188
 
188
- search_response = self.client.search(search_request)
189
+ search_response = self.search_client.search(search_request)
189
190
 
190
191
  return search_response
191
192
 
192
193
  def import_documents(self,
193
194
  gcs_uri: Optional[str] = None,
194
195
  data_schema="content",
196
+ branch="default_branch",
195
197
  bigquery_dataset: Optional[str] = None,
196
198
  bigquery_table: Optional[str] = None,
197
199
  bigquery_project_id: Optional[str] = None,
@@ -203,9 +205,16 @@ class DiscoveryEngineClient:
203
205
 
204
206
  """
205
207
 
208
+ parent = self.doc_client.branch_path(
209
+ self.project_id,
210
+ self.location,
211
+ self.data_store_id,
212
+ branch
213
+ )
214
+
206
215
  if gcs_uri:
207
216
  request = discoveryengine.ImportDocumentsRequest(
208
- parent=self.parent,
217
+ parent=parent,
209
218
  # https://cloud.google.com/python/docs/reference/discoveryengine/latest/google.cloud.discoveryengine_v1alpha.types.GcsSource
210
219
  gcs_source=discoveryengine.GcsSource(
211
220
  input_uris=[gcs_uri], data_schema=data_schema,
@@ -215,7 +224,7 @@ class DiscoveryEngineClient:
215
224
  )
216
225
  else:
217
226
  request = discoveryengine.ImportDocumentsRequest(
218
- parent=self.parent,
227
+ parent=parent,
219
228
  bigquery_source=discoveryengine.BigQuerySource(
220
229
  project_id=bigquery_project_id or self.project_id,
221
230
  dataset_id=bigquery_dataset,
@@ -227,7 +236,7 @@ class DiscoveryEngineClient:
227
236
  )
228
237
 
229
238
  # Make the request
230
- operation = self.client.import_documents(request=request)
239
+ operation = self.doc_client.import_documents(request=request)
231
240
 
232
241
  log.info(f"Waiting for operation to complete: {operation.operation.name}")
233
242
  response = operation.result()
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.69.3
3
+ Version: 0.69.4
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.3.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.69.4.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
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes