Skip to content
17 changes: 10 additions & 7 deletions src/google/adk/cli/fast_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@
from .utils.service_factory import create_artifact_service_from_options
from .utils.service_factory import create_memory_service_from_options
from .utils.service_factory import create_session_service_from_options
from ..memory.base_memory_service import BaseMemoryService

logger = logging.getLogger("google_adk." + __name__)

Expand Down Expand Up @@ -76,6 +77,7 @@ def get_fast_api_app(
session_db_kwargs: Optional[Mapping[str, Any]] = None,
artifact_service_uri: Optional[str] = None,
memory_service_uri: Optional[str] = None,
memory_service: Optional[BaseMemoryService] = None,
use_local_storage: bool = True,
eval_storage_uri: Optional[str] = None,
allow_origins: Optional[list[str]] = None,
Expand Down Expand Up @@ -110,13 +112,14 @@ def get_fast_api_app(
load_services_module(agents_dir)

# Build the Memory service
try:
memory_service = create_memory_service_from_options(
base_dir=agents_dir,
memory_service_uri=memory_service_uri,
)
except ValueError as exc:
raise click.ClickException(str(exc)) from exc
if memory_service is None:
try:
memory_service = create_memory_service_from_options(
base_dir=agents_dir,
memory_service_uri=memory_service_uri,
)
except ValueError as exc:
raise click.ClickException(str(exc)) from exc

# Build the Session service
session_service = create_session_service_from_options(
Expand Down