apfel - Macにすでに内蔵された無料AIを活用できるようにするツール
(apfel.franzai.com)- macOS 26以降のApple Silicon Macに含まれるAppleオンデバイスLLMを直接活用できるようにするオープンソース
- FoundationModels.frameworkベースのモデルをCLI、HTTPサーバー、対話型チャットの形で公開し、OpenAI APIと互換
- すべての演算がローカルで処理されるためコスト0円、データ漏えいリスクなし、4096トークンのコンテキストと多言語対応を提供
- cmd、oneliner、explain、gitsumなど多様な補助ツールでコード・コマンドの要約や自動化機能を支援
- macOSにすでに存在するApple Intelligenceモデルを完全に開放し、開発者が自分のハードウェア上で独立してAIを実行できるようにする
apfel 概要
- apfelは、macOS 26(Tahoe)以降のApple Silicon Macに内蔵されたAppleオンデバイスLLMを直接使えるようにするツール
- AppleがSiriやシステム機能でのみ限定的に使っていたFoundationModels.frameworkベースの言語モデルを、CLI、HTTPサーバー、対話型チャットの形で公開
- 100%オンデバイス実行、コスト0円、OpenAI API互換性を提供
- Homebrewでインストール可能で、MITライセンスのオープンソースとして配布
主な特徴
- オンデバイスAI活用: macOSに含まれるLLMをそのまま使用し、ネットワーク呼び出しやAPIキーは不要
- セキュリティ: すべてのトークンがローカルで処理され、データは外部へ送信されない
-
性能仕様
- 約30億パラメータ
- 4096トークンのコンテキストウィンドウ
-
2/4ビット混合精度量子化
- Neural Engineベースで実行
- 英語、ドイツ語、スペイン語、フランス語、イタリア語、日本語、韓国語、ポルトガル語、中国語をサポート
利用方法
-
CLIツール
- UNIXスタイルのコマンドラインツールで、stdin/stdout、JSON出力、ファイル添付、正常終了コードをサポート
jq、xargs、シェルスクリプトと組み合わせ可能- 例:
$ apfel "What is the capital of Austria?" The capital of Austria is Vienna.
-
OpenAI互換サーバー
localhost:11434でOpenAI API代替サーバーとして動作- Streaming(SSE)、Tool Calling、CORS、response_format: json_objectなどをサポート
- OpenAI SDKの
base_urlだけを変更すれば同じコードで利用可能 - 例:
client = OpenAI(base_url="http://localhost:11434/v1", api_key="unused")
-
対話型チャット
- マルチターン会話、自動コンテキスト管理、システムプロンプト、5種類のトリミング戦略をサポート
- 例:
$ apfel --chat -s "You are a coding assistant" > How do I reverse a list in Python?
内部構造
- Apple内蔵LLMにFoundationModels.frameworkを通じて直接アクセス
- AppleがSiri、Writing Toolsなどでのみ使用していたモデルを、apfelはSwift 6.3バイナリで
LanguageModelSessionをラップし、直接アクセス用インターフェースを提供 - HummingbirdベースのHTTPサーバーを内蔵
- 4096トークン制限を補うため、5種類のコンテキストトリミング戦略と正確なトークンカウント機能を含む
- OpenAI Tool SchemaをAppleのTranscript.ToolDefinition形式に変換
同梱される補助ツール
-
cmd
- 自然言語をシェルコマンドに変換
- 例:
"find all .log files modified today"→ 実際のコマンド出力
-
oneliner
- 自然言語でawk、sed、sort、uniqなどのパイプラインを生成
-
mac-narrator
- Macのシステム動作をナレーション形式で説明
-
explain
- コマンドやコード片を平文で解説
-
wtd
- 現在のディレクトリのコードベースを要約説明
-
gitsum
- 直近のgitコミット要約を生成
OpenAI API完全互換性
- /v1/chat/completions、/v1/modelsなど主要エンドポイントをサポート
- temperature、max_tokens、seedなどのパラメータを利用可能
- ブラウザクライアント向けCORSをサポート
- OpenAI SDK、LangChain、LlamaIndexなどと同じ方式で連携可能
GitHubでの人気と配布
- 1,030スター、27フォークを記録
- 2026年4月3日の1日で818スター増加
- Apple、Google、VMware、NVIDIA、Grafana所属のエンジニアがスターを付与
- インストールコマンド:
$ brew install Arthur-Ficial/tap/apfel $ apfel "Hello, Mac!" - ソースビルド時はmacOS 26.4 SDKが必要
拡張プロジェクト
-
apfel-gui
-
SwiftUIベースのmacOS GUI
- Apple Intelligenceとのチャット、リクエスト/レスポンスログ、音声入出力機能を提供
- リリース予定
-
-
apfel-clip
-
クリップボードベースのAIアクションツール
- 文法修正、翻訳、コード説明、要約などの機能をメニューバーからワンクリック実行
- 開発進行中
-
技術要約
- ハードウェア: Apple Silicon (Neural Engine + GPU)
- モデル: macOS内蔵Apple LLM
- SDK: FoundationModels.framework
- 言語: Swift 6.3、Xcode不要
- ライセンス: MIT
- トークンウィンドウ: 4096(入力+出力の合計)
- モデル数: 固定1個
核心的価値
- macOSにすでに存在するApple Intelligenceモデルを完全に開放
- コストのかからないローカルAI環境を提供し、開発者とユーザーが自分のハードウェア上で直接AIを実行できるようにする
- セキュリティ、速度、独立性をすべて備えたMac専用のオープンソースAIインターフェース
5件のコメント
面白そうなのですが、なぜか日本語があまりうまく動きません。
ソースコードを取ってきてCodexと一緒に掘っているのですが、Foundation Modelの応答自体が日本語まわりで少しおかしいですね。
もう少し試してみますが、もし成功した方がいたらコメントで教えてください(笑)
あれ、ダメなのか?と思ったのですが、これは通ります
どうもガードレールのかかり方がおかしいようです.
これ、会話した内容ベースで Codex に修正させてみたら、少し手直しするだけでうまく動きますね
"質問の要求にはそのまま従いつつ、別途指定がなければ日本語で直接答えてください。"
アダプターをひとつ置いて、ああいう知能的な機能の返答が出たら上のプロンプトを追加すると、答えがうまく出ます。まだ何か不完全みたいですね。
実際に使ってみるまでは、
ollamaのような他のローカルLLMを動かせるツールと比べてどんな利点があるのか少し疑問だったのですが、実際に触ってみるとハルシネーションもひどく、かなり賢くないですね。ただ、他のローカルLLMツールはGPUを活用して強力な反面、リソースを多く消費しますが、このモデルの場合は比較的リソース消費が少なく、ニューラルエンジンをうまく活用して電力使用も少ないという点では利点があるように思います。
Apple Intelligence 自体が、モバイル機器を含むさまざまなデバイスで軽量なAIを動かすというコンセプトだと理解しているので、そのコンセプトにはよく合っているのではないかと思います。
その一方で、いくら軽量モデルでも、これよりは性能が良くないと少しでも実用的に使うのは難しいのではないかと思います。今はあまりにも賢くなさすぎます。
Hacker Newsの意見
すべてをローカルで実行するアプローチが気に入った
プライバシーの観点から、ローカルモデルの重要性は今後ますます高まると思う
人々がクラウドモデルにあまりに多くのコンテキスト情報を渡して事故が起きる事例が増えるほど、ローカル実行の必要性はさらに強まるはずだ
モデルが閉鎖的に学習されると、ユーザーが望まない価値観が内在する可能性がある
たとえば、中国のオープンモデルに天安門事件を尋ねると検閲された答えを返すようなものだ
したがって本当の解決策は、検証可能なオープン学習とローカル実行の組み合わせだ
Webクロールやスパム検知のように外部データを扱うと、ToS違反や、ひいては法執行機関への誤通報のリスクさえある
日常会話をモデルと交わすとき、その内容を平文でサーバーに送りたくない
だからローカル実行を好む
Anthropic、Google、OpenAIなどは消費者向けAIプランでプライバシーを手放している
理由はデータ収集とモデレーションだ
しかし、AWS Nitro Enclavesのような暗号学的保証(cryptographic attestation) 技術を使えば、クラウドでも十分に個人情報を保護できる
Appleが継続的に新しいモデルを配布できるかが鍵だ
現在のモデルはQwen-3-4B相当で、1年前のモデルだ
Apple Foundation Models研究ページを見ると、最新のQwen-3.5-4BやGemma 4とは差が大きい
ダウンロードなしですぐ使える点は良いが、最新モデルを使いたい
ただしAppleは素早く動く会社ではなく、AI機能を限定された領域(写真補正、Siriへの質問など)にだけ置く可能性が高い
個人的にはApple Intelligenceを有効にしなくても便利な機能は多い
Appleモデルをネットワークサーバーとして公開するプロジェクトを見たことがある
問題は、こうしたサーバーにはローカルポート経由でブラウザなど他のアプリからもアクセスできることだ
悪意あるWebページのJavaScriptがそのポートにコマンドを送れる
一部のプロジェクトはCORSまで許可していて、さらに危険だ
Apfelのコードも試す前に確認中だ
依然としてfootgunオプションではあるが、これまで見た中では最も安全な部類だ
だから実際の脅威モデルが何なのか気になる
熟練したエンジニアでさえ、この攻撃ベクトルを見落とす
最近のClaudeのバグでトークン消費が速すぎたので、他のモデルも試してみた
ほとんどは相互に代替可能なレベルだった
ブランド忠誠度やスイッチングコストが低い市場がどう変わるのか気になる
ローカルLLMがすぐに実用的な代替案になってほしい
そのためOpenAIやMetaは感情的なつながり(友人・恋人型チャットボット) 戦略で差別化を図ろうとしているようだ
別スレッドで見てすぐにインストールしてみた
LLMテスト用のプロンプトとして「台湾の9:30amは米国太平洋時間で何時か」を使ったが、
結果は全部違い、しかも全部間違っていた
Apfel CLIで実行したところ、モデルごとに11〜13時間差をばらばらに計算した
今週初めから使っている
クラウドで回していた価格予測バックテストツールをローカルモデルで比較したところ、
Appleモデルが10回中6回で最も正確だった
速度も十分に速く、ワークフロー全体を置き換えられそうだ
Sonnetなら月に数千ドル、DeepSeekでも数百ドルかかるが、ローカルはほぼ無料だ
ただし他のローカルモデルは速度や精度が不足していた
「AppleがSiriの裏に閉じ込めていたものをApfelが解放する」という表現は大げさなマーケティングに思える
実際にはApple IntelligenceのFoundationModelsフレームワークをCLIとREST APIとして公開したものだ
また「Neural Engineで動作する」という主張も不確かだ
テストしたところ、GPU(Metal)で動いていた
私はLinuxユーザーで、同じものが欲しくて自分でTalkTypeというプロジェクトを作った
Whisperをローカルで動かし、オフライン音声認識を行う
自分の声をサーバーに送りたくなかったので、最初からローカル方式を選んだ
Macでもこうしたアイデアが広がるのはうれしい
オープンソースとして公開してくれてありがとう
macOS 15でもインストールはできるが、実行時に停止してしまうので、
macOS 26(Tahoe)以上でのみインストールできるように PRを送った
すべてのアプリとブラウザで文法エラーに下線を引くGrammarly代替エンジンを作りたい
LLMすら不要な、完全なプライバシー重視ツールになるはずだ
誰かが作ったらぜひ使ってみたい