chromium/components/segmentation_platform/README.md

# Segmentation Platform

## Introduction
The segmentation platform is a platform that uses intelligence and machine learning to guide developers for building purpose-built user experience for specific segments of users.


Segmentation Platform is a layered component
(https://sites.google.com/a/chromium.org/dev/developers/design-documents/layered-components-design)
to enable it to be easily used on all platforms.

## Code structure

[components/segmentation_platform/public](.)
Public interfaces and data structure.

[components/segmentation_platform/internal](./internal)
Internal implementations.

[chrome/browser/segmentation_platform](../../chrome/browser/segmentation_platform)
Includes factories to instantiate the service.

`SegmentationPlatformService` - Public interface for segmentation platform service.

## Test models

[components/test/data/segmentation_platform](../test/data/segmentation_platform)
contains ML models used for testing.

*   `adder.tflite`: Takes two floats as input in a single tensor. Outputs a
    single tensor with a single element which is the sum of the two floats given
    as input.

## Testing

To run all the relevant C++ unit tests, you can run the `components_unittests`
target and give the `segmentation_platform` filter file as an argument:

```
./out/Default/components_unittests --test-launcher-filter-file=components/segmentation_platform/components_unittests.filter
```

To update the list of tests, you can run the following command:
```
components/segmentation_platform/tools/testing/launcher_filter_file.py
```