ろぼいんブログ
更新:

GPT-4oの概要から使い方まで徹底解説!OpenAIの次世代フラッグシップモデル

ChatGPTの選択肢に表示されているGPT-4oのスクリーンショット

2024年5月13日、OpenAIは次世代のフラッグシップモデルであるGPT-4oを発表しました。GPT-4oは、音声、ビジョン、テキストをリアルタイムに推論できます。この記事では、GPT-4oの概要から使い方までを徹底解説します。

なお、GPT-4oが発表されたイベント「Spring Update」では、GPT-4oの他にもさまざまな新機能やアップデートが発表されました。詳細については、こちらの記事を参照してください。

GPT-4oの概要

Mira Murati氏がステージに立っており、背後のスクリーンには「GPT-4o」と書かれている
GPT-4oを発表するMira Murati氏。画像は 公式YouTube より

GPT-4o(「o」は「omni」、つまり全能の意味)は、その名前が示す通り、より自然なヒューマン・コンピュータ・インタラクションを目指して設計されました。

GPT-4oは、テキスト、音声、画像の任意の組み合わせを入力として受け取り、テキスト、音声、画像の任意の組み合わせを出力できます。音声入力に対して最小で232ミリ秒、平均320ミリ秒で応答でき、人間の会話の反応時間とほぼ同じです。英語やコーディングにおいてはGPT-4 Turboと同等の性能を発揮し、多言語テキストの対応も大幅に改良されています。

従来のGPT-4やGPT-3.5を利用したVoice Modeでは、平均してそれぞれ2.8秒と5.4秒の遅延が存在していましたが、GPT-4oでは大幅に短縮されました。さらに、GPT-4oはエンドツーエンドでテキスト、ビジョン、音声を統合してトレーニングされた新しいモデルで、すべての入力と出力が同じニューラルネットワークによって処理されます。従来のGPT-4では、音声認識モデルから言語モデルへのデータの受け渡しの過程で一部の情報が欠落していましたが、GPT-4oではそのようなロスを軽減できます。

さらに、GPT-4oは、現行のGPT-4 Turboよりも視覚・音声理解能力が格段に向上しており、50%のコスト削減と2倍の処理速度を実現しています。トークナイザーも改良されており、日本語では同一テキストのトークン数が以前の1.4分の1になりました。大規模言語モデル(LLM)のAPIではトークン数によって料金が決定されるため、トークン数の削減によって利用料が安価になります。今回のアップデートにより、日本語のテキストをAPIで扱う際の料金が単純計算でGPT-4 Turboの2.8分の1に低下することになります。

モデルの評価

GPT-4oは、テキスト、推論、コーディングの面でGPT-4 Turboと同等の性能を実現し、多言語、音声、視覚の性能において高水準を達成しています。また、GPT-4oは、音声モダリティにおいても高い性能を発揮し、音声入力に対して最小で232ミリ秒、平均320ミリ秒で応答できることが確認されています。

前モデルでは、音声をテキストに変換し、テキストを処理し、再度音声に変換するという段階的なプロセスが必要でしたが、GPT-4oは単一のモデルですべてをカバーします。これにより、トーンや話者の人数、背景ノイズなどの情報を直接受け取り、笑い声や歌、感情を表現することが可能になっています。

OpenAIが公開したデモ動画では、GPT-4oの感情豊かな音声を聞くことができます。

セキュリティと安全対策

GPT-4oは、サイバーセキュリティ、CBRN、安全性と公平性、誤情報の評価において「中リスク以下」の評価を受けたとのことです。これらの評価は、カスタムファインチューニングとプロンプトを使用してモデルの能力をよりよく引き出すための一連の自動または手動の評価にもとづいています。

音声モダリティに関しては、新たなリスクがあるとして、とくに安全性に配慮したガードレールが導入されています。初期段階では、あらかじめ設定されたプリセット音声のみを選択でき、既存の安全ポリシーに従うとされています。これにより、一般的なリスクを最小限に抑えられます。

GPT-4oの使い方

GPT-4oのテキストおよび画像の機能は、ChatGPTの無料ユーザーと、有料のChatGPT Plus利用者に向けて提供が開始されました。Plusユーザーには無料ユーザーの5倍のメッセージ制限が適用され、数週間以内に新しいVoice Modeもアルファ版として提供される予定です。

現在、ChatGPTではデフォルトでGPT-4oが利用されているため、特別な設定は不要です。無料ユーザーはGPT-4oの利用量に制限があり、制限に達すると従来のGPT-3.5が利用されます。ChatGPTの出力の下部に星のアイコンが表示され、これをクリックすることで、GPT-4oとGPT-3.5のの出力を切り替えられます。

ChatGPTの選択肢に表示されているGPT-4oのスクリーンショット
ChatGPTの出力の下にモデルを選択できるアイコンが表示される

開発者は、GPT-4oをAPI経由で利用できます。GPT-4 Turboと比較して、2倍の速度で処理しつつ、半分のコストで利用が可能です。これにより、コストが抑えられつつも、高度な機能を幅広いアプリケーションに統合できます。さらに、GPT-4oの新しい音声機能とビデオ機能も近々、信頼できるパートナー向けに提供される予定です。

GPT-4oのAPIはすでに利用できるようになっており、モデルの一覧から選択できるようになっています。価格は、入力が100万トークンあたり5ドル、出力が100万トークンあたり15ドルです。

ChatGPTのAPIのモデルの選択画面のスクリーンショット。[gpt-4o]が選択されている
APIではすでに[gpt-4o]を選択できるようになっている

OpenAI PlatformのPlayground を使うと、コードを書かずにAPI経由でGPT-4oを試せます。Playgroundは、APIのリクエストとレスポンスを簡単に確認できるため、APIの使い方を学ぶのに最適です。

また、例として、PythonからGPT-4oのAPIを利用する場合と、コマンドラインから利用する場合のサンプルコードを示します。なお、APIを利用するには、APIキーが必要です。APIキーは、他人と共有しないように注意してください。

try{(()=>{function a(e){if(!e)return;let t=e.getAttribute("tabindex")!==null,n=e.scrollWidth>e.clientWidth;n&&!t?e.setAttribute("tabindex","0"):!n&&t&&e.removeAttribute("tabindex")}var u=window.requestIdleCallback||(e=>setTimeout(e,1)),i=window.cancelIdleCallback||clearTimeout;function l(e){let t=new Set,n,r;return new ResizeObserver(c=>{c.forEach(o=>t.add(o.target)),n&&clearTimeout(n),r&&i(r),n=setTimeout(()=>{r&&i(r),r=u(()=>{t.forEach(o=>e(o)),t.clear()})},250)})}function d(e,t){e.querySelectorAll?.(".expressive-code pre > code").forEach(n=>{let r=n.parentElement;r&&t.observe(r)})}var s=l(a);d(document,s);var b=new MutationObserver(e=>e.forEach(t=>t.addedNodes.forEach(n=>{d(n,s)})));b.observe(document.body,{childList:!0,subtree:!0});document.addEventListener("astro:page-load",()=>{d(document,s)});})();}catch(e){console.error("[EC] tabindex-js-module failed:",e)}try{(()=>{function i(o){let e=document.createElement("pre");Object.assign(e.style,{opacity:"0",pointerEvents:"none",position:"absolute",overflow:"hidden",left:"0",top:"0",width:"20px",height:"20px",webkitUserSelect:"auto",userSelect:"all"}),e.ariaHidden="true",e.textContent=o,document.body.appendChild(e);let a=document.createRange();a.selectNode(e);let n=getSelection();if(!n)return!1;n.removeAllRanges(),n.addRange(a);let r=!1;try{r=document.execCommand("copy")}finally{n.removeAllRanges(),document.body.removeChild(e)}return r}async function l(o){let e=o.currentTarget,a=e.dataset,n=!1,r=a.code.replace(/\u007f/g,` `);try{await navigator.clipboard.writeText(r),n=!0}catch{n=i(r)}if(!n||e.parentNode?.querySelector(".feedback"))return;let t=document.createElement("div");t.classList.add("feedback"),t.append(a.copied),e.before(t),t.offsetWidth,requestAnimationFrame(()=>t?.classList.add("show"));let c=()=>!t||t.classList.remove("show"),d=()=>{!t||parseFloat(getComputedStyle(t).opacity)>0||(t.remove(),t=void 0)};setTimeout(c,1500),setTimeout(d,2500),e.addEventListener("blur",c),t.addEventListener("transitioncancel",d),t.addEventListener("transitionend",d)}function s(o){o.querySelectorAll?.(".expressive-code .copy button").forEach(e=>e.addEventListener("click",l))}s(document);var u=new MutationObserver(o=>o.forEach(e=>e.addedNodes.forEach(a=>{s(a)})));u.observe(document.body,{childList:!0,subtree:!0});document.addEventListener("astro:page-load",()=>{s(document)});})();}catch(e){console.error("[EC] copy-js-module failed:",e)}
gpt-4o-api.py
from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{
"role": "system",
"content": [
{
"type": "text",
"text": "<ここにシステムプロンプトを入力>"
}
]
},
{
"role": "user",
"content": [
{
"type": "text",
"text": "<ここにユーザーからのメッセージを入力>"
}
]
}
],
temperature=1,
max_tokens=256,
top_p=1,
frequency_penalty=0,
presence_penalty=0
)

以下は、コマンドラインからGPT-4oのAPIを利用する場合のサンプルコードです。$OPENAI_API_KEYには、実際のAPIキーを設定してください。また、環境によっては改行する方法が異なる場合があるので、適宜修正してください。たとえば、WindowsのPowerShellでは、末尾の/をバッククォート(`)に置き換える必要があります。

Terminal window
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-4o",
"messages": [
{
"role": "system",
"content": [
{
"type": "text",
"text": "<ここにシステムプロンプトを入力>"
}
]
},
{
"role": "user",
"content": [
{
"type": "text",
"text": "<ここにユーザーからのメッセージを入力>"
}
]
}
],
"temperature": 1,
"max_tokens": 256,
"top_p": 1,
"frequency_penalty": 0,
"presence_penalty": 0
}'

まとめ

GPT-4oは、モデルはマルチモーダルな機能を備え、テキスト、音声、画像の任意の組み合わせをリアルタイムで処理することが可能です。従来のモデルと比較して、処理速度が大幅に向上し、コストも削減されています。さらに、安全対策も強化されており、多岐にわたるリスクへの対応が図られています。

すでに無料およびPlus利用者に向けて提供が始まっており、開発者向けのAPIも公開されています。

GPT-4oの登場により、OpenAIのサービスはさらに進化し、ユーザーにとって使いやすくなりました。今後のOpenAIの動向に注目です。

参考

おすすめのサイト

AIやメタバースについては、こちらのサイトも是非参考にしてみてください↓

おすすめアイテム

※このリンクを経由して商品を購入すると、当サイトの運営者が報酬を得ることがあります。詳細はこちら

このサイトを支援する

Buy Me a CoffeeまたはGitHub Sponsorsで支援していただけると、サイトの運営やコンテンツ制作の励みになります。定期的な支援と一度限りの支援がありますので、お間違いのないようにお願いします。

Buy me a coffee

著者のアイコン画像

生まれた時から、母国語よりも先にJavaScriptを使っていました。ネットの海のどこにもいなくてどこにでもいます。

Webフロントエンドプログラマーで、テクノロジーに関する話題を追いかけています。動画編集やプログラミングが趣味で、たまにデザインなどもやっています。主にTypeScriptを使用したWebフロントエンド開発を専門とし、便利で実用的なブラウザー拡張機能を作成しています。また、個人ブログを通じて、IT関連のニュースやハウツー、技術的なプログラミング情報を発信しています。

最新記事