Package: aitomatic
WebModel Library User ManualThe WebModel library is a tool for building, tuning, and inference of models that are built with the Aitomatic system. The target users of this library are AI Engineers who use the Aitomatic system.RequirementsPython 3.9 or higherrequestslibrarypandaslibrarynumpylibrarytqdmlibraryInstallationThe WebModel library can be installed using pip:pipinstall'aitomatic>=1.2.0'--index-urlhttps://test.pypi.org/simple/--extra-index-urlhttps://pypi.org/simpleQuick StartTo get started, you can create a WebModel object by passing in the model name and API token:fromaitomatic.api.web_modelimportWebModel# load modelAPI_ACCESS_TOKEN='<API_ACCESS_TOKEN>'project_name="<project name>"model_name="<model name>"model=WebModel(api_token=API_ACCESS_TOKEN,project_name=project_name,model_name=model_name)model.load()# view model training statistics and infoprint(model.stats)# run model inferencedata={'X':my_dataframe}response=model.predict({'X':data})print(response['predictions'])MethodsTheWebModelclass provides several methods for working with the model:Constructormodel_names=WebModel.get_model_names(api_token="YOUR_API_TOKEN",project_name="MyProject")Load modelloadset up the model ready by loading all parameter from Aitomatic model repo.model.load()Returnthe model with loaded paramsPredictThepredictmethod takes a dictionary as input with the data you want to make predictions on. The input data should be a pandas DataFrame, Series, or numpy array with the key "X". The method returns a dictionary with the predictions, with the key "predictions".response=model.predict(input_data={'X':df})input_data: input data for prediction, dictionary with data under key 'X'Return: result of the prediction call in a dictionary where the actual result is underpredictionkeyTuningtune_modelis a statis method to generate multiple versions of a given model with the set of input paramstune_model(project_name=PROJECT_NAME,base_model=BASE_MODEL_NAME,conclusion_tuning_range=conclusion_threshold_ranges,ml_tuning_params=ML_MODELS_PARAMS,output_model_df_path='tuning.parquet',wait_for_tuning_to_complete=True,prefix="[HUNG7]",)project_name: A string containing the name of the Aitomatic project to use.base_model:A string containing the name of the base model to use.conclusion_tuning_range: A dictionary specifying the range of values to use for the final layer of the tuned model.ml_tuning_params: A dictionary specifying the AutoML tuning parameters to use.output_model_df_path: A string specifying the path to save the resulting DataFrame
containing the tuned model's hyperparameters and performance.wait_for_tuning_to_complete: A boolean specifying whether to wait for the tuning process
to complete before returning. Default is True.prefix: A string containing a prefix to add to the name of the new model. Default is "finetune".ReturnA Pandas DataFrame containing the hyperparameters and performance of the tuned model.Log model metricslog_metricsis to save the model metric after evaluationmodel.log_metrics("accuracy",0.95)Get models in projectstaticmodel_names=WebModel.get_model_names(api_token="YOUR_API_TOKEN",project_name="MyProject")Theapi_tokenA string containing the access token for the Aitomatic API. If not provided, the AITOMATIC_API_TOKEN environment variable will be used.Theproject_nameA string containing the name of the Aitomatic project to use. If not provided, the AITOMATIC_PROJECT_ID environment variable will be used.Returna list of the names of all models in the specified project.