File size: 1,427 Bytes
4f5540c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import argparse
from build_gradio_graph import initialize_config, call_predict, create_gradio_interface


if __name__ == "__main__":
    parser = argparse.ArgumentParser(description="App parameters")
    parser.add_argument(
        "-c",
        "--config_path",
        type=str,
        help="The path to the app config file",
        default="config_prediction_polymers.yaml",
        required=False,
    )

    args = parser.parse_args()

    print(f"Loading config from file {args.config_path}")

    # Get the configuration parameters
    config, input_cols_order, target_columns, numerical_columns, osium_theme, css_styling, example_inputs = initialize_config(
        args.config_path
    )
    print("Config initilized successfully")

    # Create the predict function
    predict_fn = call_predict(config["inference"], input_cols_order, numerical_columns, target_columns)
    print("Predict function successfully created")

    demo = create_gradio_interface(
        config["input_order"],
        config["input_mapping"],
        config["output_order"],
        config["output_mapping"],
        example_inputs,
        config["interface_parameters"]["additional_markdown"],
        config["interface_parameters"]["size"],
        osium_theme,
        css_styling,
        predict_fn,
        inverse_design=config["inference"]["inverse_design"],
    )
    demo.launch(server_port=config["webapp"]["server_port"])