見出し画像

OpenAI DevDayで、GPT-4 Turboは128Kで高速低価格、新しいアシストAPI、GPT-4 Turbo Vision、DALL-E 3 APIなどを発表!

OpenAI Dev DayにてGPTやDALL-Eなど、大量の神アップデートが発表されました!!

OpenAI DevDayで数々の神アップデート

朝イチで見たのがこのツイートでした。

ほほう、どんな更新されたんやろかと、ソースを読み始めて大規模すぎるアップデートに驚愕する。
え?いまChatGPTでできることがほとんどAPI経由で開発できるようになってるやん……!?
あ!そういえばOpenAI DevDay!?

というわけで早速公式発表を確認する。

え?え?
大量神アップデート!!
とりあえず見出しを翻訳して一覧にしてみる。

  • GPT-4 Turbo with 128K context

    • Function callingのアップデート

    • 命令追従性とJSONモードの向上

    • 再現可能な出力とログの確率

    • アップデートされた GPT-3.5 Turbo

  • アシスタント API、Retrieval (検索)、およびCode Interpreter

  • API の新しいモダリティ

    • GPT-4 Turbo with vision

    • DALL·E 3

    • テキスト読み上げ (Text-to-speech, TTS)

  • モデルのカスタマイズ

    • GPT-4 fine tuningの実験的アクセス

    • カスタムモデル

  • 価格の引き下げとレート制限の引き上げ

    • 低価格

    • より高いレート制限

  • 著作権シールド

  • Whisper v3 と  Consistency Decoder

お、多すぎる。。。
そしてひとつひとつのアップデートがすげーじゃないか。。。(語彙力)

そんな日がありがたいことに落合陽一塾の生配信「おはようおちあい」通称「おはおち」と重なり、チャットで色々と落合さんに話しかける。
落合さんも驚くほどのOpenAIのアップデートの数々。
アップデート当日に世界で活躍する方と技術話ができるなんて、こんな素晴らしいオンラインサロンがあるだろうか?

ここにあります。

本家の英語リリースを翻訳しながら読むのも良いんですが、いつも爆速で正確な記事を書いてくださる大変お世話になっているnpaka大先生の日本語記事をまず読むことをオススメします。

全部の機能を正確に伝えるのはnpaka大先生には敵わないので、個人的に気になる機能をピックアップしてコメントしていこうと思う。

現時点で使えるようになったものは?

私の環境で使えるようになったものを確認してみる。
モデルの使用権が付与されていないと使えないこともしばしば。models APIで自分のアカウントで使えるモデルを確認できるので実行してみる。

% curl https://api.openai.com/v1/models -H "Authorization: Bearer $OPENAI_API_KEY" | grep '"id": '                               
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  9051  100  9051    0     0  22613      0 --:--:-- --:--:-- --:--:-- 22913
      "id": "text-search-babbage-doc-001",
      "id": "gpt-3.5-turbo-16k-0613",
      "id": "curie-search-query",
      "id": "gpt-3.5-turbo-16k",
      "id": "text-search-babbage-query-001",
      "id": "babbage",
      "id": "babbage-search-query",
      "id": "text-babbage-001",
      "id": "whisper-1",
      "id": "text-similarity-davinci-001",
      "id": "gpt-4-1106-preview",
      "id": "davinci-similarity",
      "id": "code-davinci-edit-001",
      "id": "curie-similarity",
      "id": "babbage-search-document",
      "id": "curie-instruct-beta",
      "id": "text-search-ada-doc-001",
      "id": "davinci-instruct-beta",
      "id": "gpt-4",
      "id": "text-similarity-babbage-001",
      "id": "text-search-davinci-doc-001",
      "id": "babbage-similarity",
      "id": "text-embedding-ada-002",
      "id": "davinci-search-query",
      "id": "gpt-4-vision-preview",
      "id": "text-similarity-curie-001",
      "id": "text-davinci-001",
      "id": "text-search-davinci-query-001",
      "id": "ada-search-document",
      "id": "ada-code-search-code",
      "id": "babbage-002",
      "id": "davinci-002",
      "id": "tts-1",
      "id": "davinci-search-document",
      "id": "curie-search-document",
      "id": "babbage-code-search-code",
      "id": "gpt-3.5-turbo-1106",
      "id": "text-search-ada-query-001",
      "id": "code-search-ada-text-001",
      "id": "babbage-code-search-text",
      "id": "code-search-babbage-code-001",
      "id": "ada-search-query",
      "id": "ada-code-search-text",
      "id": "tts-1-hd",
      "id": "text-search-curie-query-001",
      "id": "text-davinci-002",
      "id": "tts-1-1106",
      "id": "text-davinci-edit-001",
      "id": "code-search-babbage-text-001",
      "id": "tts-1-hd-1106",
      "id": "gpt-3.5-turbo",
      "id": "gpt-3.5-turbo-instruct-0914",
      "id": "ada",
      "id": "text-ada-001",
      "id": "ada-similarity",
      "id": "code-search-ada-code-001",
      "id": "text-similarity-ada-001",
      "id": "gpt-3.5-turbo-0301",
      "id": "gpt-3.5-turbo-instruct",
      "id": "text-search-curie-doc-001",
      "id": "text-davinci-003",
      "id": "gpt-4-0613",
      "id": "text-curie-001",
      "id": "curie",
      "id": "gpt-4-0314",
      "id": "davinci",
      "id": "dall-e-2",
      "id": "gpt-3.5-turbo-0613",
      "id": "dall-e-3",

しばらく見ないうちにすごい量になっている。。。
今回のアップデートに関係ありそうなモデルは下記辺りのようだ。

  • dall-e-3: DALL-E APIでDALL-E3の画像生成が可能に

  • dall-e-2: DALL-E3との棲み分けのために追加されたと考えられる

  • gpt-4-vision-preview: 画像認識用のGPT-4

  • gpt-4-1106-preview: 高速・安価・長文対応のGPT-4

  • gpt-3.5-turbo-1106: 16K対応したGPT-3.5

  • tts-1-hd: 文章読み上げの高品質版

  • tts-1-1106: 文章読み上げのリアルタイム性特価版

  • tts-1-hd-1106: tts-1-hdと同じく文章読み上げの高品質版 (tts-1-hdは推奨版のエイリアス)

上記モデルを見る限りではほとんどの機能が使えるようになってそうだ。
Playgroundも見てみよう。

Playgroundもがっつりアップデート!

OpenAI Playgroundにログインしたら、がっつりインターフェースが変わっていた!
こりゃテンション上がる!

  • Model

    • ChatCompletion API: Modelのドロップダウンリストに下記が追加されている。gpt-4-vision-previewは未対応は残念だが、gpt-4-1106-previewが使えるのはありがたい!

      • gpt-4-1106-preview

      • gpt-3.5-turbo-1106

  • Mode

    • Assistants: Playgroundのタイトル横のドロップダウンリストにAssistantsが追加されている。アシスタントAPIかと思われる。

左側ナビゲーションメニューも色々増えてる。

  • Navigation Menu

    • Assitants: アシスタントAPI用と考えられる。今度じっくり使ってみる。

    • Threads: 永続的で無限に長いスレッド。詳細が分からん。。。

    • Files: おそらくCode Interpreterでアップロード、生成されるファイルの管理かと思われる。

さて、それぞれのアップデートを見ていこう。

GPT-4 Turbo with 128K context

同じ大規模言語モデルであるClaude 100Kを軽く超えて128Kモデルを追加してきた!
しかもTurboなので高速化!
語るよりも実際に動かしているのを見るほうが理解できると思うので、早速見てみよう。

は、早すぎる。。。
そして精度はGPT-4そのもの。
これがこれからの標準になるのか。。。
もう、これ無しではOpenAIは語れない!
ちなみにPlaygroundでは4Kまでしかできないようだ。128Kを試したい人はAPI経由で試してみよう。 

Function callingのアップデート

この機能を利用するとChatGPT経由でプログラム上の関数を自動で実行できるのだが、単一メッセージで複数の関数を呼び出すことなどができるようになったようだ。LangChainでも同様の機能があったが、公式実装されたということだろう。ちなみにopenai-pythonが1.1にアップデートされて、LangChainではエラーがもりもり出ているようだ😂
私が以前開発したものももりもりエラーが発生して動かなくなっており、ローカル環境ではOpen Interpreterも動かなくなってしまった😂

命令追従性とJSONモードの向上

GPTが出力した文章をシステム連携するためにJSONフォーマットなどで出力するようにお願いしても「JSONだとこのような出力になります! `{"id": …, …}`」のように出力してしまうことがあり、結果的にシステム連携時にエラーが発生していた。gpt-3.5-turboではしょっちゅう発生していたけど、gpt-4はfunction callingでかなり解消された。今回の新しい API パラメーターresponse_formatでJSONモードを指定すると、function callingを使わなくてもJSONで出力してくれるのであろう。
開発スピードが速くなるのでありがたい!

再現可能な出力とログの確率

画像生成AIではseed値というパラメータを指定することで、ランダムに出力される画像を固定することができた。GPTにもこれと同じ機能が追加されたようだ。他のパラメータも同じにすることで同じ文章が返ってくることになる。使い所が限定的なような気もするが、再現性のあるテストができるようになるのは良いことだ!
ログの確率については翻訳すると下記のような記載になっている。

また、GPT-4 TurboとGPT-3.5 Turboによって生成された最も可能性の高い出力トークンのログ確率を返す機能を数週間以内に開始します。

Reproducible outputs and log probabilities

これ、ひょっとして便利なんじゃないか?

アシスタント API、Retrieval (検索)、およびCode Interpreter

Playgroundの方ではChat Completionよりも上のメニューに配置されているので、実は重要な機能だと捉えている。公式ではどう発表しているのか見ていこう。

アシスタントAPI、検索、コードインタープリタ
今日、私たちはAssistants APIをリリースします。これは、開発者が自身のアプリケーション内でエージェントのような体験を構築するのを支援するための第一歩です。アシスタントとは、特定の指示を持ち、余分な知識を活用し、モデルやツールを呼び出してタスクを実行できる、目的に特化したAIです。新しいAssistants APIは、Code InterpreterやRetrieval、関数呼び出しなどの新しい機能を提供し、これまで自分で行わなければならなかった多くの重労働を処理し、高品質のAIアプリを構築できるようにします。

このAPIは柔軟に設計されており、自然言語ベースのデータ分析アプリ、コーディングアシスタント、AI搭載のバケーションプランナー、ボイスコントロールDJ、スマートビジュアルキャンバスなど、使用例は多岐にわたる。アシスタントAPIは、当社の新製品GPTsを可能にする同じ機能、すなわちコード・インタープリタ、検索、関数呼び出しなどのカスタム命令とツールに基づいて構築されています。

このAPIによって導入された重要な変更点は、持続的で無限に長いスレッドです。これにより、開発者はスレッドの状態管理をOpenAIに委ねることができ、コンテキストウィンドウの制約を回避することができます。アシスタントのAPIでは、既存のスレッドに新しいメッセージを追加するだけです。

アシスタントはまた、必要に応じて新しいツールを呼び出すことができます:

- Code Interpreter:サンドボックス化された実行環境でPythonコードを書き込んで実行し、グラフやチャートを生成したり、多様なデータやフォーマットのファイルを処理したりできます。アシスタントがコードを繰り返し実行することで、難しいコードや数学の問題などを解決することができます。
- 検索:独自のドメインデータ、製品情報、ユーザーから提供されたドキュメントなど、弊社のモデル外からの知識でアシスタントを補強します。つまり、ドキュメントの埋め込みを計算して保存したり、チャンキングや検索アルゴリズムを実装したりする必要はありません。アシスタントAPIは、ChatGPTで知識検索を構築した経験に基づいて、どのような検索手法を使用するかを最適化します。
- 関数呼び出し: アシスタントは、あなたが定義した関数を呼び出し、その関数応答をメッセージに組み込むことができます。
プラットフォームの他の部分と同様に、OpenAI APIに渡されたデータやファイルは、私たちのモデルを訓練するために使用されることはありません。

Assistantsプレイグラウンドに行けば、コードを書かずにAssistants APIベータ版を試すことができます。

Assistants API, Retrieval, and Code Interpreter

ここでは「Retrieval」を「検索」と訳しているが、「回収」とか「挽回」という意味合いもある。
それを踏まえてリリース文を読んでみると、Assistants APIはどうやら開発支援の機能とユーザへのサービス用のAPIを統合しているようだ。

Assistants API

Assistants APIはCode InterpreterやRetrieval、Function Callingなどの新しい機能を有しており、これまで開発者が地道に実装しなければならなかった実装を手助けして、高品質のAIアプリを構築できるようにしてくれるようだ。
たしかにFunction Callingを実装するのも、専門知識の文書をGPTに解釈させるのもそこそこ面倒な実装だった。
それが解消されるだけでもかなり有用な気がする。

また、「持続的で無限に長いスレッド」が強調されていたり、Playgroundのメニューにも追加されていることを考えると、開発者にはなくてはならない機能なのではないだろうか?

Code Interpreter

Code InterpreterはいったんChatGPTに実装されたが、その後「Advanced Data Analysis」という名称に変更された。説明としては以前のCode Interpreterという名前がこちらで復活されたことを考えると、より開発者向けに特化したように思える。
Assistants APIからCode Interpreterを使用できるようにすると、アシスタントはコードを作成して実行できるようになり、さまざまなデータと形式を持つファイルを処理して、グラフなどのファイルを生成できるようになるそうだ。
作成したファイルやアップロードしたファイルは、Filesのメニューから確認できると考えられる。

Retrieval

Retrievalによりアシスタントは、あなたまたはユーザーがアップロードしたファイルからの情報を得ることができるようになる。ファイルがアップロードされると、アシスタントはユーザーのリクエストに基づいてコンテンツをいつ取得するかを自動的に決定してくれるそうだ。
この機能によって、大きなPDFファイルをいちいちチャンクで分けたり検索アルゴリズムを実装する必要がなくなったようだ。
これ、すげー便利になるんじゃないか?
サードパーティのサービスが軒並み過去のものに。。。

Function Calling

Function Callingを使用すると、アプリのカスタム関数または外部 API をアシスタントに記述することができるとのこと(これは既存機能と同じ)。これによりアシスタントは、関連する引数を含む JSON オブジェクトを出力することで、これらの関数をうまいこと呼び出すことができるそうだ。

で、Assistants APIって結局なんなの?

どうやらこれが全部セットになっていて、アシスタントAPIとして公開もしくは自社用に利用できるということのようだ。
そしてこれを説明する公式動画は以下の通り。

https://cdn.openai.com/new-models-and-developer-products-announced-at-devday/assistants-playground.mp4

Galileoアシスタントに時速60マイルで月まで行くのに何日かかるかをCode Interpreterで計算させた場合、GPTがどんな動きをしているかのログが記録されているようだ。その際に何度かthreads APIが呼ばれているが、ユーザも開発者もその挙動を意識する必要がないということなんだろう。

恐るべし。。。

Assistantsについて詳しく知りたい方は公式ドキュメントを確認してみてください。
https://platform.openai.com/docs/assistants

API の新しいモダリティ

これは以前から発表のあったマルチモーダルを実装すると公言していた内容がAPIでも実装されたことになる。GPTは見ることができ、絵を描くことができ、話すこともできる。ChatGPTでこないだ実装されたばかりなのに、APIももう公開されてしまった。。。

GPT-4 Turbo with vision

これはChatGPTに実装されたGPT-4Vで使われているAPIのTurbo版かと思います。まだPlaygroundでは使えないようですが、models APIでは有効になっているので、実装はできると思うので実際に試してみたい。

DALL·E 3

これもこないだ実装されたばかりの画像生成AI、DALL·Eの最新版。ChatGPT PlusやBing Image Creatorを利用されている方は、会話しながら画像を生成してもらうのをすでに経験されているかと思いますが、それをもう実装できるようになったようです。
しかもAPIには悪用から守る機能を提供しながら、自社デザインを生成できるようで、Snap、Coca-Cola、Shutterstockなどの会社はすでに自社製品デザインを自動生成しているらしい。

テキスト読み上げ (Text-to-speech, TTS)

ChatGPTのモバイルアプリ版に、テキスト読み上げ機能と会話から文章を生成する機能で実装された、ChatGPT会話機能。おそらく同程度の機能がAPIで利用できるようになった。
下手なテキスト読み上げ機能よりも格段に良い性能なので、これをAPIで利用できると考えると夢しか広がらん。。。
これもついこないだなのに。。。

価格の引き下げとレート制限の引き上げ

gpt-4は高い!
と言われていたのはここまで!
gpt-4-1106-previewからは従来の半額以下!

文字数が足りない!
と言われていたのはここまで!
gpt-4-1106-previewは128K!!
本も1冊読み込める!

他のモデルも値下げ&長文化!
感動できる!

API利用回数などの制限は支払金額や期間に応じてどんどんアップ!
素晴らしい!!
すでに私はTier4なので、$5,000/月も使えるらしいです!
そんなお金ないけど😂

著作権シールド

すでに著作権保護機能をシステムに組み込んでいるが 、さらに著作権シールドを導入して顧客が著作権侵害に関して法的請求に直面した場合、OpenAIが介入して顧客を守り、発生した費用を支払うとのこと!
ChatGPT Enterprise および開発者プラットフォームの一般利用可能な機能に適用されるそうです。
AI企業大手はここまでやるんだな。。。

まとめ

あまりにも大規模なアップデートだったのですべてのアップデートを紹介する気はなかったんですが、ほとんどのアップデートを紹介してしまった。

要するに気になる機能だらけだということですね。しかもひとつひとつのアップデートが良い意味で重い!!
今回ピックアップした機能はおそらく全て実際に手を動かして試してみると思います。

しかしこの記事で紹介しなかったGPT-4 Fine TuningやWhisper v3などの機能だけでなく、GPTsやGPTストアという発表までされている。
こちらは開発者じゃなくても大いに関連して来ることになりそうなので、こちらも後日記事にしてみようかと思います。

個別機能についても記事を書いてますので興味ある方はぜひ!!

この記事が気に入ったらサポートをしてみませんか?