sunholo 0.119.12__tar.gz → 0.119.13__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 (186) hide show
  1. {sunholo-0.119.12/src/sunholo.egg-info → sunholo-0.119.13}/PKG-INFO +1 -1
  2. {sunholo-0.119.12 → sunholo-0.119.13}/pyproject.toml +1 -1
  3. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/discovery_engine/discovery_engine_client.py +87 -0
  4. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/discovery_engine/get_ai_search_chunks.py +1 -1
  5. {sunholo-0.119.12 → sunholo-0.119.13/src/sunholo.egg-info}/PKG-INFO +1 -1
  6. {sunholo-0.119.12 → sunholo-0.119.13}/LICENSE.txt +0 -0
  7. {sunholo-0.119.12 → sunholo-0.119.13}/MANIFEST.in +0 -0
  8. {sunholo-0.119.12 → sunholo-0.119.13}/README.md +0 -0
  9. {sunholo-0.119.12 → sunholo-0.119.13}/setup.cfg +0 -0
  10. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/__init__.py +0 -0
  11. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/__init__.py +0 -0
  12. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/chat_history.py +0 -0
  13. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/dispatch_to_qa.py +0 -0
  14. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/fastapi/__init__.py +0 -0
  15. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/fastapi/base.py +0 -0
  16. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/fastapi/qna_routes.py +0 -0
  17. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/flask/__init__.py +0 -0
  18. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/flask/base.py +0 -0
  19. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/flask/qna_routes.py +0 -0
  20. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/flask/vac_routes.py +0 -0
  21. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/langserve.py +0 -0
  22. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/pubsub.py +0 -0
  23. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/route.py +0 -0
  24. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/special_commands.py +0 -0
  25. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/agents/swagger.py +0 -0
  26. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/archive/__init__.py +0 -0
  27. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/archive/archive.py +0 -0
  28. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/auth/__init__.py +0 -0
  29. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/auth/gcloud.py +0 -0
  30. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/auth/refresh.py +0 -0
  31. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/auth/run.py +0 -0
  32. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/azure/__init__.py +0 -0
  33. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/azure/auth.py +0 -0
  34. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/azure/blobs.py +0 -0
  35. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/azure/event_grid.py +0 -0
  36. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/bots/__init__.py +0 -0
  37. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/bots/discord.py +0 -0
  38. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/bots/github_webhook.py +0 -0
  39. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/bots/webapp.py +0 -0
  40. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/__init__.py +0 -0
  41. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/azure.py +0 -0
  42. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/doc_handling.py +0 -0
  43. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/encode_metadata.py +0 -0
  44. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/images.py +0 -0
  45. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/loaders.py +0 -0
  46. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/message_data.py +0 -0
  47. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/pdfs.py +0 -0
  48. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/process_chunker_data.py +0 -0
  49. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/publish.py +0 -0
  50. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/pubsub.py +0 -0
  51. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/chunker/splitter.py +0 -0
  52. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/__init__.py +0 -0
  53. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/chat_vac.py +0 -0
  54. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/cli.py +0 -0
  55. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/cli_init.py +0 -0
  56. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/configs.py +0 -0
  57. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/deploy.py +0 -0
  58. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/embedder.py +0 -0
  59. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/merge_texts.py +0 -0
  60. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/run_proxy.py +0 -0
  61. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/sun_rich.py +0 -0
  62. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/swagger.py +0 -0
  63. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/cli/vertex.py +0 -0
  64. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/components/__init__.py +0 -0
  65. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/components/llm.py +0 -0
  66. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/components/retriever.py +0 -0
  67. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/components/vectorstore.py +0 -0
  68. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/custom_logging.py +0 -0
  69. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/__init__.py +0 -0
  70. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/alloydb.py +0 -0
  71. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/alloydb_client.py +0 -0
  72. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/database.py +0 -0
  73. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/lancedb.py +0 -0
  74. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/sql/sb/create_function.sql +0 -0
  75. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/sql/sb/create_function_time.sql +0 -0
  76. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/sql/sb/create_table.sql +0 -0
  77. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/sql/sb/delete_source_row.sql +0 -0
  78. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/sql/sb/return_sources.sql +0 -0
  79. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/sql/sb/setup.sql +0 -0
  80. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/static_dbs.py +0 -0
  81. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/database/uuid.py +0 -0
  82. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/discovery_engine/__init__.py +0 -0
  83. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/discovery_engine/chunker_handler.py +0 -0
  84. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/discovery_engine/cli.py +0 -0
  85. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/discovery_engine/create_new.py +0 -0
  86. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/embedder/__init__.py +0 -0
  87. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/embedder/embed_chunk.py +0 -0
  88. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/embedder/embed_metadata.py +0 -0
  89. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/excel/__init__.py +0 -0
  90. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/excel/plugin.py +0 -0
  91. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/gcs/__init__.py +0 -0
  92. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/gcs/add_file.py +0 -0
  93. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/gcs/download_folder.py +0 -0
  94. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/gcs/download_url.py +0 -0
  95. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/gcs/extract_and_sign.py +0 -0
  96. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/gcs/metadata.py +0 -0
  97. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/genai/__init__.py +0 -0
  98. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/genai/file_handling.py +0 -0
  99. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/genai/genaiv2.py +0 -0
  100. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/genai/images.py +0 -0
  101. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/genai/init.py +0 -0
  102. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/genai/process_funcs_cls.py +0 -0
  103. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/genai/safety.py +0 -0
  104. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/invoke/__init__.py +0 -0
  105. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/invoke/async_class.py +0 -0
  106. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/invoke/direct_vac_func.py +0 -0
  107. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/invoke/invoke_vac_utils.py +0 -0
  108. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/langchain_types.py +0 -0
  109. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/langfuse/__init__.py +0 -0
  110. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/langfuse/callback.py +0 -0
  111. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/langfuse/evals.py +0 -0
  112. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/langfuse/prompts.py +0 -0
  113. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/llamaindex/__init__.py +0 -0
  114. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/llamaindex/get_files.py +0 -0
  115. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/llamaindex/import_files.py +0 -0
  116. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/llamaindex/llamaindex_class.py +0 -0
  117. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/llamaindex/user_history.py +0 -0
  118. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/lookup/__init__.py +0 -0
  119. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/lookup/model_lookup.yaml +0 -0
  120. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/mcp/__init__.py +0 -0
  121. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/mcp/cli.py +0 -0
  122. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/pubsub/__init__.py +0 -0
  123. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/pubsub/process_pubsub.py +0 -0
  124. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/pubsub/pubsub_manager.py +0 -0
  125. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/qna/__init__.py +0 -0
  126. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/qna/parsers.py +0 -0
  127. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/qna/retry.py +0 -0
  128. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/senses/__init__.py +0 -0
  129. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/senses/stream_voice.py +0 -0
  130. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/streaming/__init__.py +0 -0
  131. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/streaming/content_buffer.py +0 -0
  132. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/streaming/langserve.py +0 -0
  133. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/streaming/stream_lookup.py +0 -0
  134. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/streaming/streaming.py +0 -0
  135. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/summarise/__init__.py +0 -0
  136. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/summarise/summarise.py +0 -0
  137. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/agent/__init__.py +0 -0
  138. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/agent/agent_service.py +0 -0
  139. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/agent/app.py +0 -0
  140. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/agent/my_log.py +0 -0
  141. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/agent/tools/__init__.py +0 -0
  142. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/agent/tools/your_agent.py +0 -0
  143. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/agent/vac_service.py +0 -0
  144. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/project/__init__.py +0 -0
  145. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/project/app.py +0 -0
  146. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/project/my_log.py +0 -0
  147. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/project/vac_service.py +0 -0
  148. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/system_services/__init__.py +0 -0
  149. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/system_services/app.py +0 -0
  150. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/templates/system_services/my_log.py +0 -0
  151. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/terraform/__init__.py +0 -0
  152. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/terraform/tfvars_editor.py +0 -0
  153. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/tools/__init__.py +0 -0
  154. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/tools/web_browser.py +0 -0
  155. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/__init__.py +0 -0
  156. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/api_key.py +0 -0
  157. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/big_context.py +0 -0
  158. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/config.py +0 -0
  159. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/config_class.py +0 -0
  160. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/config_schema.py +0 -0
  161. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/gcp.py +0 -0
  162. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/gcp_project.py +0 -0
  163. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/mime.py +0 -0
  164. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/parsers.py +0 -0
  165. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/timedelta.py +0 -0
  166. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/user_ids.py +0 -0
  167. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/utils/version.py +0 -0
  168. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/vertex/__init__.py +0 -0
  169. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/vertex/extensions_call.py +0 -0
  170. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/vertex/extensions_class.py +0 -0
  171. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/vertex/genai_functions.py +0 -0
  172. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/vertex/init.py +0 -0
  173. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/vertex/memory_tools.py +0 -0
  174. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/vertex/safety.py +0 -0
  175. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo/vertex/type_dict_to_json.py +0 -0
  176. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo.egg-info/SOURCES.txt +0 -0
  177. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo.egg-info/dependency_links.txt +0 -0
  178. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo.egg-info/entry_points.txt +0 -0
  179. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo.egg-info/requires.txt +0 -0
  180. {sunholo-0.119.12 → sunholo-0.119.13}/src/sunholo.egg-info/top_level.txt +0 -0
  181. {sunholo-0.119.12 → sunholo-0.119.13}/tests/test_async.py +0 -0
  182. {sunholo-0.119.12 → sunholo-0.119.13}/tests/test_async_genai2.py +0 -0
  183. {sunholo-0.119.12 → sunholo-0.119.13}/tests/test_chat_history.py +0 -0
  184. {sunholo-0.119.12 → sunholo-0.119.13}/tests/test_config.py +0 -0
  185. {sunholo-0.119.12 → sunholo-0.119.13}/tests/test_genai2.py +0 -0
  186. {sunholo-0.119.12 → sunholo-0.119.13}/tests/test_unstructured.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sunholo
3
- Version: 0.119.12
3
+ Version: 0.119.13
4
4
  Summary: Large Language Model DevOps - a package to help deploy LLMs to the Cloud.
5
5
  Author-email: Holosun ApS <multivac@sunholo.com>
6
6
  License: Apache License, Version 2.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "sunholo"
7
- version = "0.119.12"
7
+ version = "0.119.13"
8
8
  description = "Large Language Model DevOps - a package to help deploy LLMs to the Cloud."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -726,6 +726,67 @@ class DiscoveryEngineClient:
726
726
  log.info("Discovery engine response object")
727
727
  return search_response
728
728
 
729
+ async def async_search_with_filters(self, query, filter_str=None,
730
+ num_previous_chunks=3, num_next_chunks=3,
731
+ page_size=10, parse_chunks_to_string=True,
732
+ serving_config="default_serving_config",
733
+ data_store_ids: Optional[List[str]] = None):
734
+ """
735
+ Searches with a generic filter string asynchronously.
736
+
737
+ Args:
738
+ query (str): The search query.
739
+ filter_str (str, optional): The filter string to apply (e.g., "source LIKE 'my_source' AND eventTime > TIMESTAMP('2024-01-01')").
740
+ #... other parameters from get_chunks
741
+
742
+ Returns:
743
+ discoveryengine.SearchResponse or str: The search response object or string of chunks.
744
+ """
745
+
746
+ serving_config_path = self.async_search_client.serving_config_path(
747
+ self.project_id,
748
+ self.location,
749
+ self.data_store_id,
750
+ serving_config
751
+ )
752
+
753
+ search_request = discoveryengine.SearchRequest(
754
+ serving_config=serving_config_path,
755
+ query=query,
756
+ page_size=page_size,
757
+ content_search_spec=discoveryengine.SearchRequest.ContentSearchSpec(
758
+ search_result_mode="CHUNKS",
759
+ chunk_spec=discoveryengine.SearchRequest.ContentSearchSpec.ChunkSpec(
760
+ num_previous_chunks=num_previous_chunks,
761
+ num_next_chunks=num_next_chunks,
762
+ ),
763
+ ),
764
+ filter=filter_str # name:'ANY("king kong")'
765
+ )
766
+
767
+ if data_store_ids:
768
+ search_request.data_store_specs = [
769
+ discoveryengine.SearchRequest.DataStoreSpec(
770
+ data_store=self._search_data_store_path(data_store_id, serving_config=serving_config)
771
+ )
772
+ for data_store_id in data_store_ids
773
+ ]
774
+
775
+ log.info(f"Discovery engine request with filter: {search_request=}")
776
+ try:
777
+ search_response = await self.async_search_client.search(search_request)
778
+ except Exception as e:
779
+ log.info(f"No results {search_request.data_store_specs=}: {str(e)}")
780
+ return None
781
+
782
+ if parse_chunks_to_string:
783
+ big_string = await self.async_process_chunks(search_response)
784
+ log.info(f"Discovery engine chunks string sample: {big_string[:100]}")
785
+ return big_string
786
+
787
+ log.info("Discovery engine response object")
788
+ return search_response
789
+
729
790
  def search_by_objectId_and_or_date(self, query, objectId=None, date=None, **kwargs):
730
791
  """
731
792
  Searches and filters by objectId (exact match) and/or date.
@@ -751,3 +812,29 @@ class DiscoveryEngineClient:
751
812
  else:
752
813
  # No filters, perform regular search
753
814
  return self.search_with_filters(query, **kwargs)
815
+
816
+ async def async_search_by_objectId_and_or_date(self, query, objectId=None, date=None, **kwargs):
817
+ """
818
+ Searches and filters by objectId (exact match) and/or date asynchronously.
819
+
820
+ Args:
821
+ query (str): The search query.
822
+ objectId (str, optional): The exact objectId to filter by.
823
+ date (str, optional): The literal_iso_8601_datetime_format date to filter by e.g. 2025-02-24T12:25:30.123Z
824
+ **kwargs: Additional keyword arguments to pass to `async_search_with_filters`.
825
+
826
+ Returns:
827
+ list: A list of search results.
828
+ """
829
+ filter_clauses = []
830
+ if objectId:
831
+ filter_clauses.append(f'objectId: ANY("{objectId}")')
832
+ if date:
833
+ filter_clauses.append(f'eventTime >= "{date}"')
834
+
835
+ if filter_clauses:
836
+ filter_str = " AND ".join(filter_clauses) # Combine with AND
837
+ return await self.async_search_with_filters(query, filter_str, **kwargs)
838
+ else:
839
+ # No filters, perform regular search
840
+ return await self.async_search_with_filters(query, **kwargs)
@@ -116,7 +116,7 @@ async def async_get_all_chunks(question:str, config:ConfigManager, filter_str=No
116
116
  async def async_get_chunks(question, vector_name, num_chunks, filter_str, project_id=None):
117
117
  de = DiscoveryEngineClient(vector_name, project_id=project_id)
118
118
  try:
119
- return await de.search_with_filters(query=question,
119
+ return await de.async_search_with_filters(query=question,
120
120
  filter_str=filter_str,
121
121
  num_previous_chunks=num_chunks,
122
122
  num_next_chunks=num_chunks)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sunholo
3
- Version: 0.119.12
3
+ Version: 0.119.13
4
4
  Summary: Large Language Model DevOps - a package to help deploy LLMs to the Cloud.
5
5
  Author-email: Holosun ApS <multivac@sunholo.com>
6
6
  License: Apache License, Version 2.0
File without changes
File without changes
File without changes
File without changes