このページの本文へ

Windows Info 第479回

Copilot+ PCで利用できる「Windows Copilot Runtime」を試す ローカル推論用モデル「Phi Silica」とは?

2025年04月27日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

 前回(「Copilot+ PCでNPUを使ってローカル推論 「Windows Copilot Runtime」を試す」)の続きとして、紹介しきれなかったWindows Copilot Runtimeの「イメージ関連機能」とともに「Phi Silica」の解説をする。

入力された画像を要約する機能を試す

 Windows Copilot Runtimeには、イメージを対象にした機能もある。「Image Description」は画像の説明をするもので、実際に画像(スペインの市場での果物店の写真)を見せたところ、

The image depicts a vibrant fruit market with an array of colorful fruits, including apples, oranges, pears, and more, neatly arranged in a display with various price tags.
(この画像は、リンゴ、オレンジ、ナシなどを含むカラフルな果物の配列を備えた活気のある果物市場を描いており、さまざまな価格のディスプレイにきちんと配置されています)

と画像の説明をつけた(日本語はGoogle翻訳を利用)。

Windows Copilot Runtime

画像を説明するタスクをしたところ。フルーツやリンゴ、オレンジ、梨、プライスタグといった写真内のものが言語化されている

 「Text Recognizer」では、ブラウザのウィンドウから切り抜いたテキスト部分を認識させたが、日本語でもほとんど問題のないレベルで認識ができた。

Windows Copilot Runtime

ASCII.jpのページをキャプチャして、認識させてみた

 面白いのは、このときにNPUやCPU、GPUの負荷が軽いこと。また、テストはインターネットに接続してない状態でしている。

Windows Copilot Runtime

文字認識は、NPUの負荷が低く、Phi Silicaは起動してなさそうな感じがある。もちろんインターネット接続なしで認識が可能

 Windows Copilot Runtimeでは、NPUを使ったローカル推論が可能で、その動作には必ずしもインターネット接続は必要ない(ただし、回答には違いが出ることがある)。

 Copilot+ PCのNPUは、高性能であることよりも、高い性能を少ない消費電力で実現しているところに大きな意味がある。つまり、必ずしもインターネット接続が可能ではない外出中の利用で、バッテリを減らすことなくAIを利用できるからだ。

Phi Silicaとは何?

 Phi Silicaは、トランスフォーマーを使う小規模言語モデル「Phi-3.5-mini」から作られたローカル推論用モデルだ。NPUが半導体であることから、Silicaとは「Silicon」(シリコン)に由来すると考えられる。

 言語モデルとは、英語や日本語などの文章を使って構築されたディープラーニングAIをいう。学習にいくつかの方式があるが、大まかには以下の図のような構造を持つ。

Windows Copilot Runtime

言語モデルは、5つのブロックに分かれ、入力されたプロンプト文(テキスト)をトークン化、ベクトル化して、中心部であるTransformerブロックに入力する。出力は逆にベクトル、トークン、テキスト化して出力される

 入力された文章(プロンプト)は、まず、「トーカナイザー(Tokenizer)」でトークン(実態は整数値)に分解される。ただし、トークンは、単語と1対1に対応しているわけではなく、つづりの一部であるなど、人間の言語とは異なる部分がある。

 トークン化されたプロンプトは、次に「埋め込みレイヤー」で複数のベクトルに変換される。このベクトルは、連続するトークン列から言葉の意味を表すベクトルに変換され、プロンプトの文脈や意味を符号化したものになる。

 Phiの場合、言語モデルの学習にTransfomerを使う。根幹部分は、「Transformerブロック」と呼ばれ、ここにプロンプトのベクトル表現が入る。

 「Transformerブロック」では、入力ベクトルから次のトークン示す出力ベクトルを計算していく。このようにして複数の出力ベクトルができると、「言語モデルヘッド」は、ベクトルから最も確率の高いトークンを選択していく。この様子は、ドミノ倒しのように1つのトークンからそれに続く確率の最も高いトークンを選ぶことを繰り返す。

 最後にトークンを「デトーカナイザー(Detokenizer)」を使って自然文に戻して出力とする。

 英語、中国語(簡体字)、フランス語、ドイツ語、イタリア語、日本語、ポルトガル語、スペイン語で学習がなされている。入力文(プロンプト)の長さは最大2K(2000)となっているが、これはトークンで数えた場合の数値である。

 言語モデルの学習とは、「Transformerブロック」を構築することである。このときにTransformerという手法が使われる。この手法では、「日本の首都は東京です」という学習データがあったとき、「日本の首都は〇〇です」という穴埋め問題を解かせる。Transformerは、多くの言語モデルに採用され、たとえばChatGPTのGPTも「Generative Pre-trained Transformer」の略で、Transformerを使って作られた。

 Copilot+ PCのSnapdragon Elite X 12 NPUを使うことで、AI処理はCPU処理(比較対象は第12世代Core i7)と比べて、最大20倍の速度を実現し、それをCPU+GPUでの100倍の電力効率ですることが可能になる。Phi Silicaのコンテキスト処理はNPUでわずか4.8mWhの電力しか消費しなかったという。

 Phi Silica自体もコンパクトなPCのメモリで動作させるため、さまざまな工夫がなされているという。たとえば、ニューラルネットワークの重みは、4bitで表現されているという。

 前回解説したようにPhi Silicaは、Windows App SDK(Project REUNION)に含まれている。

 現状、Windows Copilot RuntimeのRecallやClick To Doは、プレビュー版Windowsでの提供に限られており、Copilot+ PCでも通常版Windows 11 Ver.24H2では利用できない状態だ。ここは、頑張っていただいて、日本語を含め、通常版Windowsで早く利用できる状態にしてほしいところである。

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン