axiom-ai について
axiom-aiは、Apple IntelligenceとFoundation Modelsを使う開発者向けのルーティングスキルです。デバイス上のFoundation Modelsと、独自のCore ML、Core AI、音声、クラウドAIの課題を区別し、実装や診断の資料を案内します。
主な機能
- 01Foundation Modelsの実装と診断を案内
- 02Apple Intelligenceと独自MLの経路を区別
- 03構造化出力、ツール、ストリーミングのガイド
- 04ガードレールと評価ワークフローの資料
- 05音声、Core AI、suggested-actionsの案内
活用シーン
- 01デバイス上のテキスト生成機能を構築する
- 02Foundation Modelsの構造化出力を診断する
- 03モデルの学習またはデプロイ経路を選ぶ
- 04メッセージアプリにシステム提案アクションを追加する
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ charleswiltgen/ axiom --skill axiom-aiインストール後、Claude Code で/axiom-aiを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
skills/core-ai.mdcoreml-compression.mdcoreml-conversion.mdcoreml-deployment.mdcoreml-diag.mdcoreml-ref.mdcoreml-training.mdfoundation-models-adapters-diag.mdfoundation-models-adapters-ref.mdfoundation-models-adapters.mdfoundation-models-auditor.mdfoundation-models-diag.mdfoundation-models-evaluations-diag.mdfoundation-models-evaluations-ref.mdfoundation-models-evaluations.mdfoundation-models-guardrails.mdfoundation-models-ref.mdfoundation-models.mdios-ml.mdspeech.mdsuggested-actions.mdtraining-paths.md詳細
Apple Intelligence と AI
Apple Intelligence または Foundation Models に関する作業では、必ずこのスキルを使用してください。
Axiom エージェントを起動できませんか? このルーターからエージェントに案内された場合は、その手順をその場で実行してください。MCP 経由では、
axiom_get_agentがエージェントを返します。それ以外の場合は、以下のファイルを読み込んでください。必要なのはファイルの検索と読み込みだけです。ここで利用可能:
skills/foundation-models-auditor.md。ほかのエージェントについても、MCP 経由では
axiom_get_agentがエージェントを返します。そのxclog、xcsym、xcprofの手順を、axiom_xclog_*、axiom_xcsym_*、axiom_xcprof_*ツールで実行してください。それ以外の場合は、Axiom のスキルからskills/<agent>.mdを検索してください。該当ファイルがない場合は、このスイートのスキルを使い、PATH上の Axiom ツールを利用して自分で作業してください。
使用するタイミング
次の場合に、このルーターを使用してください。
- Apple Intelligence の機能を実装する
- Foundation Models を使用する
- LanguageModelSession を扱う
- @Generable で構造化出力を生成する
- AI による生成の問題をデバッグする
- iOS 26 のオンデバイス AI を扱う
AI の振り分け
まず、開発者が必要としている AI の種類を判断してください。
| 開発者の意図 | 案内先 |
|---|---|
| オンデバイスのテキスト生成(Apple Intelligence) | ここに留まる → Foundation Models のスキル |
| カスタム ML モデルのデプロイ(PyTorch、TensorFlow)—従来の Core ML | skills/ios-ml.md を参照(ハブ)→ 変換/圧縮/トレーニング/デプロイ/リファレンス/診断ファイル |
| Core ML モデルの読み込みに失敗する、遅い、メモリ使用量が増える、または圧縮後に精度が低下する | skills/coreml-diag.md を参照 |
| オンデバイスのカスタム LLM 規模/トランスフォーマー モデル(27-cycle) | skills/core-ai.md を参照 → Core AI の変換、ランタイム、特化 |
| コンピュータービジョン(画像分析、OCR、セグメンテーション) | /skill axiom-vision → Vision フレームワーク |
| クラウド API 統合(OpenAI、汎用 HTTP) | /skill axiom-networking → URLSession のパターン |
| Claude のクラウド統合(Anthropic SDK、Messages API、Claude Agent SDK) | claude-api スキルを参照(外部)→ Opus 4.6 から 4.7 への自動移行を含む |
| 音声からテキストへの変換/文字起こし(SpeechAnalyzer、SpeechTranscriber、DictationTranscriber、マイク → 文字起こし) | skills/speech.md を参照(OS27 入力プロバイダー、Swift 6 のマイクタップ分離、iOS/visionOS では約 2 つのアナライザーまで、macOS では上限なし) |
すぐに使える Apple Intelligence UI — メッセージの会話に対するアクションの提案(OS27) | skills/suggested-actions.md を参照 → そのまま組み込める SuggestedActionsView、エンタイトルメントによる制御 |
| システム AI 機能(Writing Tools、Genmoji) | カスタムコードは不要です。システムが提供する機能です |
重要な境界:Foundation Models と ML(カスタムモデル)
- Foundation Models = Apple のオンデバイス LLM フレームワーク(LanguageModelSession、@Generable)
- ML = カスタムモデルのデプロイ(CoreML の変換、量子化、MLTensor)と音声からテキストへの変換
- 開発者が「自分のモデルを実行する」と言う場合は → skills/ios-ml.md。「Apple Intelligence を使う」と言う場合は → ここに留まります。
トレーニングパスの境界
開発者が「モデルをトレーニング/ファインチューニング/パーソナライズしたい」と言う場合、実際には4つの異なるパスがあります。これらは混同されがちですが、それぞれ出力、ライフサイクル、ランタイムとの互換性が異なります。
| パス | トレーニング対象 | 出力 | ライフサイクル | 参照先 |
|---|---|---|---|---|
| FM カスタムアダプター(26-cycle のみ — ランタイムは 27.0 で廃止) | Apple の固定されたオンデバイス 3B LLM(rank-32 LoRA) | .fmadapter パッケージ、約160 MB | OS バージョンごとのビルド時に作成し、Background Assets 経由で配布 | skills/foundation-models-adapters.md(手法)+ skills/foundation-models-adapters-ref.md(ツールキット+ランタイム)+ skills/foundation-models-adapters-diag.md(障害モード);配布は axiom-integration (skills/background-assets.md) 経由 |
Core ML MLUpdateTask | NN-spec モデルの全結合層と畳み込み層 | ディスクに保存される更新済み .mlmodelc | ランタイム時、ユーザーごと(オンデバイスのパーソナライズ) | skills/coreml-training.md |
| Create ML | スクラッチからの新しい Core ML モデル/転移学習 | .mlmodel | Mac または iOS でのビルド時(種類による) | skills/coreml-training.md |
MLX LM(mlx_lm.lora) | Apple Silicon 上のオープンソース LLM | adapters/adapters.safetensors — Foundation Models では読み込み不可 | ビルド時;iOS の配布パスではない | 外部 — Axiom の対象範囲外;関連するリサーチツールとして扱う |
| サーバー LLM のファインチューニング | クラウドホスト型モデル(例:ベンダーのファインチューニング) | クラウド上の成果物。API 経由でアクセス | ビルド時;クラウドで実行 | API 統合には /skill axiom-networking を参照;ファインチューニングのワークフローはベンダーの担当領域 |
重要な違い:
- MLX LM の出力(
.safetensors)はLanguageModelSessionに読み込めません。ツールチェーンも、デプロイ先も異なります。 MLUpdateTaskは NN-spec のみ です — 最新の PyTorch/TensorFlow 変換で生成された ML Program(.mlpackage)モデルはサポートしません。新しいプロジェクトでほとんど使われない主な理由はこれです。- FM カスタムアダプターはベースモデルのバージョン(OS ごと)に固定されます。1つのアダプターですべての導入済みデバイスに対応できるわけではありません — 回避策の段階的な選択肢については、
skills/foundation-models.mdの「Approach Triage」セクションを参照してください。
「自分にはどのパスが当てはまるか?」を完全に見分ける方法(判断ツリー、週単位のコストにつながる3つの誤り、パスごとの参照先)については、skills/training-paths.md を参照してください。
ドメイン横断ルーティング
Foundation Models + 並行処理(生成中に UI がフリーズする、同時リクエストエラーが発生する):
- セッションを待機してもブロックではなく一時停止します。フリーズは生成中にメインアクターで同期処理が行われることで発生します(foundation-models-diag Pattern 5a)。また、
concurrentRequestsはisRespondingが true の間に 2 つ目のリクエストが開始されたことを意味します - まず foundation-models(リクエストは一度に 1 つ) と foundation-models-diag Pattern 5a(フリーズ)を使って修正してください
- 並行処理の問題が Foundation Models の範囲を超える場合は → axiom-concurrency も呼び出してください
Foundation Models + データ(@Generable のデコードエラー、構造化出力の問題):
- @Generable の出力問題は Foundation Models 固有のものであり、一般的な Codable の問題ではありません
- ここに留まってください → foundation-models-diag が構造化出力のデバッグを扱います
- 開発者に一般的な Codable/シリアライゼーションについての質問もある場合は → axiom-data も呼び出してください
Foundation Models + セキュリティ(プロンプトインジェクション、エージェントツールの保護、確認によるゲーティング):
- エージェント機能の脅威モデリングと緩和策(
.onToolCallによる確認、.historyTransformによる強調表示/秘匿、ロック画面でのインテントポリシー) → axiom-security(skills/agentic-security.md) - API サーフェス自体(DynamicProfile、ツール、セッション)については、ここに留まってください
音声テキスト変換 + 音声キャプチャ(文字起こしによってオーディオセッションに問題が生じる):
SpeechAnalyzer/SpeechTranscriber、OS27の入力プロバイダー、iOS/visionOS でのアナライザー数の上限約 2 件、macOS では上限なし → ここに留まってください(skills/speech.md)- 注意点:
CaptureInputSequenceProvider.providerWithSession(...)(OS27)は、アプリのデフォルトのAVAudioSessionを再構成します。アプリで録音または再生も行う場合、キャプチャ/セッション側の修正は axiom-media(avfoundation-ref、camera-capture)で対応します。provider(from:in:)で独自のセッションに参加するか、セッションを所有するアクターからinit(session:analyzerFormat:priority:)を使い、そのcaptureAudioDataOutputを追加してください。
ルーティングロジック
カスタム Core ML の作業(Apple の LLM ではなく独自のモデル)
skills/ios-ml.md がハブです。各段階には専用のファイルがあります。
- トレーニング済みの PyTorch/TF/Keras モデルを 変換 →
skills/coreml-conversion.md(coremltools.convert、ML Program と NN-spec の比較、同等性の検証、ステートフル変換) - 圧縮 →
skills/coreml-compression.md(PTQ と QAT の選択、パレタイズ/量子化/プルーニング) - 一からトレーニング/デバイス上でパーソナライズ →
skills/coreml-training.md(Create ML、MLUpdateTaskと NN-spec のみという制限) - デプロイして実行 →
skills/coreml-deployment.md(読み込み/キャッシュ/事前ウォームアップ、Swift 6 で安全な予測 —MLModelは Sendable ではありません、ステートフル KV キャッシュ、マルチファンクションアダプター、MLTensor) - API の検索 →
skills/coreml-ref.md(MLModel、構成、計算デバイス、予測のオーバーロード、MLState、MLTensorの操作、MLComputePlan、coremltools の索引) - 問題が発生した場合 →
skills/coreml-diag.md(読み込みエラー、速度低下、メモリ、デバイスと Simulator の違い、圧縮後の精度低下)
Core AI — LLM 規模のオンデバイスモデル向け 27 サイクルのパス(OS27)
skills/core-ai.md では、Apple Intelligence を支えるオンデバイス推論フレームワークであり、現在はアプリでも利用できる Core AI を扱います。モデルが LLM 規模/トランスフォーマーの場合、または開発者がカスタム Metal カーネル、マルチファンクションアセット、事前コンパイル、KV キャッシュ状態、あるいは特殊化/キャッシュに基づくデプロイモデルを必要とする場合は、skills/ios-ml.md ではなく、こちらにルーティングしてください。Python ツールチェーン(coreai-torch/coreai-opt)、Swift ランタイム(import CoreAI → AIModel/InferenceFunction/NDArray)、特殊化の指針、Foundation Models ブリッジ(オープンソースの coreai-models パッケージに含まれる CoreAILanguageModel — システムフレームワークの型ではありません)を扱います。
ターンキーの Apple Intelligence UI — 提案アクション(OS27)
skills/suggested-actions.mdでは、SuggestedActionsフレームワークについて説明しています。メッセージの会話に対して、Apple Intelligenceが生成した提案アクションを表示する、組み込み可能なSwiftUIのSuggestedActionsViewです(iOS/macOS/macCatalyst/visionOS 27)。これはシステムが提供する機能です。メッセージ(SuggestedActionsMessage)を記述して、com.apple.developer.suggested-actionsエンタイトルメントを追加するだけで使用できます。LanguageModelSession、プロンプト、@Generableは不要です。システムによる候補をインライン表示したいメッセージング/チャット/メールアプリの場合は、こちらを参照してください。開発者が独自の構造化出力を生成したい場合は、こちらではなくFoundation Modelsを使用します。エンタイトルメント/機能の説明はaxiom-integrationにも記載されており、こちらへの相互リンクがあります。
Foundation Modelsの作業
実装パターン → skills/foundation-models.md
- LanguageModelSessionの基本
- @Generableによる構造化出力
- ツールプロトコルの統合
- PartiallyGeneratedによるストリーミング
- 動的スキーマ
- Private Cloud Computeモデルとマルチモーダル画像入力(
OS27) - WWDC 2025および2026のコード例
APIリファレンス → skills/foundation-models-ref.md
- APIドキュメント一式
- @Generableの例すべて
- ツールプロトコルのパターン
- ストリーミング生成のパターン
OS27:Private Cloud Compute、マルチモーダルなAttachmentとImageReferenceのツール引数、LanguageModelプロトコルと機能、推論とトークン使用量、Dynamic Profiles(修飾子の全範囲と@SessionProperty)、Dynamic Instructions、カスタムモデルプロバイダー(LanguageModelExecutor)、LanguageModelErrorの移行、組み込みのシステムツール、改善されたFoundation Models Instrument
診断 → skills/foundation-models-diag.md
- AIの応答がブロックされる
- 生成が遅い
- ガードレール違反
- コンテキストの上限を超過する
- モデルが利用できない
ガードレールと安全性の判断 → skills/foundation-models-guardrails.md
permissiveContentTransformationsと.defaultの使い分け- 偽陽性のトリアージ(正しい拒否か、過度に制限的か)
- カスタムの安全性評価/レッドチームの手法
- アダプターとガードレールの相互作用(安全性の低下)
評価駆動開発 — その手法(OS27) → skills/foundation-models-evaluations.md
- 「このAI機能は本当に優れているか?」「プロンプトの変更は役に立ったか?」「目視した出力だけでリリースしようとしていないか?」
- データセットの設計(golden/edge/adversarial/known-failures、ホールドアウトセット、サンプル数)
- 評価者のキャリブレーション — 4つの評価者バイアス、スコアを信頼する前にCohenのκ > 0.6を確認
- ガードレールと最適化目標の違い、指標をクリアしても結果が誤解を招く理由
- 制御された実験としてのヒルクライミング(各ラウンドで変更する変数は1つ)
評価の失敗 — 評価スイートが誤った結果を示している(OS27) → skills/foundation-models-evaluations-diag.md
- 指標が正確に
-1を示す、または難しいサンプルを追加した後に合格率が上がる - 評価スイートは成功しているのにツール呼び出しが一度も評価されていない。CIは成功しているのにモデルが一度も利用可能になっていない
loadJSONの後にSIGABRTが発生する。SIGTRAP「missing required entitlement」(PCC)- 評価者のスコアがすべて同じになる。Cohenのκが負になる。実行ごとにスコアが大きく変動する
- コンパイルできない:
evaluatorsブロック内のif/else、「type aliasEvaluatorsでは再帰がサポートされていません」
EvaluationsフレームワークAPI(OS27) → skills/foundation-models-evaluations-ref.md
- AI機能の回帰テストスイートの構築(
Evaluation、Metric、Evaluator、Swift Testingの.evaluatesを使って実行) - データセット(
ModelSample/ArrayLoader)と追加データの合成(makeSamples/SampleGenerator) - 自由形式の出力に対するモデルを審査員とする評価(
ModelJudgeEvaluator、ScoringScale、.pairwise) - エージェントによるツール呼び出し/軌跡の評価(
ToolCallEvaluator、TrajectoryExpectation) - 結果の確認 — 失敗したサンプルとその理由(
detailed、ResultColumn)、およびエラーの詳細 カスタムアダプターのトレーニング(Approach Triage の段階 1〜4 の後) →skills/foundation-models-adapters.md - 意思決定の規律(アダプターのトレーニングが正当化される場合と、段階 1〜4 で対応する場合)
- メンテナンス契約(OS ごとの再トレーニングの負担、4 軸評価)
- OS ごとのバリアント戦略とランタイムのフォールバック
- データセット構築の規律
- アダプターで強化された機能に関する HIG の開示
アダプターのツールキットとランタイム API → skills/foundation-models-adapters-ref.md
- Python ツールキットのセットアップ(3.11、32 GB の Apple Silicon Mac または Linux GPU)
- データセットの JSONL スキーマ(チャットターンとツール呼び出しの拡張)
examples.train_adapter、examples.train_draft_model、examples.generate、export.export_fmadapterSystemLanguageModel.Adapterランタイム API とAssetErrorのケース- ベースモデルのバージョンごとの互換性マトリックス
com.apple.developer.foundation-model-adapterエンタイトルメント
アダプター固有の診断 → skills/foundation-models-adapters-diag.md
compatibleAdapterNotFound、invalidAdapterName、invalidAsset- アダプターからツール呼び出しが実行されない
- 単純なプロンプトでもアダプターがコンテキストウィンドウを消費する
- OS のアップデート後に精度が低下する(FB18924722)
- エクスポート時に
coremltools.libmilstoragepythonが見つからない
自動スキャン → foundation-models-auditor エージェントまたは /axiom:audit foundation-models を起動
アンチパターンとアーキテクチャ上の不足の両方を検出します:
- 可用性チェックの欠落、1 つのセッションでの同時リクエスト、手動の JSON 解析、特定のエラー(ガードレール/コンテキストサイズ)を捕捉する処理の欠落、タップごとのセッション生成、長い出力に対するストリーミングの欠落、
@Guide制約の欠落、ネストされた非@Generable型、フォールバック UI の欠落 - ユーザーテキストの直接補間によるプロンプトインジェクションのリスク、
@frozenのない@Generableenum(将来のケースでクラッシュ)、キャンセル UX の欠落、トランスクリプトのトリミング処理の欠落、設定切り替え後に古い可用性キャッシュが残ること、部分出力の検証不足、ツールエラーとセッションエラーの区別がつかないこと、一時的なエラーに対する再試行の欠落 - 品質(
OS27):評価スイートがまったくない状態で出荷される AI 機能、キャリブレーションなしで使用されるモデルジャッジ、実行されるものの何もアサートしない評価 - 移行(
OS27):27 をターゲットとするGenerationErrorの非推奨使用、assetsUnavailable/concurrentRequests/decodingFailure(enum から削除済み)を削除するだけの名前変更のみの移行、LanguageModelErrorがもはや実装しておらず現在は nil が黙って表示されるrecoverySuggestionを読み取るエラー UI
スコア:PRODUCTION-READY / NEEDS HARDENING / FRAGILE
判断ツリー
- カスタム ML モデル/CoreML ですか? → skills/ios-ml.md ハブ → 変換(
coreml-conversion.md)、圧縮(coreml-compression.md)、トレーニング/パーソナライズ(coreml-training.md)、デプロイ(coreml-deployment.md)、API(coreml-ref.md)、障害対応(coreml-diag.md)。LLM 規模/トランスフォーマー/27 サイクルのカスタムモデルですか? → skills/core-ai.md(Core AI) - コンピュータービジョン/画像解析/OCR ですか? → /skill axiom-vision
- クラウド AI API の統合ですか? → /skill axiom-networking
- Foundation Models/@Generable/Tool プロトコルを実装していますか? → foundation-models
- API リファレンス/コード例が必要ですか? → foundation-models-ref
- AI の問題(ブロック、遅延、ガードレール)をデバッグしていますか? → foundation-models-diag
- Foundation Models と UI のフリーズが関係していますか? → foundation-models-diag(パターン 5a、メインアクター上の処理)+必要に応じて axiom-concurrency も呼び出してください
- カスタムアダプターのトレーニングを検討していますか? → まず foundation-models の Approach Triage(段階 1〜4)を確認してください。ドキュメントに記載された段階 1〜4 の失敗を確認した場合に限り、その後 foundation-models-adapters に進みます
- アダプターの読み込み、トレーニングパイプライン、またはランタイムでの選択を実装していますか? → foundation-models-adapters + foundation-models-adapters-ref + 配信には axiom-integration(skills/background-assets.md)
- アダプター固有の障害(compatibleAdapterNotFound、アダプターからツール呼び出しが実行されない、OS アップデート後の精度低下)をデバッグしていますか? → foundation-models-adapters-diag
- Foundation Models のコードを自動スキャンしたいですか? → foundation-models-auditor(エージェント — 14 種類のアンチパターンと、プロンプトインジェクション、固定列挙型の規律、トランスクリプトのトリミング、キャンセル UX、欠落または未較正の評価スイートなどの完全性のギャップを検出し、PRODUCTION-READY/NEEDS HARDENING/FRAGILE のスコアを付けます)
- AI 機能が改善または劣化したかを測定する、評価用データセットを設計する、モデルジャッジを較正する、または目視で確認した出力をもとにリリースしようとしていますか? → foundation-models-evaluations(評価手法)+ foundation-models-evaluations-ref(API)—
OS27Evaluations フレームワーク - メッセージング/チャット/メールアプリに Apple 組み込みの提案アクション(
SuggestedActionsView、suggested-actions エンタイトルメント)を追加しますか? → skills/suggested-actions.md(OS27— すぐに使えるシステム提供機能。Foundation Models ではありません) - 音声からテキストへの変換、ライブキャプション、またはファイルの文字起こし(
SpeechAnalyzer、SpeechTranscriber、DictationTranscriber、SFSpeechRecognizer、マイク → トランスクリプト)ですか? → skills/speech.md
反合理化
| 考え | 実態 |
|---|---|
| 「Foundation Modelsは単なるLanguageModelSessionです」 | Foundation Modelsには@Generable、Toolプロトコル、ストリーミング、ガードレールがあります。foundation-modelsですべてをカバーしています。 |
| 「AIのパターンは使いながら理解します」 | AI APIには、固有のエラー処理とフォールバック要件があります。foundation-modelsは実行時の失敗を防ぎます。 |
| 「以前LLMを使ったことがあるので、似たようなものです」 | Appleのオンデバイスモデルには、ガードレールやコンテキスト制限といった独自の制約があります。foundation-modelsはApple固有です。 |
| 「Anthropic SDKのことはすでに知っています」 | Opus 4.7ではMessages APIからtemperature、top_p、top_k、prefillが削除されました。4.6で動作していたコードは、実行時にHTTP 400を返します。モデルIDを変更する前に、claude-api(外部)を読んでください。 |
| 「モデルの出力を改善するには、カスタムアダプターをトレーニングする必要があります」 | 「アダプターが必要」というリクエストのほとんどは、Approach Triageの1~4段階(プロンプトエンジニアリング、@Generable/@Guide、ツール呼び出し、組み込みのコンテンツタグ付けアダプター)で解決できます。foundation-modelsにはこの段階的な手順があり、foundation-models-adaptersが正当化されるのは、各段階での失敗が記録された後に限られます。 |
| 「アダプターを1つトレーニングすれば、すべてのユーザーに提供できます」 | 各.fmadapterは1つのベースモデルバージョンに固定されます。1つのアダプターでは、複数のOSにまたがるインストールベースをカバーできません。foundation-models-adaptersでは、OSごとのバリアント戦略と、実行時のcompatibleAdapterIdentifiers(name:)による選択を扱います。 |
| 「ユーザーの大半は英語を話すので、ロケール別の評価は省きましょう」 | Appleの2025年の技術レポートでは、評価をEnglish-US/English-outside-US/PFIGSCJKに分類しています。複数のロケールに対応するアプリを英語だけで評価すると、英語以外の回帰が気づかれないままリリースされます。foundation-models-adaptersでは、4つの軸による評価要件を扱います。 |
| 「試したプロンプトでは出力が良かったので、リリースしましょう」 | 5件の良好な結果があっても、失敗する500件については何もわかりません。また、OSのアップデートのたびに、こちらでコードを変更していなくてもモデルが変わります。foundation-models-evaluationsを使えば、手作業で試したプロンプトをゲートにできます。 |
| 「モデルによる評価でも同じ結果ですし、抜き取り確認もしました」 | データが良質な出力に偏っているため、常に高得点をつける評価モデルでも、抜き取り確認では妥当に見え、規模が大きくなるほど大きくずれていきます。Apple独自の評価モデルのサンプルでも、Cohenのκは−0.037から始まります。foundation-models-evaluationsには、キャリブレーションの手順があります。 |
| 「.fmadapterファイルをアプリに同梱するだけです」 | Appleのドキュメントでは、これが明確に禁止されています。アダプターはBackground AssetsのonDemandポリシーを通じて配信します。axiom-integration(skills/background-assets.md)では、配信の部分を扱います。 |
| 「iOS 27アプリにはカスタムアダプターを追加します」 | カスタムアダプターのランタイム(SystemLanguageModel.Adapter)は27.0で非推奨となり、27をデプロイメントターゲットにするとコンパイルできません。27 SDKに代替機能はありません。foundation-models-adaptersでは、1~4段階の手順またはカスタムプロバイダー(LanguageModelExecutor)への移行を扱います。 |
外部リソース
クラウドClaudeとの統合(claude-apiスキル。Axiom外で提供)。 Opus 4.7ではMessages APIからtemperature、top_p、top_k、prefillが削除されました。4.6でビルドに成功していたコードも、コンパイル時ではなく実行時にHTTP 400を返します。claude-apiスキルは移行(モデルIDの変更、サンプリングパラメーターの削除、prefillの置き換え)を自動化し、初日からプロンプトキャッシュの使用を徹底します。これを省くと、最初の400エラーが発生した際に、本番環境のデバッグで半日を費やすことになります。
AppleのオンデバイスFoundation ModelsとAnthropicのクラウドClaudeは、互いに無関係なスタックです。アプリで両方が必要な場合は並行して使用し、ClaudeのモデルIDを変更してリリースする前に、claude-apiを必ず読んでください。
重要なパターン
foundation-models:
- LanguageModelSessionのセットアップ
- 構造化出力のための@Generable
- 関数呼び出しのためのToolプロトコル
- ストリーミング生成
- 動的なスキーマの進化
foundation-models-diag:
- ブロックされた応答の処理
- パフォーマンスの最適化
- ガードレール違反
- コンテキスト管理
使用例
ユーザー:「Apple Intelligence を使って構造化データを生成するにはどうすればよいですか?」
→ 読む:skills/foundation-models.md
ユーザー:「AI 生成がブロックされています」
→ 読む:skills/foundation-models-diag.md
ユーザー:「@Generable の例を見せてください」
→ 読む:skills/foundation-models-ref.md
ユーザー:「ストリーミング AI 生成を実装してください」
→ 読む:skills/foundation-models.md
ユーザー:「アプリに AI を追加したいです」 → まず確認する:Apple Intelligence(Foundation Models)か、カスタム ML モデルか?適切な資料に案内します。
ユーザー:「Foundation Models のセッションが UI をブロックしています」
→ 読む:skills/foundation-models-diag.md(パターン 5a:フリーズの原因は await ではなくメインアクターでの処理です)+必要に応じて axiom-concurrency も呼び出す
ユーザー:「Foundation Models のコードに問題がないか確認してください」
→ 呼び出す:foundation-models-auditor エージェント
ユーザー:「PyTorch モデルをデバイス上で実行したいです」
→ 読む:skills/ios-ml.md(Foundation Models ではなく、従来の Core ML ハブ)→ skills/coreml-conversion.md、続いて skills/coreml-deployment.md
ユーザー:「Core ML モデルの初回読み込みに数秒かかります」/「iPhone では予測が遅いのに、Mac では速いです」
→ 読む:skills/coreml-diag.md
ユーザー:「独自の LLM/SAM セグメンテーションモデルをデバイス上で実行したいです」/「Core AI で PyTorch の Transformer を変換したいです」/「Core AI モデルが初回起動時に停止します」
→ 読む:skills/core-ai.md(Core AI の変換、ランタイム、特殊化とキャッシュ)
ユーザー:「アプリの要約機能用にカスタムアダプターをトレーニングするにはどうすればよいですか?」
→ 読む:skills/foundation-models.md(まずアプローチのトリアージの段階 1~4)、その後、段階 1~4 で失敗したことが記録されている場合に限り skills/foundation-models-adapters.md
ユーザー:「アダプターは iOS 26.0 では正常に読み込めましたが、26.1 では compatibleAdapterNotFound が発生します」
→ 読む:skills/foundation-models-adapters-diag.md(パターン 1)
ユーザー:「アダプタートレーニングのツールキットをセットアップするには?」
→ 読む:skills/foundation-models-adapters-ref.md(ツールキットのセットアップ)
ユーザー:「カスタムアダプターをユーザーに配布するにはどうすればよいですか?」
→ 読む:skills/foundation-models-adapters.md(ランタイムのライフサイクル)+axiom-integration (skills/background-assets.md)(配布)
ユーザー:「プロンプトの変更でタグ付け機能が改善したか測定するにはどうすればよいですか?」/「AI 機能の評価スイートを書いてください」/「出力は良さそうですが、リリースしてもよいですか?」
→ 読む:skills/foundation-models-evaluations.md(評価の原則 — データセットの設計、ガードレールと最適化対象、段階的な改善)+skills/foundation-models-evaluations-ref.md(API — Metrics、.evaluates、モデルを使った評価、ツール呼び出しの評価)
ユーザー:「モデル評価者のスコアがおかしいです」/「評価者を信頼できるか、どうすればわかりますか?」
→ 読む:skills/foundation-models-evaluations.md(評価者の原則 — 4 つのバイアス、Cohen のカッパ > 0.6 のキャリブレーション手順、根拠からのデバッグ)
ユーザー:「評価指標が -1 を返します」/「難しいテストケースを追加したら合格率が上がりました」/「評価スイートは合格しますが、何も測れていない気がします」
→ 読む:skills/foundation-models-evaluations-diag.md(フレームワークは失敗を通知せず、スイートが成功しても実行された証拠にはなりません)
ユーザー:「SpeechAnalyzer を使ったライブ文字起こしを追加してください」
→ 読む:skills/speech.md
ユーザー:「メッセージアプリに Apple の提案アクションを追加してください」/「メッセージスレッドのスマートな/デバイス上の返信候補を表示してください」/「com.apple.developer.suggested-actions エンタイトルメントは何のためのものですか?」
→ 読む:skills/suggested-actions.md(すぐに使える SuggestedActionsView、システム提供 — Foundation Models ではありません)