2023年3月14日、OpenAIは公式のGPT4モデルをリリースしました。詳細は、OpenAIブログにて確認することができます。また昨年11月の公開以来の詳しい情報をお知りになりたい場合は、当社のブログでもご覧いただけます。
OpenAIは「深層学習のスケールアップに向けた取り組みの最新マイルストーン」と呼ぶ、画像およびテキストの理解に優れた新しいAIモデル、GPT-4をリリースしました。
GPT-4は、2023年3月15日よりOpenAIの有料ユーザーに限りChatGPT Plus(使用量制限付き)で利用可能で、開発者はAPIにアクセスするために待機リストにサインアップすることができます。
ChatGPT API (gpt-4)とWhisper APIs とは
ChatGPT API (モデル GPT-4)
モデル: OpenAI は、「深層学習のスケールアップに向けた取り組みの最新マイルストーン」と称する、画像とテキストの高度な理解AIモデル「GPT-4」をリリースしました。
GPT-4は、2023年3月15日からOpenAI の有料ユーザー向けにChatGPT Plus(使用量制限付き)を介して利用可能であり、開発者はAPI にアクセスするためのウェイトリストにサインアップすることができます。
GPT-3.5 の前身であるGPT-3が、テキストのみを受け入れることができたのに対し、GPT-4 は、テキスト入力と画像入力の両方が可能となり、さまざまなプロフェッショナルや学術的なベンチマークで「人間レベル」の性能を発揮します。例えば、GPT-4 は司法試験の模擬テストを受けて、受験者のトップ10%程度のスコアを取得しています。ちなみにGPT-3.5 は、下位10%程度のスコアでした。
OpenAIは、社内における別のテストプログラムやChatGPT からの学習例を用いて、GPT-4 を6か月間「反復的に整合させる」ことにより、事実との整合性、操縦性、規範からの非逸脱性といった面で「過去最高の結果」をマークしました。過去のGPTモデルと同様に、GPT-4 は、パブリックなウェブページや、OpenAI がライセンスしたデータを含む公開されているデータを使用して訓練されました。
OpenAI はMicrosoftと協力してAzureクラウド上で一から「スーパーコンピューター」を開発し、これを活用してGPT-4を訓練しました。
OpenAI は、GPT-4 を発表した際のブログ内で、「日常的な会話では、GPT-3.5 とGPT-4 の違いはわずかかもしれません。しかし、やり取りが複雑になると、その違いが明らかになります。GPT-4 は、GPT-3.5よりも信頼性が高く、創造性があり、より微妙で曖昧な指示を処理することができます。」と述べています。
さらにGPT-4 の興味深い特徴は、画像とテキストの理解能力の高さです。GPT-4は、比較的複雑な画像をキャプション付きで理解し、解釈することができます。例えば、充電中のiPhoneの画像からライトニングケーブルアダプターを識別することが可能です。
ただしこの画像理解能力は、まだすべてのニーズに適応できるレベルには至っていません。OpenAI は、最初にBe My Eyesという提携企業と協力してテストを行っています。GPT-4 は、Be My Eyesの新しいVirtual Volunteer機能を併用することにより、送信された画像に関する質問に回答することができるようになります。OpenAI は、その仕組みについてブログ内で以下のように説明しています。
『GPT-4 においてもっとも意義深い改善点は、指示性ツールを導入したところです。具体的には、開発者が具体的な指示を記述することでスタイルやタスクを定めることができる新しいAPI 機能「システムメッセージ」のことを指します。将来的にはChatGPT でもシステムメッセージが利用可能になる予定で、これはAIとの相互交流を経ながら論調を設定したり、言及する領域を確立したりできる指示ツールです。
たとえば、システムメッセージは次のような指示を GPT-4 に出すことがあるかもしれません。「あなた(GPT-4)は常にソクラテス的なスタイルで応答するチューターです。生徒に答えを与えることはせず、彼らが自分で考える手助けをするために適切な質問をするように心がけてください。生徒の興味や知識に合わせて質問を工夫し、問題をより簡単な部分に分解して、生徒にとって適切なレベルに調整する必要があります。」
ただし、システムメッセージやその他のアップグレードがあっても、OpenAI はGPT-4 がいまだ完璧ではないことを認めています。GPT-4 は、まだ事実を取り違えることがあり、推論エラーを起こすこともあります。ときには過信しすぎることも。例えば、GPT-4 はエルビス・プレスリーを「俳優の息子」と説明しおり、これは明らかな誤りです。』と。
API : 従来、GPTモデルは構造化されていないテキストを使用してきました。これは、一連の「トークン」としてモデルに表されます。 一方、ChatGPTモデルはこの代わりに、一連のメッセージをメタデータと共に消費します。 (興味深いのは、内部では入力は引き続きモデルが消費する一連の「トークン」として(モデルに)レンダリングされている点です。モデルが使用するのは、Chat Markup Language (「ChatML」) と呼ばれる新しい形式です。)
OpenAIはChatGPT モデルとやり取りするための新しいエンドポイントを作成しました。
ChatGPT API の詳細については、OpenAIのチャット ガイドをご覧ください。
「ウィスパー」(Whisper)API
2022 年 9月にオープンソース化した音声からテキストへの変換モデルであるウィスパーは、IT業界から絶大な称賛を受けています。ただし現段階ではまだ実行が難しいケースもあります。また、 API を通じて大規模な v2 モデルを利用できるようになりました。これにより、1 分あたり 0.006 ドルの便利なオンデマンド アクセスが可能になります。 さらに、高度に最適化されたサービス スタックにより、他のサービスよりも高速なパフォーマンスが保証されます。
Whisper API は、テープ起こし (ソース言語での転写) または翻訳 (英語への転写) エンドポイントなどを通じてさまざまな形式 (m4a、mp3、mp4、mpeg、mpga、wav、webm) で利用できます。
Whisper API の詳細については、Speech-to-Text ガイドをご覧ください。
GPT-4 と Whisper APIs の利点
利点
GPT-4 の利点は以下の通りです。
- 画像を見てその内容を理解する
インプット:What can I make with these ingredients?
アウトプット:
There are many options for what you can make with these ingredients! Some possibilities include:
– Pancakes or waffles
– Crepes
– French toast
– Omelette or frittata
– Quiche
– Custard or pudding
– Cake or cupcakes
– Muffins or bread- Cookies or biscuits
この多目的な機械学習システムのもっとも目をひく変更点は、「マルチモーダル」であるということです。これは、複数の情報の「モダリティ」が理解できることを意味します。ChatGPT やGPT-3 はテキストに限定されており、読み書きはできるものの、それが限界でした(しかも多くのアプリケーションにとっては不十分なものでした)。
しかし、GPT-4 は画像を与えられると、関連情報を見出すためにそれらの情報を極めて緻密に処理します。もちろん、単に画像に何があるかを説明するように指示することはできますが、より注目すべきは、その理解度がそれ以上に深いという点です。OpenAIが挙げている例では、滑稽なほど大きなiPhoneコネクタ画像に対してジョークを交えて説明しています。また、Be My Eyesと連携すると、その理解度はさらに深まります。
参考: Be My Eyes
例えば、Be My Eyesの動画ではGPT-4が、
・ドレスの柄を説明
・植物を識別
・ジム内で特定のトレーニング器具のある場所に行く方法を説明
・ラベルを翻訳してレシピを提供
・地図の判読
など、それ以外にも多数のタスクを実行しています。正しい質問がなされれば、GPT-4が画像の中に何があるかをその背景や状況を汲み取ることでより深く理解していることがわかります。これにより例えば、画像に写されたドレスが面接にふさわしい服装であるかどうかを答えることもできるのです。
- 長期記憶力を持つ
大規模な言語モデルは、何百万点ものウェブページや書籍、その他のテキストデータを使って訓練されますが、実際にユーザーと会話している場合にその内容をすべて記憶に留めておくには限界があります。GPT-3.5および旧バージョンのChatGPTの上限は4,096トークンで、せいぜい約8,000語またはおおよそ本の4〜5ページくらいです。
一方、 GPT-4 の最大トークン数は32,768で、これは2の15乗に相当し、約64,000語あるいは本の50ページの量に匹敵します。つまり、会話やテキスト生成中に、50ページ程度の内容を記憶に留めておくことができるのです。そのため、例えば20ページ先で話したことを明確に覚えていますし、物語やエッセイを書く場合には、35ページ前の出来事を参照とすることも可能になるのです。
- 多言語対応が可能
AIの世界は英語圏が基盤のため、データやテスト、研究論文などすべてが英語で書かれています。しかし、大規模言語モデルの能力はあらゆる言語で役立つため、英語以外の言語でも利用可能になるべきでしょう。
GPT-4 は、イタリア語やウクライナ語、韓国語など、26の言語において高い精度で数千の多肢選択問題に回答できるように作られています。ロマンス諸語やゲルマン諸語に最も適していますが、他の言語でも汎用性が広がっています。
上記の言語能力テストの結果は、高く評価できるものでした。というのも、テスト内容は英語から翻訳されたものであり、英語以外の多言語をそのまま使用したものではありませんでした。しかし、GPT-4は、特別に訓練されたわけではない言語においても非常に優れた成績を収めたのです。よって、英語圏外の人たちにとっても馴染みやすく、非常に身近な存在となる可能性があるといえます。
Whisper API は、正確な音声テキスト変換機能が必要な人にとって最適なツールです。 インタビューの書き起こし、お気に入りの番組字幕の作成、さらには音声起動アシスタントの開発などに活用できます。しかもほぼすべての種類のオーディオ ファイルで使用可能です。
実際の活用事例
Doulingo
Duolingoは、AI会話パートナーである「Role Play」と、間違った際にルール説明を行う「Explain my Answer」という2つの新機能を備えた新しいサブスクリプションティア「Duolingo Max」を展開するために、OpenAI の GPT-4 を活用しました。「当社では、アプリに深く統合可能で、学習者が好む Duolingo のゲーム化された側面を活用する AI を利用した機能が必要でした」とプロダクトマネージャーのBodge氏は述べています。
Duolingoのエンジニアたちは、以前のチャット機能でいくつかのより人間らしい機能を補完するためにGPT-3 を使おうと試みました。「ほぼ完成間近だった」とリードエンジニアのBill Peterson氏は述べていますが、「複雑に自動化されたチャットの機能を自信を持って統合できるレベルにまでは達していなかった」と述べています。
かつてDuolingoは、「食べ物を注文する」「初めて誰かに会う」あるいは「飛行機のチケットを購入する」など単純なセリフを使って学習者とチャットしようと試みました。しかし、Bodge氏は、Duolingoが必要としていたのは、ニッチな文脈で学習者と会話をすること、そしてバスケットボールの楽しさや山の頂上にたどり着いたときの喜びなどについて深く好きなように会話する、といった能力でした。その意味で GPT-4 は、十分な公共データからの学習を経て、非常に柔軟な応答を生み出すことができるようになったため、Bodge氏にとっては当初の狙いに近づいたのです。
Duolingoのチームは、GPT-4 の可能性に強く着目しており、従来よりも効果的で魅力的な学習体験が提供されることによって学習成果が改善されると考えています。さらに、Peterson氏は、GPT-4 は実験がしやすいため、エンジニアリングプロセス全体を簡素化したと述べています。
「私たちは、わずか1日でプロトタイプを構築することを求め、それにより0から95%までの作業を迅速に行えるようになりました。そして、最後の5%だけ手作業によるデータの微調整をすれば済むように仕上げることができたのです」
Speak
Speakは、話すことに重点を置き、最高の学習経路を構築するAIを活用した、言語学習アプリです。Speakは韓国で最も急成長している英語アプリで、すでにWhisper APIを使った新しいAIスピーキングコンパニオン製品を世界展開しています。Whisperは人間レベルの高い会話精度をもつため、すべてのレベルの言語学習者に対して真のオープンエンドの会話練習と高精度なフィードバックを可能にします。
ChatGPT API(GPT-4)とWhisper APIの使い方
GPT-4 API へのアクセス権を取得するには、OpenAIの順番待ちリストにサインアップしてください(これは gpt-3.5-turbo と同じChatCompletions APIを使用しています)。OpenAI は2023年3月15日より数を制限しながら開発者を招待し始め、需要とキャパシティのバランスをとりつつ徐々にスケールアップしていく計画です。AIの社会的影響やAIの整合性問題を研究している研究者の場合、Researcher Access Programを通じて助成アクセスを申請することもできます。
アクセス権を取得したら、テキストのみのリクエストを gpt-4 モデルに送信することができます(画像入力は限定的なアルファ版のままです)。新しいバージョンを作成するたびに、推奨される安定したモデルに自動的に更新します(現在のバージョンを gpt-4-0314 と呼び出して、2023年6月14日までサポートします)。
APIキーを取得
API キーを取得する必要があり、使用する際にはAPI ドキュメントに従ってリクエストを行います。
ChatGPT API を使用するためには、API キーを取得する必要があります。
- OpenAI の Web サイトにアクセスします。 アカウントをお持ちでない場合は OpenAI アカウントにサインアップし、すでにお持ちの方はログインします。
- ログインした後、Account API Keys セクションに移動します。
- この画面から、「Create new secret key」ボタンをクリックして新しい秘密キーを作成します。 秘密キーは一度だけ表示されます。 必ずコピーしてください。 コピーを忘れた場合は、古いキーを削除して新しいキーを作成してください。
API キーを他のユーザーと共有したり、ブラウザやその他のクライアント側コードで公開したりしないでください。 アカウントのセキュリティを確保するために、OpenAI は、公開されていることが判明した API キーを自動的にローテーションする場合があります。
OpenAI の API エンドポイント
OpenAI の API エンドポイントは、開発者が要求を送信し、GPT-3 を含むさまざまな言語モデルへのアクセスを提供する OpenAI の API からの応答を受信するために使用できる URL です。 正確なエンドポイント URL は、使用されている特定の API バージョンとモデルによって異なる場合がありますが、通常、ベース URL、バージョン番号、およびエンドポイント パスを含む同様の形式に従います。
たとえば、OpenAI の API のベース URL は通常 https://api.openai.com/ であり、バージョン番号は、API の最初のバージョンの v1 など、URL パスに含まれる場合があります。 エンドポイント パスは、言語モデルからテキスト補完を要求するための /completions など、アクセスされる特定の API エンドポイントを示します。
全体として、OpenAI の API にアクセスするための完全な API エンドポイント URL は次のようになります。
API リクエストで必要な共通のパラメータ
もちろん、正確なエンドポイント URL と必要なパラメーターは、特定のユース ケースとアクセスされる API 関数によって異なる場合があります。
OpenAI のAPI が必要とする必須パラメータは、使用するAPIエンドポイントと送信されるリクエストの種類によって異なります。ただし、ほとんどのAPI リクエストで必要となる共通のパラメータがあり、具体的には以下のようなものがあります。
- model: このパラメータは、生成されたレスポンスに使用する言語モデルの名前またはIDを指定します。たとえば、GPT-3 モデルは、使用するモデルの特定のバージョンに応じて、パラメータ値「davinci」または「curie」を使用してアクセスできます。この記事の執筆時点で、ChatGPT をサポートするモデルは gpt-4 および gpt-4-0314 です。 gpt-4 モデルを使用する開発者は、常に OpenAI 推奨の安定したモデルを取得します。
- prompt: このパラメータは、言語モデルに入力テキストを提供し、応答を生成するための出発点として使用されます。プロンプトテキストは、使用されるAPIエンドポイントの要件に従ってフォーマットする必要があります。
- api_key: このパラメータはAPI リクエストを認証するために使用され、リクエストヘッダーに含まれる必要があります。APIキーは、OpenAIに登録し、APIアクセスが承認された開発者に提供される一意の識別子です。
その他のパラメータは、生成されたテキストのランダム性を制御するための temperature パラメータや、生成されたテキストの最大長を設定するための max_tokens パラメータなど、使用するAPIエンドポイントにより異なります。すべての必須パラメータがAPIリクエストに含まれていることを確認するために、使用するエンドポイントの API ドキュメントを参照することが重要です。
OpenAI の API を使用するための開発環境を設定
OpenAIのAPIを使用するための開発環境を設定するには、次の一般的な手順に従う必要があります。
- OpenAI API キーにサインアップする:APIを使用する前に、OpenAI アカウントにサインアップし、APIアクセスを申請する必要があります。申請が承認されると、APIキーが発行され、リクエストの認証に使用できます。詳しいAPIの取得方法については「API キーを取得」をご覧ください。
- プログラミング言語を選択する:OpenAI のAPI は、Python、JavaScript、Rubyなどの多くのプログラミング言語をサポートしています。もっとも快適に使用できるプログラミング言語を選択し、必要な開発ツールやライブラリをインストールしてください。
- OpenAI API クライアントライブラリをインストールする:OpenAI は、API にアクセスするためのクライアントライブラリを提供しています。クライアントライブラリをインストールするには、適切なパッケージマネージャーまたはインストール方法を使用して、選択したプログラミング言語用のクライアントライブラリをインストールしてください。
- 開発環境をセットアップする:選択したプログラミング言語や開発環境に応じて、プロジェクトをOpenAI API クライアントライブラリとAPIキーを使用するように設定する必要がある場合があります。特定の手順については、選択した言語と環境のドキュメントを参照してください。
- APIリクエストをテストする:開発環境をセットアップした後、必要なパラメーターとAPIキーを使用してAPIエンドポイントにリクエストを送信し、有効な応答を受け取り、コードが期待どおりに応答を処理できることを確認してください。
これらは、OpenAIのAPI を使用するための開発環境を設定するためにフォローできる一般的な手順です。正確な手順は、選択したプログラミング言語と開発環境に応じて異なる場合があるため、特定のニーズに対応するためのドキュメントやリソースを確認してください。例えば、PythonでAPI に要求を送信し、指定されたプロンプトとモデルに基づいて、特定の温度とトークンの最大数を指定してテキストを生成します。
- OpenAI API キーの取得
- Pythonのインストールとpip: Pythonと、Pythonのパッケージインストーラであるpipをインストールしてください。Pythonは公式のウェブサイトからダウンロードでき、pipは通常インストールに含まれています。
- OpenAI API クライアントライブラリのインストール: OpenAIはAPIにアクセスするためのPythonクライアントライブラリを提供しています。以下のコマンドをターミナルまたはコマンドプロンプトで実行することで、pipを使ってライブラリをインストールできます。
- API キーのセットアップ: API キーは、コード内で環境変数として定義することでセットアップできます。以下のようにして、API キーを読み込みます。
API キーは、コマンドライン引数や設定ファイルに設定することもできます。
- API リクエストのテスト: API キーをセットアップしたら、必要なパラメータを指定してAPI エンドポイントにリクエストを送信し、API リクエストをテストできます。以下は、GPT-3モデルを使用してテキストを生成する例です。
このコードは、指定されたプロンプトとモデルに基づいてテキストを生成するAPI にリクエストを送信し、生成されたテキストを出力します。API エンドポイントにはさまざまなオプションがあり、使用できるモデルやパラメータには制限があります。API のドキュメントを確認して、リクエストを送信する前に使用可能なオプションを確認することをお勧めします。
以上の手順を実行することで、PythonでOpenAI のAPI を使用するための開発環境をセットアップできます。API を使用することで、テキスト生成、翻訳、言語理解、文章の要約など、さまざまなタスクを自動化できます。
レリパでは、経験豊富でスキルの高いエンジニアたちが常に新しいトレンドにキャッチアップし、最新技術を確実に習得しています。GPT-4をビジネスに統合するためのコンサルタントサービスをご希望の場合は、ぜひレリパまでお気軽にご一報ください。
ChatGPT API (GPT-4)とWhisper API の価格
ChatGPT API (GPT-4)とWhisper APIの利用費用
ChatGPT API (GPT-4)の利用費用が引き下げられました。
8000トークン(例:gpt-4 およびgpt-4-0314)の場合、価格は次のとおりです。
- プロンプトトークン1000あたり$0.03
- サンプルトークン1000あたり$0.06
32.000コンテキスト長を持つモデル(例:gpt-4-32kおよびgpt-4-32k-0314)の場合、価格は次のとおりです。
- プロンプトトークン1000あたり$0.06
- サンプルトークン1000あたり$0.12
OpenAIは、まだ長いコンテキストのモデル品質を改善しており、貴社のユースケースでのパフォーマンスについてのフィードバックを歓迎しています。容量に基づいて、8Kエンジンと32Kエンジンのリクエストを異なる速度で処理しているため、それらにアクセスできる時期が異なる場合があります。
Whisper large-V2モデルの使用料は、1分あたり0.006ドルです。OpenAIのCEOであるSam Altmanは以前、各チャットのコンピューティングコストを数セントと見積もっていましたが、今回の費用は大幅に削減されています。
トークンは、文章内の単語数と必ずしも一致するわけではありません。
トークンとは、自然言語処理(NLP)において使用される単位で、意味のある文字や記号の連続をグループとして表します。単語も含まれますが、句読点や記号、その他の文字の連続も含まれます。
「The cat is sitting on the mat.」という文には7つの単語がありますが、単語数と同じだけの7つのトークンがあります。これは、各単語がトークンであるためです。
しかし、「Can you please call me at 555-1234?」という文では、7つの単語がありますが、電話番号の「555-1234」は複数の数字とハイフンを含んでいても、1つのトークンとして扱われるため、8個のトークンがあります。
つまり、トークンとテキスト中の単語数は関連していますが、常に同じものではありません。あくまでトークンは、テキスト内の任意の意味のある文字列または記号のシーケンスを表します。
まとめ
2022年11月にChatGPTが公開されて以来、多くの有名企業がAI戦略について詳細を公表しています。マイクロソフトはOpenAIと共同で開発したBing内のチャットボットをリリースしました。Googleは独自のボットであるBardを開発済みと発表。そして、Facebookの親会社であるMetaも同様の技術開発に取り組んでいます。
ChatGPTの大躍進により、テックジャイアント間でのAI競争が加速し、多くの企業内でもこれまで以上に新たな技術に対する迅速な対応姿勢が強く問われています。