Working in projects

A project is a collaborative workspace where you work with data and other assets to accomplish a particular goal.

By default, your sandbox project is created automatically when you sign up for watsonx.ai.

Projects are shared across each of the experiences that you can access. See Shared projects across experiences.

You can view projects that you create and collaborate in by selecting Projects > View all projects in the navigation menu, or by viewing the Projects section on the main page.

Your project can include many types of resources.

Collaborators

Collaborators are the people who you work with in your project.

As a project creator, you can add other collaborators and assign them roles that control which actions they can take. You automatically have the Admin role in the project, and if you give other collaborators the Admin role, they can add collaborators too. See Collaboration.

Assets are locked during editing to prevent conflicts between changes made by different collaborators.

All collaborators work with the same copy of each asset. Only one collaborator can edit an asset at a time. While a collaborator is editing an asset in a tool, that asset is locked. Other collaborators can view a locked asset, but not edit it. See Managing assets.

Data assets

Data assets are what you work with. Data assets often consist of raw data that you work with to refine.

You can add these types of data assets to projects:

  • Data assets from files
  • Sample datasets from the Resource hub
  • Connections to cloud and on-premises data sources
  • Connected data assets from an existing connection asset that provide read-only access to a table or file in an external data source
  • Folder data assets to view the files within a folder in a file system

See Adding data to a project.

Tools and their associated assets

Tools and their associated assets are how you work with data.

When you run a tool, you create an asset that contains the information for a specific goal. For example, you can create flow assets that define operations to run on data with multiple tools. Each tool has one or more types of associated assets that run in the tool.

For a mapping of assets to the tools that you use to create them, see Asset types and properties.

The tools that you can use in a project depend on the services that you have.

Environments

Environments are how you configure compute resources for running assets in tools. An environment template specifies hardware and software resources to instantiate the environment runtimes that run your assets in tools.

Some tools have an automatically selected environment template. However, for other tools, you can choose between multiple environments. When you create an asset in a tool, you assign an environment to it. You can change the environment for an asset when you run it.

Default environment templates can vary by coding language, tool, and compute engine type. You can also create custom environment templates or add services that provide environment templates.

The compute resources that you consume in a project are tracked. Depending on your offering plan, you have a limit to your monthly compute resources or you pay for all compute resources.

See Environments.

Jobs

Jobs are how you manage and schedule the running of assets in tools.

A job is a single run of an asset in a tool with a specified environment runtime. You can schedule one or repeating jobs, monitor, edit, stop, or cancel jobs. See Jobs.

Project storage

Project storage is where project information and files are stored.

Each project has a dedicated, secure storage that contains:

  • Files that you upload to the project as data assets
  • Data assets from files that you copy from another workspace
  • Files that you save to the project with a tool
  • Files for some assets that run in tools, such as notebooks
  • The project readme file and internal project files
  • Project documentation

See Object storage.

When you delete a project, the files that are associated with the project are also deleted.

Additional services

You can associate more services with a project to add tools, compute environments, or other functionality. See Adding associated services.

Integrations

Integrations are how you incorporate external tools in the project.

You can integrate with a Git repository to publish notebooks.

Project documentation

While you create a project, you can add a short description to document the purpose or goal of the project. You can edit the description later, on the project's Manage page.

The Overview page of a project contains a Documentation editor where you can document the whole lifecycle of your project. You can create and edit documents directly in the editor by using standard Markdown formatting. To set the document that you are editing as the readme file, click the Overflow menu and select Set as Readme. Collaborators with the Admin or Editor role can edit the readme file.

Project configurations

You can mark the project as sensitive when you create the project. When users open a project that is marked as sensitive, a notification is displayed stating that no data assets can be downloaded or exported from the project. You can't change this setting after you create the project.

You can set the following controls at any time on the Manage page in a project:

  • Folders to organize assets.
  • Allow reporting on metadata.

Notifications

You can view recent asset activity in the Assets pane on the Overview page. You can also filter the assets to list assets that you edited or assets that all collaborators edited.

All collaborators in a project are notified when a collaborator changes an asset.

Assets from other workspaces

You can add assets to a project from other workspaces. Not all workspaces are available in all experiences.

The Resource hub includes many samples, including sample projects that you can create, datasets, and other assets.

A deployment space is where you deploy finished assets. You can move assets from a project to a deployment space when you are ready to deploy them.

A catalog is a central repository for assets where you can easily find and share data and other assets. You can copy assets from the catalog into a project to use them. You can create assets in a project and then publish them into the catalog.

Learn more