diff --git a/src/xai_sdk/aio/video.py b/src/xai_sdk/aio/video.py index 3d66338..9086a29 100644 --- a/src/xai_sdk/aio/video.py +++ b/src/xai_sdk/aio/video.py @@ -8,6 +8,8 @@ from ..proto import deferred_pb2, video_pb2 from ..telemetry import get_tracer from ..video import ( + DEFAULT_VIDEO_POLL_INTERVAL, + DEFAULT_VIDEO_TIMEOUT, BaseClient, VideoAspectRatio, VideoResolution, @@ -74,7 +76,7 @@ async def generate( This wraps `GenerateVideo` + repeated `GetDeferredVideo` calls until the request is complete. """ - timer = PollTimer(timeout, interval) + timer = PollTimer(timeout or DEFAULT_VIDEO_TIMEOUT, interval or DEFAULT_VIDEO_POLL_INTERVAL) request_pb = _make_generate_request( prompt, model, diff --git a/src/xai_sdk/poll_timer.py b/src/xai_sdk/poll_timer.py index 4b0e3ff..351205a 100644 --- a/src/xai_sdk/poll_timer.py +++ b/src/xai_sdk/poll_timer.py @@ -21,7 +21,7 @@ def __init__( """ self._start = time.time() self._timeout = timeout or datetime.timedelta(minutes=10) - self._interval = interval or datetime.timedelta(milliseconds=100) + self._interval = interval or datetime.timedelta(seconds=1) def sleep_interval_or_raise(self) -> float: """Returns the time to sleep until the next poll. diff --git a/src/xai_sdk/sync/video.py b/src/xai_sdk/sync/video.py index 4999311..8f3559b 100644 --- a/src/xai_sdk/sync/video.py +++ b/src/xai_sdk/sync/video.py @@ -8,6 +8,8 @@ from ..proto import deferred_pb2, video_pb2 from ..telemetry import get_tracer from ..video import ( + DEFAULT_VIDEO_POLL_INTERVAL, + DEFAULT_VIDEO_TIMEOUT, BaseClient, VideoAspectRatio, VideoResolution, @@ -74,7 +76,7 @@ def generate( This wraps `GenerateVideo` + repeated `GetDeferredVideo` calls until the request is complete. """ - timer = PollTimer(timeout, interval) + timer = PollTimer(timeout or DEFAULT_VIDEO_TIMEOUT, interval or DEFAULT_VIDEO_POLL_INTERVAL) request_pb = _make_generate_request( prompt, model, diff --git a/src/xai_sdk/video.py b/src/xai_sdk/video.py index 2bc3085..fdeb79c 100644 --- a/src/xai_sdk/video.py +++ b/src/xai_sdk/video.py @@ -1,3 +1,4 @@ +import datetime from typing import Any, Optional, Union import grpc @@ -7,6 +8,9 @@ from .telemetry import should_disable_sensitive_attributes from .types.video import VideoAspectRatio, VideoAspectRatioMap, VideoResolution, VideoResolutionMap +DEFAULT_VIDEO_POLL_INTERVAL = datetime.timedelta(seconds=1) +DEFAULT_VIDEO_TIMEOUT = datetime.timedelta(minutes=10) + class BaseClient: """Base Client for interacting with the `Video` API."""