googleapis / googleapis/python-aiplatform

rag.get_corpus() does not return corpus state or creation/update timestamps in RAG Engine

Abierto
#6,168 0 comentarios 0 reacciones 0 asignados Ver en GitHub
api: vertex-ai
Lenguaje dominante
Python
Estrellas
905
Forks
465
Merge medio
1 d 13 h
PR fusionados (30 d)
44

Descripción

#### Description:
The rag.get_corpus() method works at runtime, but it does not return fields such as corpus_status.state, create_time, and update_time. These fields are present when using rag.list_corpora() for the same corpus.

As a result, fetching a single corpus requires listing all corpora and filtering manually, which is inefficient and inconsistent.

If you are still having issues, please be sure to include as much information as possible:

#### Environment details
google-cloud-aiplatform version: 1.121.0
Vertex AI RAG Engine (GA)
Python version: 3.13

#### Steps to reproduce

from vertexai import rag

corpus_id = "my-corpus-id"
corpus_name = f"projects/{PROJECT_ID}/locations/{LOCATION}/ragCorpora/{corpus_id}"

corpus = rag.get_corpus(name=corpus_name)

# Raises Attribute error
print(corpus.corpus_status)
print(corpus.create_time)
print(corpus.update_time)

#### Code example (Workaround)

all_corpora = rag.list_corpora()
target_corpus = next(c for c in all_corpora if c.name.endswith(corpus_id))

print(target_corpus.corpus_status.state)
print(target_corpus.create_time)
print(target_corpus.update_time)

#### Stack trace

Traceback (most recent call last):
File "xx/xx/rag_tools.py", line 628, in
print(corpus.corpus_status)
^^^^^^^^^^^^^^^^^^^^
AttributeError: 'RagCorpus' object has no attribute 'corpus_status'

print(corpus.create_time)
^^^^^^^^^^^^^^^^^^
AttributeError: 'RagCorpus' object has no attribute 'create_time'

print(corpus.update_time)
^^^^^^^^^^^^^^^^^^
AttributeError: 'RagCorpus' object has no attribute 'update_time'

#### Expected Behavior

get_corpus() should return the following fields for a single corpus:

corpus_status.state
create_time
update_time

This would make get_corpus() consistent with list_corpora() and eliminate the need to list all corpora just to fetch one.

#### Actual Behavior

get_corpus() returns a corpus object, but the above fields are missing.
Only workaround: list all corpora and filter, which is inefficient if there are many corpora.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.