Skip to content

Commit 32b030a

Browse files
Ark-kuncopybara-github
authored andcommitted
feat: GenAI - Grounding - Released Google Web Search retriever to GA
PiperOrigin-RevId: 632335942
1 parent 12c147b commit 32b030a

File tree

4 files changed

+43
-2
lines changed

4 files changed

+43
-2
lines changed

tests/unit/vertexai/test_generative_models.py

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -868,7 +868,7 @@ def test_conversion_methods(self, generative_models: generative_models):
868868
attribute="generate_content",
869869
new=mock_generate_content,
870870
)
871-
def test_generate_content_grounding_google_search_retriever(self):
871+
def test_generate_content_grounding_google_search_retriever_preview(self):
872872
model = preview_generative_models.GenerativeModel("gemini-pro")
873873
google_search_retriever_tool = (
874874
preview_generative_models.Tool.from_google_search_retrieval(
@@ -882,6 +882,23 @@ def test_generate_content_grounding_google_search_retriever(self):
882882
)
883883
assert response.text
884884

885+
@mock.patch.object(
886+
target=prediction_service.PredictionServiceClient,
887+
attribute="generate_content",
888+
new=mock_generate_content,
889+
)
890+
def test_generate_content_grounding_google_search_retriever(self):
891+
model = generative_models.GenerativeModel("gemini-pro")
892+
google_search_retriever_tool = (
893+
generative_models.Tool.from_google_search_retrieval(
894+
generative_models.grounding.GoogleSearchRetrieval()
895+
)
896+
)
897+
response = model.generate_content(
898+
"Why is sky blue?", tools=[google_search_retriever_tool]
899+
)
900+
assert response.text
901+
885902
@mock.patch.object(
886903
target=prediction_service.PredictionServiceClient,
887904
attribute="generate_content",

vertexai/generative_models/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
ResponseValidationError,
3333
SafetySetting,
3434
Tool,
35+
grounding,
3536
)
3637

3738
__all__ = [
@@ -50,4 +51,5 @@
5051
"ResponseValidationError",
5152
"SafetySetting",
5253
"Tool",
54+
"grounding",
5355
]

vertexai/generative_models/_generative_models.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2012,6 +2012,28 @@ def __repr__(self):
20122012
class grounding: # pylint: disable=invalid-name
20132013
"""Grounding namespace."""
20142014

2015+
__module__ = "vertexai.generative_models"
2016+
2017+
def __init__(self):
2018+
raise RuntimeError("This class must not be instantiated.")
2019+
2020+
class GoogleSearchRetrieval:
2021+
r"""Tool to retrieve public web data for grounding, powered by
2022+
Google Search.
2023+
"""
2024+
2025+
def __init__(self):
2026+
"""Initializes a Google Search Retrieval tool.
2027+
"""
2028+
self._raw_google_search_retrieval = gapic_tool_types.GoogleSearchRetrieval()
2029+
2030+
2031+
class preview_grounding: # pylint: disable=invalid-name
2032+
"""Grounding namespace (preview)."""
2033+
2034+
__name__ = "grounding"
2035+
__module__ = "vertexai.preview.generative_models"
2036+
20152037
def __init__(self):
20162038
raise RuntimeError("This class must not be instantiated.")
20172039

vertexai/preview/generative_models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
# We just want to re-export certain classes
1818
# pylint: disable=g-multiple-import,g-importing-member
1919
from vertexai.generative_models._generative_models import (
20-
grounding,
20+
preview_grounding as grounding,
2121
_PreviewGenerativeModel,
2222
_PreviewChatSession,
2323
GenerationConfig,

0 commit comments

Comments
 (0)