※ この記事にはアフィリエイト広告が含まれることがあります。
アプリの開発やMacの環境設定を進めるとき、私はCodexのようなフロンティアモデルを使っています。 一方、自分で作っているアプリには、Mac上で動くローカルのモデルを組み込んでいます。 同じAIを使うにしても、作業の進め方はずいぶん違います。
2026年11月の時点で、何にどのようなAIを使っているのか、記録しておきます。
開発や環境設定にはフロンティアモデルを使う
アプリを開発するときは、実装だけでなく、調査や設計、不具合の原因を探す作業にもCodexを使っています。 Macのローカル環境の設定を進めるときにも使います。
コードを書いて終わりではなく、実際に何が起きているのかを確認しながら進めます。 テストが通っても、使いたい操作ができるとは限りません。 アプリの画面や出力を確認し、想定と違えば調べ直してもらいます。
別の見方が欲しいときには、Geminiにセカンドオピニオンを求めることもあります。 同じ対象について違う回答を得られれば、最初の回答では見えていなかった点を確認できます。
アプリの中ではローカルのモデルを使う
自分で使うアプリにもAIを組み込んでいます。 開発の相談相手として使う場合と違い、アプリの機能として、決まった入力をモデルへ渡し、返ってきた結果を表示したり保存したりします。
使っているMacは、64GBのユニファイドメモリを搭載したM5 Max MacBook Proです。 このMacで動作する範囲のモデルを選び、用途に合わせて使っています。
大きめの汎用モデルでは、Qwen3.5 35BやOrnith 1.5 35B、Qwen3.8 27Bを使ってきたと記憶しています。 今は、これらの中ではサイズが小さめのQwen3.8 27Bを使っています。 モデルを動かす環境も、以前使っていたLM Studioから、Apple Silicon搭載Mac向けのローカルLLM推論サーバーであるoMLXに変わりました。
Newzsnacで記事を読む
Newzsnacは、自分が読みたい記事を集めるためのニュースリーダーです。 RSSやAtom、Hacker News、Bluesky、Zennから記事を収集します。
集めた記事は、ローカルLLMに渡して日本語の要約やKEY POINTS、ラベル、読む優先度を作ります。 英語の記事を読みたいときには、本文を日本語へ翻訳することもできます。
記事を読んでいて疑問があれば、その記事の画面からローカルLLMに質問します。 記事の本文や、それまでの問答を文脈として渡すので、記事を見ながら話を続けられます。 別のAIにも聞きたいときは、URLや要約、問答履歴をまとめた文章を作り、自分でコピーして渡せます。
また、「気になった」を付けた記事に近い未読記事を見つけるため、埋め込みモデルも使います。 記事をベクトルに変換し、内容の近さを調べるためのモデルです。 文章を生成するモデルとは役割が違います。
Newzsnacについては、Macで自分用ニュースリーダーを動かしたときの記事にも書きました。
Research Shelfで買い物の情報を整理する
Research Shelfは、買い物のために調べた情報を、調査ごとに残すMacアプリです。 Safariで見ているページから本文や画像の候補を取り込み、自分のメモと一緒に保存できます。
取り込んだページの解析にもローカルLLMを使います。 ページの種類や主題を判定し、商品名、メーカー、仕様、価格、評価などを整理します。 画像に対応したモデルなら、代表写真の候補を選ぶ処理にも使えます。 元のページのどこを根拠にしたかも確認できるようにしています。
複数の候補を比べるための比較レポートも作れます。 保存したメモやページの情報を渡し、共通の項目を整理してMarkdownの表を生成します。 生成した表は編集して調査に保存できますが、内容や出典は元のメモやページと照らし合わせる必要があります。
KotodamaVoiceで音声を文字にする
KotodamaVoiceは、Macのメニューバーから使う音声入力アプリです。 話した内容を文字にして、クリップボードや入力欄へ渡します。
文字起こしには、Macに取得したWhisperや日本語向けのHaas-ja-v1.0を選べます。 Haas-ja-v1.0に対応したKotodamaVoice 1.2.0を公開しました。 文字起こしの後には、必要に応じて別のモデルで文章を整えることもできます。 音声認識のモデルと、文章整形のモデルは別の役割です。
アプリには用語集もあります。 固有名詞などを登録し、音声認識のヒントとして渡したり、文章整形時に表記を補正するために渡したりできます。 ただし、登録すれば必ず意図した表記になるわけではありません。
音声認識と文章整形の両方をローカルで実行する設定なら、処理する音声や文字起こし結果を外部サービスへ送らずに使えます。 外部のエンドポイントを設定して使うこともできます。
モデルを選ぶことと、用途に合うこと
ローカルで使う汎用モデルは、その時点で私のMacBook Proで動作する範囲の中から、よさそうなものを選んでいます。 ただ、動かせることと、任せたい仕事に適していることは別です。 今選んでいるモデルが、それぞれの用途にどの程度適しているのかは、まだよく分かっていません。
以前、ローカルモデルにコードの修正を依頼したときは、テストが通っても配布や更新に関わる問題が残り、レビューと修正に時間がかかりました。 そのときに試した環境や結果は、ローカルLLMの使い分けについての記事に書いています。
最近は、モデルの重みを調整する試みを行っている人も多いようです。 私も、自分の用途に合うように調整できるのか、これから調べていきたいと思っています。