Foundation Models are driving me up the wall.
My use case: A news app - I want to summarize news articles. Sounds like a perfect use for the added-in-beta-5 "no guardrails" mode for text-to-text transformations...
... and it's true, I don't get guardrails exceptions anymore but now, the model itself frequently refuses to summarize stuff which in a way is even worse as I have to parse the output text to figure out if it failed instead of getting an exception. I mostly worked that out with my system instructions but still, the refusing to summarize makes it really tough to use.
I instructed the model to tell me why it failed if that happens.
Examples of various refusals for news articles from major sources:
"The article mentions "Visual Lookup" but does not provide details about how it integrates with iOS 26."
"The article includes unsafe content regarding a political figure's potential influence over the Federal Reserve board, which is against my guidelines."
"the article contains unsafe content."
"The article is biased and opinionated and focuses on the author's opinion."
(this is despite the instructions specifically asking for a neutral summary - I am asking it to not use bias in the output but it still refuses)
I have tons of these. Note that if I don't use the "no guardrails" mode and use a Generable instead, some of these work fine so right now I have to do two passes on much of the content since I never know which one will work.
Having a "summary mode" that often refuses to summarize current news articles (the world is not a great place, some of these stories are a bummer) is near worthless.
Hi @Hunter, thanks for clarifying.
As you likely know, we have some guidelines around acceptable use for Foundation Models, which may be useful for future visitors of this thread.
For acceptable use-cases, there are likely still behaviors we want the model to avoid, and that's what guardrails are for. They provide your app a way to handle the different kinds of errors that may arise during generation, so be sure to catch those and handle them accordingly.
Even still, there may still be instances where the model refuses to answer for one reason or another. You can attempt to catch these generation refusals, too. While the explanation
is not as authoritative as an error message, it can provide some clues for why the unexpected behavior is occurring.
This article explains these concepts in some more depth and lays out information about user input boundaries, language model session instructions, blocked terms, and safety testing and monitoring.
Please still provide that FB# and focused sample project. I'd be interested in taking a look at the text causing the behavior you're experiencing as well as the error handling in the app.
Hope this helps,
-J