sunholo 0.83.0__tar.gz → 0.83.2__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 (150) hide show
  1. {sunholo-0.83.0 → sunholo-0.83.2}/PKG-INFO +2 -2
  2. {sunholo-0.83.0 → sunholo-0.83.2}/setup.py +1 -1
  3. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/alloydb_client.py +47 -17
  4. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/vertex/memory_tools.py +2 -2
  5. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo.egg-info/PKG-INFO +2 -2
  6. {sunholo-0.83.0 → sunholo-0.83.2}/LICENSE.txt +0 -0
  7. {sunholo-0.83.0 → sunholo-0.83.2}/MANIFEST.in +0 -0
  8. {sunholo-0.83.0 → sunholo-0.83.2}/README.md +0 -0
  9. {sunholo-0.83.0 → sunholo-0.83.2}/setup.cfg +0 -0
  10. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/__init__.py +0 -0
  11. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/__init__.py +0 -0
  12. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/chat_history.py +0 -0
  13. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/dispatch_to_qa.py +0 -0
  14. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/fastapi/__init__.py +0 -0
  15. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/fastapi/base.py +0 -0
  16. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/fastapi/qna_routes.py +0 -0
  17. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/flask/__init__.py +0 -0
  18. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/flask/base.py +0 -0
  19. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/flask/qna_routes.py +0 -0
  20. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/flask/vac_routes.py +0 -0
  21. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/langserve.py +0 -0
  22. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/pubsub.py +0 -0
  23. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/route.py +0 -0
  24. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/special_commands.py +0 -0
  25. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/agents/swagger.py +0 -0
  26. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/archive/__init__.py +0 -0
  27. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/archive/archive.py +0 -0
  28. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/auth/__init__.py +0 -0
  29. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/auth/gcloud.py +0 -0
  30. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/auth/refresh.py +0 -0
  31. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/auth/run.py +0 -0
  32. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/azure/__init__.py +0 -0
  33. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/azure/auth.py +0 -0
  34. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/azure/blobs.py +0 -0
  35. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/azure/event_grid.py +0 -0
  36. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/bots/__init__.py +0 -0
  37. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/bots/discord.py +0 -0
  38. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/bots/github_webhook.py +0 -0
  39. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/bots/webapp.py +0 -0
  40. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/__init__.py +0 -0
  41. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/azure.py +0 -0
  42. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/doc_handling.py +0 -0
  43. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/encode_metadata.py +0 -0
  44. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/images.py +0 -0
  45. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/loaders.py +0 -0
  46. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/message_data.py +0 -0
  47. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/pdfs.py +0 -0
  48. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/process_chunker_data.py +0 -0
  49. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/publish.py +0 -0
  50. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/pubsub.py +0 -0
  51. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/chunker/splitter.py +0 -0
  52. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/__init__.py +0 -0
  53. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/chat_vac.py +0 -0
  54. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/cli.py +0 -0
  55. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/cli_init.py +0 -0
  56. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/configs.py +0 -0
  57. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/deploy.py +0 -0
  58. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/embedder.py +0 -0
  59. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/merge_texts.py +0 -0
  60. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/run_proxy.py +0 -0
  61. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/sun_rich.py +0 -0
  62. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/swagger.py +0 -0
  63. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/cli/vertex.py +0 -0
  64. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/components/__init__.py +0 -0
  65. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/components/llm.py +0 -0
  66. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/components/retriever.py +0 -0
  67. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/components/vectorstore.py +0 -0
  68. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/custom_logging.py +0 -0
  69. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/__init__.py +0 -0
  70. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/alloydb.py +0 -0
  71. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/database.py +0 -0
  72. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/lancedb.py +0 -0
  73. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/sql/sb/create_function.sql +0 -0
  74. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/sql/sb/create_function_time.sql +0 -0
  75. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/sql/sb/create_table.sql +0 -0
  76. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
  77. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/sql/sb/return_sources.sql +0 -0
  78. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/sql/sb/setup.sql +0 -0
  79. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/static_dbs.py +0 -0
  80. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/database/uuid.py +0 -0
  81. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/discovery_engine/__init__.py +0 -0
  82. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/discovery_engine/chunker_handler.py +0 -0
  83. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/discovery_engine/create_new.py +0 -0
  84. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/discovery_engine/discovery_engine_client.py +0 -0
  85. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/discovery_engine/get_ai_search_chunks.py +0 -0
  86. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/embedder/__init__.py +0 -0
  87. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/embedder/embed_chunk.py +0 -0
  88. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/gcs/__init__.py +0 -0
  89. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/gcs/add_file.py +0 -0
  90. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/gcs/download_folder.py +0 -0
  91. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/gcs/download_url.py +0 -0
  92. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/gcs/metadata.py +0 -0
  93. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/invoke/__init__.py +0 -0
  94. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/invoke/direct_vac_func.py +0 -0
  95. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/invoke/invoke_vac_utils.py +0 -0
  96. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/langfuse/__init__.py +0 -0
  97. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/langfuse/callback.py +0 -0
  98. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/langfuse/prompts.py +0 -0
  99. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/llamaindex/__init__.py +0 -0
  100. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/llamaindex/get_files.py +0 -0
  101. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/llamaindex/import_files.py +0 -0
  102. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/llamaindex/llamaindex_class.py +0 -0
  103. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/llamaindex/user_history.py +0 -0
  104. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/lookup/__init__.py +0 -0
  105. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/lookup/model_lookup.yaml +0 -0
  106. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/patches/__init__.py +0 -0
  107. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/patches/langchain/__init__.py +0 -0
  108. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/patches/langchain/lancedb.py +0 -0
  109. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/patches/langchain/vertexai.py +0 -0
  110. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/pubsub/__init__.py +0 -0
  111. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/pubsub/process_pubsub.py +0 -0
  112. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/pubsub/pubsub_manager.py +0 -0
  113. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/qna/__init__.py +0 -0
  114. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/qna/parsers.py +0 -0
  115. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/qna/retry.py +0 -0
  116. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/streaming/__init__.py +0 -0
  117. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/streaming/content_buffer.py +0 -0
  118. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/streaming/langserve.py +0 -0
  119. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/streaming/stream_lookup.py +0 -0
  120. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/streaming/streaming.py +0 -0
  121. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/summarise/__init__.py +0 -0
  122. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/summarise/summarise.py +0 -0
  123. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/tools/__init__.py +0 -0
  124. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/tools/web_browser.py +0 -0
  125. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/__init__.py +0 -0
  126. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/api_key.py +0 -0
  127. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/big_context.py +0 -0
  128. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/config.py +0 -0
  129. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/config_class.py +0 -0
  130. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/config_schema.py +0 -0
  131. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/gcp.py +0 -0
  132. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/gcp_project.py +0 -0
  133. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/parsers.py +0 -0
  134. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/timedelta.py +0 -0
  135. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/user_ids.py +0 -0
  136. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/utils/version.py +0 -0
  137. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/vertex/__init__.py +0 -0
  138. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/vertex/extensions_call.py +0 -0
  139. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/vertex/extensions_class.py +0 -0
  140. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/vertex/genai_functions.py +0 -0
  141. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/vertex/init.py +0 -0
  142. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/vertex/safety.py +0 -0
  143. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo/vertex/type_dict_to_json.py +0 -0
  144. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo.egg-info/SOURCES.txt +0 -0
  145. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo.egg-info/dependency_links.txt +0 -0
  146. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo.egg-info/entry_points.txt +0 -0
  147. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo.egg-info/requires.txt +0 -0
  148. {sunholo-0.83.0 → sunholo-0.83.2}/sunholo.egg-info/top_level.txt +0 -0
  149. {sunholo-0.83.0 → sunholo-0.83.2}/tests/test_chat_history.py +0 -0
  150. {sunholo-0.83.0 → sunholo-0.83.2}/tests/test_config.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.83.0
3
+ Version: 0.83.2
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.83.0.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.83.2.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.83.0'
4
+ version = '0.83.2'
5
5
 
6
6
  setup(
7
7
  name='sunholo',
@@ -3,7 +3,7 @@ try:
3
3
  import pg8000
4
4
  import sqlalchemy
5
5
  from sqlalchemy.exc import DatabaseError, ProgrammingError
6
- from google.cloud.alloydb.connector import Connector
6
+ from langchain_google_alloydb_pg import AlloyDBEngine
7
7
  except ImportError:
8
8
  AlloyDBEngine = None
9
9
  pass
@@ -42,16 +42,15 @@ class AlloyDBClient:
42
42
  region: str=None,
43
43
  cluster_name:str=None,
44
44
  instance_name:str=None,
45
- user:str=None,
46
- password=None,
45
+ user:str=None,
46
+ password:str=None,
47
47
  db="postgres"):
48
48
  """Initializes the AlloyDB client.
49
49
  - project_id (str): GCP project ID where the AlloyDB instance resides.
50
50
  - region (str): The region where the AlloyDB instance is located.
51
51
  - cluster_name (str): The name of the AlloyDB cluster.
52
52
  - instance_name (str): The name of the AlloyDB instance.
53
- - user (str): The database user name.
54
- - password (str): The database user's password.
53
+ - user (str): If user is None will use the default service email
55
54
  - db_name (str): The name of the database.
56
55
  """
57
56
  if config is None:
@@ -61,6 +60,7 @@ class AlloyDBClient:
61
60
  alloydb_config = config.vacConfig("alloydb_config")
62
61
  if not alloydb_config:
63
62
  raise ValueError("Must specify vac.alloydb_config")
63
+ self.config = alloydb_config
64
64
  project_id = alloydb_config["project_id"]
65
65
  region = alloydb_config["region"]
66
66
  cluster_name = alloydb_config["cluster"]
@@ -70,18 +70,25 @@ class AlloyDBClient:
70
70
  if ALLOYDB_DB is None and alloydb_config.get("database") is None:
71
71
  log.warning("Could not locate ALLOYDB_DB environment variable or 'alloydb_config.database'")
72
72
 
73
- self.database = alloydb_config.get("database") or ALLOYDB_DB,
74
- self.connector = Connector()
75
- self.inst_uri = self._build_instance_uri(project_id, region, cluster_name, instance_name)
76
- self.engine = self._create_engine(self.inst_uri, user, password, db)
73
+ self.database = alloydb_config.get("database") or ALLOYDB_DB
74
+
75
+ if user:
76
+ log.info("User specified {user} - using pg8000 engine")
77
+ self.user = user
78
+ self.password = password
79
+ self.inst_url = self._build_instance_uri(project_id, region, cluster_name, instance_name)
80
+ self.engine = self._create_engine_from_pg8000()
81
+ else:
82
+ log.info("Build with Langchain engine - will use default service account for auth")
83
+ self.engine = self._create_engine()
77
84
 
78
85
  def _build_instance_uri(self, project_id, region, cluster_name, instance_name):
79
86
  return f"projects/{project_id}/locations/{region}/clusters/{cluster_name}/instances/{instance_name}"
80
-
81
- def _create_engine(self, inst_uri, user, password, db):
87
+
88
+ def _create_engine_from_pg8000(self, user, password, db):
82
89
  def getconn() -> pg8000.dbapi.Connection:
83
90
  conn = self.connector.connect(
84
- inst_uri,
91
+ self.inst_uri,
85
92
  "pg8000",
86
93
  user=user,
87
94
  password=password,
@@ -93,10 +100,33 @@ class AlloyDBClient:
93
100
  engine = sqlalchemy.create_engine(
94
101
  "postgresql+pg8000://",
95
102
  isolation_level="AUTOCOMMIT",
96
- creator=getconn
97
- )
103
+ creator=getconn)
98
104
  engine.dialect.description_encoding = None
99
- log.info(f"Created AlloyDB engine for {inst_uri} and user: {user}")
105
+
106
+ log.info(f"Created AlloyDB engine for {self.inst_uri} and user: {user}")
107
+ return engine
108
+
109
+ def _create_engine(self):
110
+ if not AlloyDBEngine:
111
+ log.error("Can't create AlloyDBEngine - install via `pip install sunholo[gcp,database]`")
112
+ raise ValueError("Can't import AlloyDBEngine")
113
+
114
+ log.info("Inititaing AlloyDB Langchain engine for database: {self.database}")
115
+
116
+ from google.cloud.alloydb.connector import IPTypes
117
+ engine = AlloyDBEngine.from_instance(
118
+ project_id=self.config["project_id"],
119
+ region=self.config["region"],
120
+ cluster=self.config["cluster"],
121
+ instance=self.config["instance"],
122
+ user=self.user,
123
+ password=self.password,
124
+ database=self.database,
125
+ ip_type=self.config.get("ip_type") or IPTypes.PRIVATE
126
+ )
127
+
128
+ log.info(f"Created AlloyDB engine for {engine}")
129
+
100
130
  return engine
101
131
 
102
132
  def execute_sql(self, sql_statement):
@@ -153,7 +183,7 @@ class AlloyDBClient:
153
183
  return documents
154
184
 
155
185
  def get_sources_from_docstore(self, sources, vector_name, search_type="OR", just_source_name=False):
156
- """Fetches sources from the docstore asynchronously."""
186
+ """Fetches sources from the docstore."""
157
187
  if just_source_name:
158
188
  query = self._list_sources_from_docstore(sources, vector_name=vector_name, search_type=search_type)
159
189
  else:
@@ -163,7 +193,7 @@ class AlloyDBClient:
163
193
  return []
164
194
 
165
195
  documents = self.execute_sql(query)
166
-
196
+
167
197
  return documents
168
198
 
169
199
  def _get_sources_from_docstore(self, sources, vector_name, search_type="OR"):
@@ -133,8 +133,8 @@ def get_google_search_grounding(vector_name:str=None, config:ConfigManager=None)
133
133
  config = ConfigManager(vector_name)
134
134
 
135
135
  # can't have this and llamaindex memories?
136
- ground = config.vacConfig("grounding")
137
- if ground and ground.get("google_search"):
136
+ tools = config.vacConfig("tools")
137
+ if tools and tools.get("google_search"):
138
138
  gs_tool = Tool.from_google_search_retrieval(grounding.GoogleSearchRetrieval())
139
139
  log.info(f"Got Search Tool: {gs_tool}")
140
140
  return gs_tool
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.83.0
3
+ Version: 0.83.2
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.83.0.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.83.2.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