googleapis / googleapis/python-aiplatform

Add date/time filtering capability to Vertex AI Experiment.get_data_frame API to prevent 503 errors with large runs

Open
#5,298 0 comments 1 reaction 0 assignees View on GitHub
api: vertex-ai
Dominant language
Python
Stars
905
Forks
465
Avg merge
1d 13h
Merged PRs (30d)
44

Description

# Problem
When attempting to use Experiment.get_data_frame() with projects containing numerous runs, the API consistently returns 503 "Service Unavailable" errors. This appears to happen because the API attempts to fetch all experiment runs at once, which can overload the service when dealing with large datasets.

# Current behavior
``` python
experiment = aiplatform.Experiment(experiment_name="specific-experiment-name")
df_experiment = experiment.get_data_frame(include_time_series=False)
```
This call fails with 503 errors when the experiment contains too many runs.

# Proposed solution
Add date/time filtering parameters to the get_data_frame() method to limit the number of runs being processed:
``` python
df_run = run.get_data_frame(
include_time_series=False,
start_time="2023-01-01T00:00:00Z",
end_time="2023-01-31T23:59:59Z"
)
```
This would allow users to retrieve manageable chunks of experiment data by time period, preventing service overload and improving reliability when working with large experiments.

# Additional benefits
- Improved performance for large experiments
- Better user experience by avoiding timeout errors
- More control over data retrieval for analysis purposes
- Reduced load on backend services

Contributor guide

Open the contributing guide

Research direction

Start at the Vertex AI Experiment.get_data_frame() entry point and trace how experiment runs are retrieved. Compare the proposed start_time and end_time arguments with the current example, which also refers to run.get_data_frame(). Done means callers can limit retrieval to a date/time range and large experiments avoid the reported 503 failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
google-cloud, python
Domain
api, cloud, machine-learning
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.