@tensorboard.command()<EOL>@click.option('<STR_LIT>', '<STR_LIT>', multiple=True, type=click.Path(exists=True),<EOL>help='<STR_LIT>')<EOL>@click.pass_context<EOL>@clean_outputs<EOL>def start(ctx, file):  
specification = None<EOL>job_config = None<EOL>if file:<EOL><INDENT>specification = check_polyaxonfile(file, log=False).specification<EOL><DEDENT>if specification:<EOL><INDENT>check_polyaxonfile_kind(specification=specification, kind=specification._TENSORBOARD)<EOL>job_config = specification.parsed_data<EOL><DEDENT>user, project_name = get_project_or_local(ctx.obj.get('<STR_LIT>'))<EOL>group = ctx.obj.get('<STR_LIT>')<EOL>experiment = ctx.obj.get('<STR_LIT>')<EOL>if experiment:<EOL><INDENT>try:<EOL><INDENT>response = PolyaxonClient().experiment.start_tensorboard(<EOL>username=user,<EOL>project_name=project_name,<EOL>experiment_id=experiment,<EOL>job_config=job_config)<EOL>obj = '<STR_LIT>'.format(experiment)<EOL><DEDENT>except (PolyaxonHTTPError, PolyaxonShouldExitError, PolyaxonClientException) as e:<EOL><INDENT>Printer.print_error('<STR_LIT>'.format(experiment))<EOL>Printer.print_error('<STR_LIT>'.format(e))<EOL>sys.exit(<NUM_LIT:1>)<EOL><DEDENT><DEDENT>elif group:<EOL><INDENT>try:<EOL><INDENT>response = PolyaxonClient().experiment_group.start_tensorboard(<EOL>username=user,<EOL>project_name=project_name,<EOL>group_id=group,<EOL>job_config=job_config)<EOL>obj = '<STR_LIT>'.format(group)<EOL><DEDENT>except (PolyaxonHTTPError, PolyaxonShouldExitError, PolyaxonClientException) as e:<EOL><INDENT>Printer.print_error('<STR_LIT>'.format(group))<EOL>Printer.print_error('<STR_LIT>'.format(e))<EOL>sys.exit(<NUM_LIT:1>)<EOL><DEDENT><DEDENT>else:<EOL><INDENT>try:<EOL><INDENT>response = PolyaxonClient().project.start_tensorboard(<EOL>username=user,<EOL>project_name=project_name,<EOL>job_config=job_config)<EOL>obj = '<STR_LIT>'.format(project_name)<EOL><DEDENT>except (PolyaxonHTTPError, PolyaxonShouldExitError, PolyaxonClientException) as e:<EOL><INDENT>Printer.print_error('<STR_LIT>'.format(project_name))<EOL>Printer.print_error('<STR_LIT>'.format(e))<EOL>sys.exit(<NUM_LIT:1>)<EOL><DEDENT><DEDENT>if response.status_code == <NUM_LIT:200>:<EOL><INDENT>Printer.print_header("<STR_LIT>".format(obj))<EOL>click.echo(get_tensorboard_url(user=user,<EOL>project_name=project_name,<EOL>experiment=experiment,<EOL>group=group))<EOL>sys.exit(<NUM_LIT:0>)<EOL><DEDENT>if response.status_code != <NUM_LIT>:<EOL><INDENT>Printer.print_error('<STR_LIT>')<EOL>sys.exit(<NUM_LIT:1>)<EOL><DEDENT>Printer.print_success('<STR_LIT>'.format(obj))<EOL>clint.textui.puts("<STR_LIT>")<EOL>clint.textui.puts("<STR_LIT>")<EOL>with clint.textui.indent(<NUM_LIT:4>):<EOL><INDENT>clint.textui.puts(get_tensorboard_url(user, project_name, experiment, group))<EOL><DEDENT>
Start a tensorboard deployment for project/experiment/experiment group.

    Project tensorboard will aggregate all experiments under the project.

    Experiment group tensorboard will aggregate all experiments under the group.

    Experiment tensorboard will show all metrics for an experiment.

    Uses [Caching](/references/polyaxon-cli/#caching)

    Example: using the default tensorflow image 1.4.1.

    \b
    ```bash
    $ polyaxon tensorboard start
    ```

    Example: with custom image and resources

    \b
    ```bash
    $ polyaxon tensorboard start -f file -f file_override ...
    ```

    Example: starting a tensorboard for an experiment group

    \b
    ```bash
    $ polyaxon tensorboard -g 1 start -f file
    ```

    Example: starting a tensorboard for an experiment

    \b
    ```bash
    $ polyaxon tensorboard -xp 112 start -f file
    ```