Skip to content
Closed
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion src/google/adk/cli/adk_web_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -494,6 +494,7 @@ def __init__(
logo_text: Optional[str] = None,
logo_image_url: Optional[str] = None,
url_prefix: Optional[str] = None,
auto_create_session: bool = False,
):
self.agent_loader = agent_loader
self.session_service = session_service
Expand All @@ -511,6 +512,7 @@ def __init__(
self.current_app_name_ref: SharedValue[str] = SharedValue(value="")
self.runner_dict = {}
self.url_prefix = url_prefix
self.auto_create_session = auto_create_session

async def get_runner_async(self, app_name: str) -> Runner:
"""Returns the cached runner for the given app."""
Expand Down Expand Up @@ -560,6 +562,7 @@ def _create_runner(self, agentic_app: App) -> Runner:
session_service=self.session_service,
memory_service=self.memory_service,
credential_service=self.credential_service,
auto_create_session=self.auto_create_session,
)

def _instantiate_extra_plugins(self) -> list[BasePlugin]:
Expand Down Expand Up @@ -768,7 +771,9 @@ async def version() -> dict[str, str]:
return {
"version": __version__,
"language": "python",
"language_version": f"{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}",
"language_version": (
f"{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}"
),
}

@app.get("/list-apps")
Expand Down
10 changes: 10 additions & 0 deletions src/google/adk/cli/cli_tools_click.py
Original file line number Diff line number Diff line change
Expand Up @@ -1419,6 +1419,14 @@ async def _lifespan(app: FastAPI):
@fast_api_common_options()
@adk_services_options(default_use_local_storage=True)
@deprecated_adk_services_options()
@click.option(
"--auto_create_session",
is_flag=True,
default=False,
help=(
"Automatically create a session if it doesn't exist when calling /run."
),
)
def cli_api_server(
agents_dir: str,
eval_storage_uri: Optional[str] = None,
Expand All @@ -1439,6 +1447,7 @@ def cli_api_server(
a2a: bool = False,
reload_agents: bool = False,
extra_plugins: Optional[list[str]] = None,
auto_create_session: bool = False,
):
"""Starts a FastAPI server for agents.

Expand Down Expand Up @@ -1471,6 +1480,7 @@ def cli_api_server(
url_prefix=url_prefix,
reload_agents=reload_agents,
extra_plugins=extra_plugins,
auto_create_session=auto_create_session,
),
host=host,
port=port,
Expand Down
2 changes: 2 additions & 0 deletions src/google/adk/cli/fast_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ def get_fast_api_app(
extra_plugins: Optional[list[str]] = None,
logo_text: Optional[str] = None,
logo_image_url: Optional[str] = None,
auto_create_session: bool = False,
) -> FastAPI:

# Set up eval managers.
Expand Down Expand Up @@ -153,6 +154,7 @@ def get_fast_api_app(
logo_text=logo_text,
logo_image_url=logo_image_url,
url_prefix=url_prefix,
auto_create_session=auto_create_session,
)

# Callbacks & other optional args for when constructing the FastAPI instance
Expand Down
Loading