Spaces:
Sleeping
Sleeping
| """ | |
| Demo script showing different ways to use the LMM-Vibes Gradio visualization. | |
| This demonstrates the Python API for launching the Gradio app. | |
| """ | |
| import argparse | |
| from pathlib import Path | |
| from lmmvibes.vis_gradio import launch_app, create_app | |
| def demo_basic_launch(): | |
| """Demo: Basic launch without pre-loading data.""" | |
| print("π Demo: Basic launch - data can be loaded through the UI") | |
| launch_app() | |
| def demo_preload_data(results_dir: str): | |
| """Demo: Launch with pre-loaded data.""" | |
| print(f"π Demo: Launch with pre-loaded data from {results_dir}") | |
| launch_app(results_dir=results_dir) | |
| def demo_custom_settings(results_dir: str = None): | |
| """Demo: Launch with custom settings.""" | |
| print("π Demo: Launch with custom settings") | |
| launch_app( | |
| results_dir=results_dir, | |
| share=True, # Create public shareable link | |
| server_name="0.0.0.0", # Allow access from other machines | |
| server_port=8080, # Custom port | |
| ) | |
| def demo_programmatic_access(): | |
| """Demo: Create app object for programmatic access.""" | |
| print("π Demo: Programmatic app creation") | |
| # Create the app object without launching | |
| app = create_app() | |
| # You could modify the app here if needed | |
| # app.title = "My Custom Title" | |
| # Launch when ready | |
| print("Launching app...") | |
| app.launch(share=False, server_port=7861) | |
| def main(): | |
| parser = argparse.ArgumentParser(description="LMM-Vibes Gradio Visualization Demo") | |
| parser.add_argument("--results_dir", help="Path to results directory for demos") | |
| parser.add_argument("--demo", choices=[ | |
| "basic", "preload", "custom", "programmatic" | |
| ], default="basic", help="Which demo to run") | |
| args = parser.parse_args() | |
| if args.demo == "basic": | |
| demo_basic_launch() | |
| elif args.demo == "preload": | |
| if not args.results_dir: | |
| print("β Error: --results_dir required for preload demo") | |
| return | |
| demo_preload_data(args.results_dir) | |
| elif args.demo == "custom": | |
| demo_custom_settings(args.results_dir) | |
| elif args.demo == "programmatic": | |
| demo_programmatic_access() | |
| if __name__ == "__main__": | |
| main() |