37
37
from google .cloud .aiplatform_v1beta1 .services .vertex_rag_data_service .pagers import (
38
38
ListRagCorporaPager ,
39
39
ListRagFilesPager ,
40
-
41
40
)
42
41
from vertexai .preview .rag .utils import (
43
42
_gapic_utils ,
@@ -100,10 +99,12 @@ def get_corpus(name: str) -> RagCorpus:
100
99
Args:
101
100
name: An existing RagCorpus resource name. Format:
102
101
``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
102
+ or ``{rag_corpus}``.
103
103
Returns:
104
104
RagCorpus.
105
105
"""
106
- request = GetRagCorpusRequest (name = name )
106
+ corpus_name = _gapic_utils .get_corpus_name (name )
107
+ request = GetRagCorpusRequest (name = corpus_name )
107
108
client = _gapic_utils .create_rag_data_service_client ()
108
109
try :
109
110
response = client .get_rag_corpus (request = request )
@@ -163,8 +164,10 @@ def delete_corpus(name: str) -> None:
163
164
Args:
164
165
name: An existing RagCorpus resource name. Format:
165
166
``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
167
+ or ``{rag_corpus}``.
166
168
"""
167
- request = DeleteRagCorpusRequest (name = name )
169
+ corpus_name = _gapic_utils .get_corpus_name (name )
170
+ request = DeleteRagCorpusRequest (name = corpus_name )
168
171
169
172
client = _gapic_utils .create_rag_data_service_client ()
170
173
try :
@@ -200,7 +203,8 @@ def upload_file(
200
203
201
204
Args:
202
205
corpus_name: The name of the RagCorpus resource into which to upload the file.
203
- Format: ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
206
+ Format: ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
207
+ or ``{rag_corpus}``.
204
208
path: A local file path. For example,
205
209
"usr/home/my_file.txt".
206
210
display_name: The display name of the data file.
@@ -212,6 +216,7 @@ def upload_file(
212
216
ValueError: RagCorpus is not found.
213
217
RuntimeError: Failed in indexing the RagFile.
214
218
"""
219
+ corpus_name = _gapic_utils .get_corpus_name (corpus_name )
215
220
location = initializer .global_config .location
216
221
# GAPIC doesn't expose a path (scotty). Use requests API instead
217
222
if display_name is None :
@@ -286,6 +291,7 @@ def import_files(
286
291
Args:
287
292
corpus_name: The name of the RagCorpus resource into which to import files.
288
293
Format: ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
294
+ or ``{rag_corpus}``.
289
295
paths: A list of uris. Elligible uris will be Google Cloud Storage
290
296
directory ("gs://my-bucket/my_dir") or a Google Drive url for file
291
297
(https://drive.google.com/file/... or folder
@@ -296,7 +302,7 @@ def import_files(
296
302
Returns:
297
303
ImportRagFilesResponse.
298
304
"""
299
-
305
+ corpus_name = _gapic_utils . get_corpus_name ( corpus_name )
300
306
request = _gapic_utils .prepare_import_files_request (
301
307
corpus_name = corpus_name ,
302
308
paths = paths ,
@@ -347,6 +353,7 @@ async def import_files_async(
347
353
Args:
348
354
corpus_name: The name of the RagCorpus resource into which to import files.
349
355
Format: ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
356
+ or ``{rag_corpus}``.
350
357
paths: A list of uris. Elligible uris will be Google Cloud Storage
351
358
directory ("gs://my-bucket/my_dir") or a Google Drive url for file
352
359
(https://drive.google.com/file/... or folder
@@ -356,7 +363,7 @@ async def import_files_async(
356
363
Returns:
357
364
operation_async.AsyncOperation.
358
365
"""
359
-
366
+ corpus_name = _gapic_utils . get_corpus_name ( corpus_name )
360
367
request = _gapic_utils .prepare_import_files_request (
361
368
corpus_name = corpus_name ,
362
369
paths = paths ,
@@ -371,16 +378,24 @@ async def import_files_async(
371
378
return response
372
379
373
380
374
- def get_file (name : str ) -> RagFile :
381
+ def get_file (name : str , corpus_name : Optional [ str ] = None ) -> RagFile :
375
382
"""
376
383
Get an existing RagFile.
377
384
378
385
Args:
379
- name: A RagFile resource name. Format:
380
- ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}/ragFiles/{rag_file}``
386
+ name: Either a full RagFile resource name must be provided, or a RagCorpus
387
+ name and a RagFile name must be provided. Format:
388
+ ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}/ragFiles/{rag_file}``
389
+ or ``{rag_file}``.
390
+ corpus_name: If `name` is not a full resource name, an existing RagCorpus
391
+ name must be provided. Format:
392
+ ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
393
+ or ``{rag_corpus}``.
381
394
Returns:
382
395
RagFile.
383
396
"""
397
+ corpus_name = _gapic_utils .get_corpus_name (corpus_name )
398
+ name = _gapic_utils .get_file_name (name , corpus_name )
384
399
request = GetRagFileRequest (name = name )
385
400
client = _gapic_utils .create_rag_data_service_client ()
386
401
try :
@@ -423,13 +438,15 @@ def list_files(
423
438
424
439
Args:
425
440
corpus_name: An existing RagCorpus name. Format:
426
- ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
441
+ ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
442
+ or ``{rag_corpus}``.
427
443
page_size: The standard list page size. Leaving out the page_size
428
444
causes all of the results to be returned.
429
445
page_token: The standard list page token.
430
446
Returns:
431
447
ListRagFilesPager.
432
448
"""
449
+ corpus_name = _gapic_utils .get_corpus_name (corpus_name )
433
450
request = ListRagFilesRequest (
434
451
parent = corpus_name ,
435
452
page_size = page_size ,
@@ -444,14 +461,22 @@ def list_files(
444
461
return pager
445
462
446
463
447
- def delete_file (name : str ) -> None :
464
+ def delete_file (name : str , corpus_name : Optional [ str ] = None ) -> None :
448
465
"""
449
466
Delete RagFile from an existing RagCorpus.
450
467
451
468
Args:
452
- name: A RagFile resource name. Format:
469
+ name: Either a full RagFile resource name must be provided, or a RagCorpus
470
+ name and a RagFile name must be provided. Format:
453
471
``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}/ragFiles/{rag_file}``
472
+ or ``{rag_file}``.
473
+ corpus_name: If `name` is not a full resource name, an existing RagCorpus
474
+ name must be provided. Format:
475
+ ``projects/{project}/locations/{location}/ragCorpora/{rag_corpus}``
476
+ or ``{rag_corpus}``.
454
477
"""
478
+ corpus_name = _gapic_utils .get_corpus_name (corpus_name )
479
+ name = _gapic_utils .get_file_name (name , corpus_name )
455
480
request = DeleteRagFileRequest (name = name )
456
481
457
482
client = _gapic_utils .create_rag_data_service_client ()
0 commit comments