Overview of Universal Data Tool
master.udt.json and .udt.csv data standards. The tool is used for building datasets for machine learning through tasks like image segmentation, text classification, and audio transcription.repository·master·Indexed 24 days ago
https://github.com/universaldatatool/universal-data-toolA versatile web and desktop application for annotating and editing diverse datasets, including images, text, audio, and video, to facilitate machine learning workflows. It supports standardized .udt.json and .udt.csv formats and features an extensible plugin system for custom data imports, transformations, labeling, and authentication. The tool can be deployed via Docker, Singularity, or as a native desktop application for Windows, Mac, and Linux.
.udt.json and .udt.csv data standards. The tool is used for building datasets for machine learning through tasks like image segmentation, text classification, and audio transcription.To implement custom labeling or new data types, a plugin must integrate with several parts of the UI:
Setup > Data Types.Setup > Configure.Label page.When contributing to the project, follow these guidelines for managing tests:
*.spec.js file. Note that a maintainer may request a replacement test in some cases.Universal Data Tool automatically scans npm for community plugins. To ensure your plugin is automatically discovered and made available under the "Community Plugins" section in the appropriate UI locations, name your npm package with the udt- prefix.
Example: udt-transform-delete-samples
To change the currently active dataset manager in your application, use the useActiveDatasetManager hook. This hook provides the activeDatasetManager state and a setActiveDatasetManager setter function. You can trigger a change by passing a new instance of your DatasetManager to the setter.
const SomeComponent = () => {
const [
activeDatasetManager,
setActiveDatasetManager,
] = useActiveDatasetManager()
return (
<button onClick={() => setActiveDatasetManager(new MyDatasetManager())}>
Change to my dataset manager
</button>
)
}You can run the Universal Data Tool locally using Docker by mapping port 3000. This is useful for self-hosting or testing the environment.
docker run -p 3000:3000 universaldatatool/universaldatatoolTo run the web application from source on your local machine, clone the repository and use npm to install dependencies and start the server.
npm install
npm run startSamples > Transform menu in the Universal Data Tool, allowing users to apply custom logic to transform their samples.Samples > Import menu in the Universal Data Tool. This allows users to specify and manage custom data sources during the import process.To execute the integration test suite, ensure that the Universal Data Tool is actively running at http://localhost:6001. Once the application is running, execute the tests from the top-level directory using either yarn or npm.
yarn test:integration
# or
npm run test:integration