Skip to content

Commit 3bc2f58

Browse files
sararobcopybara-github
authored andcommitted
feat: GenAI SDK client - Add RAG module with list_corpora, get_corpus, get_file, list_files, and get_config methods
PiperOrigin-RevId: 922828568
1 parent 81c7f38 commit 3bc2f58

10 files changed

Lines changed: 3604 additions & 0 deletions

File tree

agentplatform/_genai/client.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
from agentplatform._genai import prompts as prompts_module
4141
from agentplatform._genai import skills as skills_module
4242
from agentplatform._genai import live as live_module
43+
from agentplatform._genai import rag as rag_module
4344

4445

4546
_GENAI_MODULES_TELEMETRY_HEADER = "vertex-genai-modules"
@@ -83,6 +84,7 @@ def __init__(self, api_client: genai_client.BaseApiClient): # type: ignore[name
8384
self._prompts: Optional[ModuleType] = None
8485
self._datasets: Optional[ModuleType] = None
8586
self._skills: Optional[ModuleType] = None
87+
self._rag: Optional[ModuleType] = None
8688

8789
@property
8890
@_common.experimental_warning(
@@ -164,6 +166,19 @@ def skills(self) -> "skills_module.AsyncSkills":
164166
)
165167
return self._skills.AsyncSkills(self._api_client) # type: ignore[no-any-return]
166168

169+
@property
170+
@_common.experimental_warning(
171+
"The Vertex SDK GenAI async rag module is experimental, "
172+
"and may change in future versions."
173+
)
174+
def rag(self) -> "rag_module.AsyncRag":
175+
if self._rag is None:
176+
self._rag = importlib.import_module(
177+
".rag",
178+
__package__,
179+
)
180+
return self._rag.AsyncRag(self._api_client) # type: ignore[no-any-return]
181+
167182
async def aclose(self) -> None:
168183
"""Closes the async client explicitly.
169184
@@ -268,6 +283,7 @@ def __init__(
268283
self._prompts: Optional[ModuleType] = None
269284
self._datasets: Optional[ModuleType] = None
270285
self._skills: Optional[ModuleType] = None
286+
self._rag: Optional[ModuleType] = None
271287

272288
@property
273289
def evals(self) -> "evals_module.Evals":
@@ -373,3 +389,16 @@ def skills(self) -> "skills_module.Skills":
373389
__package__,
374390
)
375391
return self._skills.Skills(self._api_client) # type: ignore[no-any-return]
392+
393+
@property
394+
@_common.experimental_warning(
395+
"The Vertex SDK GenAI rag module is experimental, "
396+
"and may change in future versions."
397+
)
398+
def rag(self) -> "rag_module.Rag":
399+
if self._rag is None:
400+
self._rag = importlib.import_module(
401+
".rag",
402+
__package__,
403+
)
404+
return self._rag.Rag(self._api_client) # type: ignore[no-any-return]

0 commit comments

Comments
 (0)