- n’est pas pris en charge
- n’est pas activé
- n’est pas prêt au moment où vous l’appelez
Vérification la plus simple
availability.
Quatre questions différentes
Quand vous parlez de “disponibilité”, vous mélangez souvent plusieurs sujets. Apple les sépare :
Gardez cette séparation en tête. Un modèle peut être prêt, mais mal adapté à votre langue ou trop limité pour un long transcript.
Diagnostic détaillé
Apple expose un état plus précis viaSystemLanguageModel.default.availability.
Les cas à connaître
Vérifier la langue ou la locale
Le support dépend aussi de la langue.supportedLanguages vous donne la liste des langues déclarées par le système. supportsLocale(_:) reste néanmoins le check le plus direct au runtime.
Disponible ne veut pas dire adapté à votre langue
Un appareil peut être techniquement compatible, mais pas votre locale de travail.Disponibilité et capacité de contexte
contextSize répond à une autre question : quelle quantité de contexte le modèle peut accepter, pas si le modèle est prêt.
Exemple d’UI de fallback
Quand vérifier la disponibilité
Au moment d’afficher la fonctionnalité
Utile pour masquer ou désactiver proprement l’entrée dans l’interface.Juste avant un appel important
Utile si votre vue reste longtemps à l’écran et que l’état a pu changer.Au moment de gérer une erreur
Si un appel échoue, revérifiez la disponibilité avant d’afficher un message générique.Recommandation pratique
Évitez les phrases du type “disponible à partir de tel appareil” directement dans le code produit. Les règles de disponibilité évoluent plus vite qu’une documentation statique. Votre app doit raisonner avec les états fournis parSystemLanguageModel.
Prompts
Construire des requêtes plus utiles.
Instructions
Guider le comportement du modèle sur une session.