AppleオンデバイスLLMをOpenAI互換APIに変換する方法:このリポジトリで

Leo Schulz

Leo Schulz

20 6月 2025

AppleオンデバイスLLMをOpenAI互換APIに変換する方法:このリポジトリで

人工知能がクラウドからエッジへとますます移行する時代において、Appleは、新しく発表されたApple Intelligenceの核となるオンデバイス基盤モデルの導入により、大きな進歩を遂げました。これらの強力でプライバシーを保護するモデルは、ユーザーのデバイス上で直接実行され、これまでにない速度とデータセキュリティを提供します。しかし、業界標準であるOpenAI APIを中心に構築された開発者の広大なコミュニティやアプリケーションのエコシステムにとって、重要な疑問が生じます:既存のツールを完全に再設計することなく、この新しいオンデバイスの力をどのように活用できるのか?

その答えは、開発者コミュニティからエレガントで強力なソリューションの形で提供されました:「Apple On-Device OpenAI API」プロジェクトです。このオープンソースツールは、Appleの新しいAI機能と、おなじみのOpenAI APIの世界との間の見事な架け橋として機能します。これは、Mac上にローカルの軽量サーバーを作成し、OpenAI互換のエンドポイントを通じてAppleの基盤モデルを公開します。要するに、OpenAIと通信する方法を知っているあらゆるアプリケーションが、最小限の変更で、自分のAppleデバイス上で実行されているAIと直接通信できるようになります。

Apple On-Device OpenAI GitHubリポジトリページのスクリーンショット

本記事は、この画期的なリポジトリを理解し、インストールし、利用するための包括的なガイドとして機能します。なぜこのようなツールが必要なのかを掘り下げ、セットアッププロセスをステップバイステップで説明し、コード例を交えて実践的な使い方を探求し、将来の展望についても触れます。読み終える頃には、あなたのAppleデバイスを、すでに知っていて愛用しているツールやワークフローと完全に互換性のあるローカルAIパワーハウスに変えるための準備が整っているでしょう。

💡
美しいAPIドキュメントを生成する優れたAPIテストツールをお探しですか?

開発チームが最大限の生産性で共同作業できる、統合されたオールインワンプラットフォームをお探しですか?

Apidogはあなたのすべての要望に応え、Postmanをはるかに手頃な価格で置き換えます
ボタン

「なぜ」:オンデバイスの力とユニバーサルスタンダードの出会い

apple-on-device-openaiプロジェクトの重要性を十分に理解するには、それが結びつける2つの強力な力、すなわちオンデバイスAIの利点とOpenAI APIの普及について理解する必要があります。

オンデバイス革命:長年、強力なAIは大規模なデータセンターやクラウドベースの処理と同義でした。これは効果的ですが、プライバシー、レイテンシ、コストにおいて固有のトレードオフを伴います。モデルをローカルで実行することにより、Apple Intelligenceは魅力的な代替手段を提供します:

開発者のジレンマ:Appleは開発者がこれらの基盤モデルとやり取りするためのネイティブAPIを提供していますが、現実には、AI開発の大部分はOpenAI APIを中心に標準化されています。シンプルなスクリプトから複雑なエンタープライズレベルのシステムまで、数え切れないほどのアプリケーション、開発者ツール、ライブラリ、フレームワークが、OpenAI固有のリクエストおよびレスポンス構造を使用して通信するように構築されています。開発者にとって、新しいプラットフォーム固有のAPIを採用することは、大量のコードを書き直し、新しいパラダイムを学び、異なる標準間で作業を断片化することを意味します。

ここで、apple-on-device-openaiリポジトリがその計り知れない価値を提供します。これは、OpenAIを使用する世界とAppleネイティブのAIの間に位置する互換性レイヤー、翻訳者として機能します。これにより、開発者は既存のアプリケーションをOpenAIのサーバーではなく、ローカルサーバーアドレスに向けることができます。その後、ローカルサーバーは標準のOpenAIリクエストを受け取り、それをAppleの基盤モデルが理解できる呼び出しに変換し、デバイス上で処理し、応答をおなじみのOpenAI構造に戻してフォーマットします。これは「ドロップイン交換」であり、再開発の摩擦なしに可能性の世界を解き放つシームレスなソリューションです。

はじめに:前提条件とインストール

MacをローカルAIサーバーに変える前に、システムが準備できていることを確認する必要があります。このプロジェクトは、これらの新しいオンデバイスモデルが導入されたAppleのベータソフトウェアに依存しています。

前提条件:

前提条件が満たされたら、インストールには2つの方法があります:ほとんどのユーザー向けのシンプルで推奨されるアプローチと、コードを検査または変更したい開発者向けのソースビルドアプローチです。

オプション1:ビルド済みアプリをダウンロードする(推奨)

これが最も迅速かつ簡単な方法です。

  1. リリースページに移動:GitHubでプロジェクトの公式リポジトリを見つけます。ページの右側にある「Releases」セクションをクリックします。
  2. 最新バージョンをダウンロード:最新のリリースを見つけ、.zipファイルアセットをダウンロードします。
  3. 解凍して起動:ダウンロードしたら、ファイルを解凍するとアプリケーションが見つかります。アプリケーションフォルダに移動して起動します。それだけです。

オプション2:ソースからビルドする

魔法がどのように起こるかを見たい、あるいはプロジェクトに貢献したい開発者であれば、自分でビルドできます。

  1. リポジトリをクローン:ターミナルを開き、以下のコマンドを実行してソースコードをダウンロードします:Bash
git clone https://github.com/gety-ai/apple-on-device-openai.git
  1. ディレクトリに移動:新しく作成されたプロジェクトフォルダに移動します:Bash
cd apple-on-device-openai
  1. Xcodeで開く:このコマンドでXcodeでプロジェクトファイルを開きます:Bash
open AppleOnDeviceOpenAI.xcodeproj
  1. ビルドして実行:Xcode内で、「Build and Run」ボタン(再生アイコン)をクリックするだけで、アプリケーションをコンパイルして起動できます。

重要な注意点:なぜGUIアプリなのか?

なぜこのツールが単純なコマンドラインツールではなく、グラフィカルユーザーインターフェース(GUI)アプリケーションなのか疑問に思うかもしれません。プロジェクトの作者は、Appleのポリシーに基づいた非常に賢明な設計上の選択をしました。Apple DTSエンジニアによると、ユーザーインターフェースを持つフォアグラウンドアプリは、基盤モデルを使用する際にレート制限がありません。しかし、コマンドラインツールにはレート制限があります。サーバーをGUIアプリにパッケージ化することで、プロジェクトはスロットリングされることなく必要なだけ多くのリクエストを行うことを保証し、スムーズで制限のない開発体験を提供します。これは、プラットフォームの制約を回避してより良い製品を提供する、思慮深いエンジニアリングの完璧な例です。

使い方:サーバーの実行とAPI呼び出し

アプリケーションがインストールされたら、オンデバイスAIの力を解き放つ準備ができました。

1. サーバーの起動:

それだけです。これで、マシン上でバックグラウンドで静かにサーバーが実行され、OpenAI互換のAPIリクエストを受け付ける準備ができました。このアプリは、Apple Intelligenceモデルがシステムで利用可能で準備ができていることを確認するためのステータスチェックも提供します。

2. エンドポイントの理解:

サーバーは、管理とインタラクションのためにいくつかのエンドポイントを公開しています:

3. 実践例:

サーバーとのやり取り方法を見てみましょう。以下の例では、サーバーがデフォルトアドレスで実行されていると仮定しています。

curlを使用する(コマンドライン)

ターミナルからの簡単なテストには、curlコマンドを使用できます。これはサーバーに直接HTTPリクエストを送信します。Bash

curl -X POST http://127.0.0.1:11535/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "apple-on-device",
    "messages": [
      {"role": "user", "content": "オンデバイスAIの重要性を3つのポイントで説明してください。"}
    ],
    "temperature": 0.7,
    "stream": false
  }'

これを分解してみましょう:

OpenAI Pythonクライアントを使用する(開発者向け)

ここで互換性の真の力が発揮されます。openaiライブラリを使用するPythonコードがあれば、わずか2行のコードでローカルサーバーにリダイレクトできます。Python

from openai import OpenAI

# 標準のOpenAI APIアドレスではなく、ローカルサーバーを指す
client = OpenAI(
    base_url="http://127.0.0.1:11535/v1",
    api_key="not-needed"  # ローカルサーバーにはAPIキーは不要です
)

print("ローカルのApple AIモデルにリクエストを送信中...")

# これで、OpenAI APIを使用する場合とまったく同じようにクライアントを使用できます
response = client.chat.completions.create(
    model="apple-on-device",
    messages=[
        {"role": "user", "content": "夢を見ているコンピューターについての短い詩を書いてください。"}
    ],
    temperature=0.8,
    stream=True  # リアルタイム出力のためにストリーミングを有効にする
)

print("応答:")
# ストリーミング応答のチャンクを反復処理する
for chunk in response:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

print() # 最後に改行を入れる

この例では、重要な変更点はOpenAI()クライアントのインスタンス化です。base_urlをローカルサーバーに設定し、ダミーのapi_keyを提供することで、client.chat.completions.createへのその後のすべての呼び出しはオンデバイスモデルにルーティングされます。stream=Trueパラメータは、生成されたトークンをサーバーがストリームバックする能力を示しており、アプリケーションでリアルタイムのタイプライターのような効果を可能にします。

テストとAPI互換性

すべてが期待通りに機能していることを確認するために、リポジトリには便利なテストスクリプトが含まれています。サーバーを起動した後、ターミナルを開き、プロジェクトディレクトリに移動して、以下を実行できます:Bash

python3 test_server.py

このスクリプトは、サーバーのヘルス、モデルの可用性、複数ターンの会話ロジック、およびストリーミングと非ストリーミングの両方の応答を検証する包括的なテストスイートを実行します。これは、セットアップが正しいことを確認し、より多くの使用例パターンを見るための優れた方法です。

サーバーは、OpenAI Chat Completions APIの最も重要なパラメータをサポートしています:

結論と将来の展望

apple-on-device-openaiプロジェクトは、単なる巧妙なコード以上のものです。それはイノベーションのための重要な触媒です。これは、Appleの強力でプライベートかつ高速なオンデバイスAIへのアクセスを民主化し、急な学習曲線や高価な再開発なしに、開発者やアプリケーションの広大なエコシステムで利用できるようにします。OpenAI APIというデファクトスタンダードを採用することで、今日私たちが使用しているツール、スクリプト、サービスが、明日のオンデバイスAIからシームレスに恩恵を受けられるようにします。

このプロジェクトはまだ進化しており、将来の機能を示唆する魅力的なヒントがあります。READMEには「Tool Using (WIP)」と記載されており、これは関数呼び出し、つまりAIモデルが外部ツールやAPIを呼び出す能力が間近に迫っていることを示唆しています。これにより、モデルの有用性は指数関数的に増加し、テキストを生成するだけでなく、アクションを実行したり、ライブデータを取得したり、他のアプリケーションと対話したりすることが可能になります。これらすべてをオンデバイスのプライバシーコアを維持しながら行います。

より強力で個人的かつプライベートなAIを求める世界において、洗練されたモデルをローカルで実行できる能力はゲームチェンジャーです。apple-on-device-openaiリポジトリは、技術的なギャップを埋めるオープンソース開発の力の証として立っており、開発者が次世代のインテリジェントアプリケーションを構築することを可能にするシンプルかつ奥深いソリューションを提供します。

💡
美しいAPIドキュメントを生成する優れたAPIテストツールをお探しですか?

開発チームが最大限の生産性で共同作業できる、統合されたオールインワンプラットフォームをお探しですか?

Apidogはあなたのすべての要望に応え、Postmanをはるかに手頃な価格で置き換えます
ボタン

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる