Not Safe for Work
Not safe for work #
What’s work appropriate? A long time ago, a company I worked for was pitching to another company, one ironically that I ended up working for years later. I was told they lost the pitch. It was a UK based company pitching to an American one, and they said something on a call that didn’t translate. The team doing the pitch came out and were talking about the faux pas they made. I explained it, as an American in the UK, that what they had said was kinda dumb and I’m not shocked it was taken poorly. They argued people were being overly sensitive. I left that job.
But I’ve thought about this as I’ve thought about what does not safe for work mean, in a global setting.
Recently a combo of legal and HR colleagues told me to do something about emojis on Slack - fix it or make them go away.
Not wanting to turn them off entirely and remove the little whimsy they provide, but not want to have to approve every single one by hand, I figured what else but AI?
It was in the end relatively simple. A slack app with socket mode to a GCP Cloud Run sending events for any emoji change events (added, updated), and with permissions to modify emojis and read event logs (more on that later).
The Cloud Run job is a small Python and Flask app, just a few scripts.
- Receive emoji event
- Get emoji image (or frame if a GIF)
- Pass emoji name and image to Claude on Vertex to evaluate
- If evaluation is inappropriate take a few actions
- Delete emoji
- Read from event logs who uploaded it, as the payload for emoji uploads doesn’t include that
- Record to a BigQuery table
- Message a channel with HR and IT that it’s been deleted, with image, name and reasoning
- Message the uploader that it’s been deleted
This had a few iterations, it initially only deleted on high confidence and messaged the channel for human review. After some time, I found that the AI was perfectly capable of operating alone.
And discovered that without telling the user who uploaded it that it’s been deleted and why, people tended to assume it was a bug and kept reloading the same image.
What is not safe for work? Well, I was pretty amazed in the end at what people really felt like was something they should use in a work setting. But, taking humans out of this mostly actually has led to less complaints, when it’s just an AI choice there seems to be less debate about what is and isn’t objective - especially as no one can read the instructions I wrote for the AI.