Applications
  • 06 Aug 2024
  • Dark
    Light
  • PDF

Applications

  • Dark
    Light
  • PDF

Article summary

Overview

The Applications tab within Marketplace is a dedicated section designed to present users with a collection of function packages. These packages are curated sets of functionalities that users can directly install as services into their projects. These packages are pre-built and ready-to-use components that can extend the capabilities of projects on the platform.

Functions are now in Applications

The FaaS application created by users will be available now in the Applications tab. The FaaS Library in the Applications page is no longer supported.


Here’s a detailed explanation of this feature:

How to Use the Applications Tab

Browse and Explore: Users start by browsing the Applications tab to explore the available function packages. Detailed descriptions and documentation are provided to help users understand the capabilities and requirements of each package.

Select and Install: Once a suitable package is identified, users can select it and proceed with the installation process.

Integration and Use: After installation, the new service is integrated into the project, ready to be used as part of the workflow. Users can then utilize the added functionalities to achieve their project goals more effectively.

In the card view, the following details about each model are presented:

  • Application's Image
  • Application's Name
  • Application's Description
  • Application's Category (for example, Provider, Applications Type, etc.)
  • Last Updated Timestamp

Utilize the filter, search, and sort features to easily locate a specific Applications based on your requirements. Additionally, upon selecting an Application's card from the list, a detailed information panel will appear on the right side.

The following sections will help you understand the Application in detail.


Application's Search and Filters

The methods and criteria used to efficiently locate and select a specific Application from Marketplace Application' library of Dataloop platform.

Search an Application

Use the Search an Application field to type in the name and description of the Application to search it.

Filter Applications by Category

Marketplace allows you to filter applications using categories. In the left-side panel, search Applications using the following categories. Select one or more categories to refine the list of Applications according to your choice. To remove the filter, simply click on the selected filter category once more.

  • Provider: Organizations or companies that provide functions. For example, Dataloop, Google, Meta, AWS, etc.
  • Application Type: Types refer to the various forms of functions. For example, Studio, Model, Pipeline Node, Image, Text, Video, etc.
  • Libraries: The collections of pre-written code that developers and data scientists can use to build and implement artificial intelligence systems more efficiently. For example, Torch, TensorFlow, Timm, etc.

Filter by Installation Status

Marketplace allows you to filter applications based on their installation status.

To learn more, refer to the Filter by Installation Status.

Filter by Privacy Level

Marketplace offers a flexible filtering system that categorizes the Application according to their scope level, enhancing navigation and selection within the Dataloop platform.

To learn more, refer to the Filter by Privacy Level.

Search by Using Free Texts

Marketplace enables you to conduct searches for Applications using their display names and descriptions.


Actions Based on Installation Status and Usage Scope

You can perform actions that are available on each application based on the scope and installation status. To learn more, refer to the Actions's Availability Based on Use Cases section.


How to Create an Application?

  1. Open the Marketplace from the left-side menu.
  2. Click on the Actions > Create Application. The Create Application window is displayed.
  3. Make required updates in the following fields:
    1. Application Name: Provide a name for the new application.
    2. Codebase Type: You can upload the codebase by zip files as Item or providing git URL.
      1. item: By default, Item is displayed. Select the ZIP file of the Codebase.
      2. git: The Git URL is how you locate and clone a repository, while a Git tag is a reference to a specific point in that repository's history.
        1. git URL: Enter the Git URL.
        2. git tag: Enter the Git tag.
        3. Add Secret Credentials: This allows you to add a secret username and password for the Git codebase.
    3. Requirements: If your code requires additional python libraries to run, please upload a requirements.txt file specifying which python libraries need to be installed.
    4. Modules: Multiple functions may be defined in a single package under a module entity. This way, you will be able to use a single codebase for various services (applications). Make changes in the following fields:
      1. Modules Name: Define the module name (no limitations). By default, default_module is displayed.
      2. Entry Point: The main.py file you created should be defined as the module entry point. By default, main.py is displayed.
      3. Class Name: By default, ServiceRunner is displayed. Make changes, if required.
      4. INIT Inputs: Click on the Plus icon to add a new init input.
        1. Name: Enter a name for the input.
        2. Type: Select the type of the input from the list.
      5. Functions: Provide a Name and Description for the function. By default, run is displayed as a function name.
        1. Input: Click on the Plus icon to add new input. Enter the input name and select the type from the list. By default, item is displayed as the name and type of the input.
        2. Output: Click on the Plus icon to add new output. Enter the out name and select the type from the list. By default, item is displayed as the name and type of the output. Provide an action name, if required.
  4. Add default app configuration: Click App Config. The edit service configuration window is displayed. Make changes in the following fields:
    1. Machine Type: By default, regular-s is displayed. Select a new one from the list, if required.
    2. Create Autoscaler: It enables the automatic adjustment of computing resources based on the workload.
      1. Min Replicas: This refers to the minimum number of instances (or "replicas") of your function that will be running at any given time, by default, it is set to 0. Make changes, if required.
      2. Max Replicas: This is the maximum number of instances that your function can scale up to. By default, it is set to 1. Setting it to 1 means your function will have at most one instance running at any time. Make changes, if required.
      3. Queue Size: The number of events or requests waiting to be processed. By default, it is set to 100. Make changes, if required.
    3. SDK Version: By default, the latest SDK version is displayed. Click Update SDK Version to update the new version, if available.
    4. Module:
    5. Concurrency: By default, 10 is displayed.
    6. Execution Timeout: The default timeout of an execution is, 3600 (seconds).
    7. Drain Time: To ensure the completion of parallel running executions before terminating the pod, provide a Drain Time delay. After this designated period, the execution restarts. By default, 600s is displayed.
    8. On Reset Action: An "On Reset Action" setting is related to how the application should respond when a specific trigger or condition necessitates resetting the state or execution of a function. Select one of the following when you reset the execution. By default, failed is displayed.
      1. failed: When the action is set to Failed for a reset condition, it implies that if the function encounters an issue requiring a reset (such as an execution error or a timeout), the system will mark the execution as failed. This option is typically used when it's critical to acknowledge that an error occurred, and it needs to be notified of the failure. Choosing Failed is appropriate for workflows where failure requires manual intervention, or where it's important to maintain strict error reporting and auditing.
      2. rerun: Setting the action to Rerun means that if the function hits a reset condition, the system automatically attempts to execute the function again. This approach is useful for handling transient errors or temporary issues that might not persist in a subsequent execution attempt.
    9. Max Attempts: Maximum number of execution attempts allowed. By default, 3 is displayed.
    10. Bot: A bot is a dummy project user with 'Developer' role permissions used for running services. By default, the latest Bot is displayed. Select a new one from the list, if needed.
    11. Docker Image:
    12. Secrets and Integrations:
      1. Is service global:
      2. Preemptible:
      3. Run service execution as process:
    13. Init Params:
    14. Click Confirm.
    15. Click Create Application. A success message is displayed, and the new application will be available in the Applications tab of the Marketplace.

How to Install an Application?

  1. Open the Marketplace from the left-side menu.
  2. In the Applications tab, select the application that you want to install.
  3. Click Install from the right-side panel. An Install Application popup window is displayed, and it lists all the available functions specified in the package module with a description.
  4. Click Install Application. The function is installed and available in the CloudOps -> Services tab.

Once you install an Application, there is a green tick icon is visible on the applications that are installed.


How to Activate or Deactivate an Application?

Installing an application activates the application.

Once you install an Application to your project, the application becomes activated.

To learn the instructions, refer to the How to Activate or Deactivate an Application?.


For other actions, refer to the following:


What's Next