| # 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 |
| ``` |