Swiss AI Hub v0.305.3
Pre-release
Pre-release
Added
- 🦾 Introduced
ResilientOpenAILikefor Robust LLM Interactions: A new wrapper forOpenAILikemodels that
automatically retries structured prediction calls multiple times. This significantly improves the reliability of
agents interacting with Large Language Models (LLMs) that may intermittently produce malformed structured output. - 📄 New Architecture Decision Record (ADR) on Reasoning Model Resilience: Documented the challenges with structured
output from specific reasoning models (Kimi-K2.6, Qwen3.5) on Infomaniak and detailed the architectural decisions to
mitigate these issues, including the adoption of plain-text verdicts and retry mechanisms. - ⚡️ New
text_verdictUtility Module: A dedicated module providing helpers for requesting and parsing plain-text
verdicts from LLMs, which is now used by several guard and detection functions for improved reliability and speed.
Changed
- 🔄 Relevance Guards Now Use Plain-Text Verdicts: The
agent_description_guard,few_shot_guard, and
context_sufficient_guardhave been converted from expecting structured JSON output to requesting and parsing simple
plain-text verdicts (e.g.,ALLOW/BLOCK,SUFFICIENT/INSUFFICIENT). This change dramatically increases their
reliability with reasoning models. - 🚀 Faster and More Reliable Meta-Question Detection: The
detect_meta_questionfunction now uses a streamlined,
single-token plain-text classification (e.g.,NORMAL,META_IDENTITY) with reasoning disabled, reducing latency
from ~4-5 seconds to sub-second on reasoning models without compromising accuracy. - 🛡️ Guards Fail Open on Unrecognizable Responses: Relevance guards (
agent_description_guard,few_shot_guard,
context_sufficient_guard) now gracefully degrade by accepting a request if the LLM returns an unparseable verdict,
preventing agent crashes and improving user experience. - 💬 Strict System Message Placement for Qwen3.5 Compatibility: The
do_answer_meta_questionandRAGAgent's
guard-reject branch now ensure that system messages always lead the message list, resolving a
400 - System message must be at the beginningerror with Qwen3.5. - ⚙️ Centralized Retry Mechanism for All Structured Predictions: All structured prediction calls are now routed
through the newResilientOpenAILikewrapper by default, providing a single point of failure mitigation for all
agents without requiring individual call-site changes.
Fixed
- 🐛 Resolved Agent Crashes Due to Flaky LLM Structured Output: Addressed a critical issue where agents would crash
when reasoning models like Kimi-K2.6 or Qwen3.5 failed to produce reliably parseable structured output (e.g., empty
tool calls, malformed JSON). - 🔒 Prevented Sensitive Information Leaks in Guard Logs: Guard-failure logs no longer include raw model output,
queries, or retrieved context, enhancing privacy and security.