Goal: never write an alt text again

Hi

I want to discus the best solution for the goal of “never write an alt text again”.

For now I made a solution combining Umbraco.automate, Umbraco.AI and a custom “GetMediaPropertyAction” for Umbraco.automate. Since umbraco.automate doesnt ship with a “getmediaproperty” similar to their “getcontentproperty” action?

For now I have configured an automation flow with the following steps:
Trigger: Media Saved
Step 1: Get media property (custom action)
Getting the property of the media → altText

Step 2: Conditional If statement → Is the the altText property empty?

Step 3: Run AI agent
Running a low cost agent (haiku) with the prompt:
Write concise, descriptive alt text in under 125 characters for the following image: ${ trigger.mediaKey } Return only result

Step 4: Update Media Property

Requirements:
Umbraco.AI

Umbraco.automate

Ideas for similar other automations:

Seo texts

Can anyone confirm that umbraco.automate doesn’t ship with a “GetMediaProperty” action?

Ah for starters.. but that’s just the minimum.. as the alt text needs to describe the purpose of the image in the context of the surrounding content (or indeed if it’s been cropped to change the intent). :exploding_head:

(also don’t forget images added via the rte, which already have a contextual alttext and caption you can use)

Five golden rules for compliant alt text | AbilityNet

Discord thread

or if not on discord
https://discord-chats.umbraco.com/t/33245649/alt-text-support-in-umbraco

and a pr from @MikeMasey for discussion…

:slight_smile:

I think alt-text should be in the core CMS, but it seems really hard to come up with a solution that works all the time. @mistyn8 says is correctly: an alt text should describe the image in context. So just slapping on an alt text on a media node doesn’t cut it.

I agree that it’s better than NO alt, but not by much. Media nodes are not culture variant, so you can’t have an alt text per language anyway.

So you would need to be able to set an alt at the media picker level I guess?

My point is, there is a reason there is no concensus yet, but don’t let that discourage you. I would love to see your solutions!

Annoyingly HQ keep reinventing the wheel.. and why there isn’t a getEntity, with a repository selection to match existing backoffice patterns.. or if not the same media actions as content I’m unsure?
(or for that matter bindings in Automate that are just ufm expressions :wink: )

but looks like it’s a simple task to take

and swap out IPublishedContentCache for IPublishedMediaCache ?

maybe contribute back into

or

:slight_smile:
the automate package space is becoming very fractured very quickly but shows what a good addition this is with the uptake! (might be nice to have an addon tag so that the marketplace can filter package addons?)

It seems that the “getmediaproperty” action was added to the development of automate 2 days ago: