ChatGPTは汎用AIの波を巻き起こし、農業、工業、コンピュータ革命に続くAI技術革命の火付け役となる可能性があります。業界では主にChatGPTのAIアルゴリズムに注目が集まっていますが、OpenAIは数億人のユーザーにサービスを提供するプラットフォームへと進化しました。ChatGPTのSLAは過去3か月間で約99%で、1日平均約15分間ダウンしており、全体的な技術アーキテクチャと信頼性に関する重大な懸念が浮き彫りになっています。  過去90日間のOpenAI Webサイトステータスチャート (緑は利用可能、その他は異常を示します) **ChatGPTは技術アーキテクチャを公式に共有していないため、正確なアーキテクチャ図を知ることは困難です。この記事では、ChatGPTの主要なソフトウェア技術スタックの大きな図を、以下の側面から描き出そうとします。** - インターネットで公開されている情報(Twitter、LinkedInなど) - 最新のOpenAI求人募集要件 - いくつかのOpenAI停止レポート - Githubコード  # 1. クラウドサービス OpenAIは、クラウド時代のAIスタートアップ企業です。同社の事業はすべてパブリッククラウド上でホストされています。初期段階では、AWSのサポートを受けていました。以下の対話は、2021 年までに公開された情報に基づく OpenAI の回答です。   この段落はOpenAI公式サイトの初期の記事からの抜粋で、AWSサービスを多用していたことが分かります。過去2年間でMicrosoftから巨額の投資を受け、Azureサービスの利用を明言しています。ChatGPTはAzureを主体としたマルチクラウドソリューションへの移行を進めており、AWSサービスは徐々に減少していくことが予想されます。さらに、クラウドリソース管理にはTerraformマルチクラウド管理サービスを使用しています。 # 2. データベース! [ChatGPTのコアビジネスデータは、リレーショナルデータベースPostgreSQLに保存されています](http://img.blog.itpub.net/blog/2023/03/28/91aba8c9b2f57999.png?x-oss-process=style/bb) まず、ChatGPT自体に問い合わせても明確な答えはほとんど得られません。ただし、公式Webサイト、役職、障害レポートから比較的正確な情報を得ることができます。 ChatGPTのコアビジネスデータは、公式Webサイトに記載されているように、リレーショナルデータベースPostgreSQLに保存されています。ここには、数億のユーザーアカウント、アクセスキー(AK)、および会話情報が保存されています。 2023年2月20日の障害レポートでも、メインのPostgreSQLデータベースに問題があることが示されていました。 また、PgBouncer接続プーリングサービスの使用についても言及されていました。 キャッシュサービスとしてRedisクラスターが使用されていました。 2023年3月20日、ChatGPTでセキュリティ上の脆弱性が発生し、一部のユーザーが他のユーザーのチャットログを閲覧できるようになりました。これは、Redis-pyのバグが原因で、接続がキャンセルされた際にセッションが破損していました。CEOのサム・アルトマン氏はTwitterで謝罪しました。  また、CosmosDBの知識を必要とするポジションも募集しています。具体的なユースケースは現時点では不明です。CosmosDBはAzureのマルチモデルデータベースで、MongoDB、Cassandra、PostgreSQL、Gremlinなどの互換性のあるインターフェースをサポートしています。これは、NoSQL分野におけるMicrosoftの主力製品です。以前、Patrick-McFadin氏(Cassandraコミッター)がLinkedInでOpenAIがCassandraを使用していると言及していましたが、議論の結果、それはChatGPT自身の推測であることが明らかになりました。Cassandraが実際に使用されたのか、CosmosDB内でCassandraのAPIが使用されたのかはまだ確認されていません。さらに、CosmosDBは買収したCitusが提供する分散PostgreSQLインターフェースも利用しています。分散データベースアーキテクチャにCitusが使用されたかどうかは不明です。ChatGPTは、次世代クラウドネイティブデータウェアハウスであるSnowflakeと、データ分析用のTableauを使用しています。Snowflakeのマルチクラウド展開のサポートは、AWSからAzureへのクロスクラウド移行に非常に有益です。#3、フロントエンド:Webフロントエンドでは、TypeScriptとReactフレームワークが使用されていることは明らかです。ChatGPTはまだ正式なモバイルアプリはありませんが、iOSとAndroidのエンジニアを採用しているため、まもなくリリースされる予定です。 #4、アプリケーションとサービスのプログラミング言語:AIベースのテクノロジー企業として、OpenAIはPythonをコア言語として選択しました。AIエンジニアとプラットフォームソフトウェアエンジニアの両方のポジションには、Pythonの熟練度が必要です。プラットフォームサービスでは、人気のFlaskフレームワークとOpenAPIコンポーネントを活用するPythonが選択されました。#5、AIテクノロジーフレームワーク:コアとなるAIテクノロジーフレームワークはPyTorchで、TensorFlowも使用できます。OpenAIは独自のGPU向けアルゴリズムフレームワークTritonを開発し、NVIDIAのCUDAに代わるGitHub(https://github.com/openai/triton)でオープンソース化し、機械学習アルゴリズムのより効率的な開発を可能にすることを目指しています。Tritonはプログラミング言語としてC++とPythonを使用しています。AIトレーニングおよび展開サービスのアーキテクチャに関する詳細については、まだ明らかにされていません。陳偉博士がオンラインで共有した次の図は、参考までに大規模モデルの一般的なアーキテクチャを示しています。![AI トレーニングおよびデプロイメント サービスのアーキテクチャに関する詳細は、まだ検討されていません。] 下の画像は、陳偉博士がオンラインで共有した大規模モデルの一般的なアーキテクチャ図です。 [http://img.blog.itpub.net/blog/2023/03/28/6ab3880d8000d273.png?x-oss-process=style/bb] 出典: https://zhuanlan.zhihu.com/p/611464068 # 6. アプリケーションの展開と監視操作 **コンテナサービス**: Kubernetes **監視と操作**: Prometheus (運用および開発エンジニアの求人情報には、PromQLの知識が必要であると記載されています) **ログサービス**: Splunk **プログラミング言語**: Golang、Python # 7. 参考資料 1. ChatGPTソフトウェアエンジニア求人説明: https://openai.com/careers/software-engineer-chatgpt 2. OpenAI 2023.2.20障害分析レポート: https://status.openai.com/incidents/mq5jgswy45fr 3. OpenAI のオープンソース Triton の GitHub アドレスは次のとおりです: https://github.com/openai/triton 4. Patrick McFadin は、LinkedIn で ChatGPT が Cassandra を使用するかどうかについて説明しました: https://www.linkedin.com/posts/patrick-mcfadin-53a8046_this-isnt-your-regular-chatgpt-post-so-activity-7031372446536515584-P8fg/?utm_source=share&utm_medium=member_desktop # 8. 最後に、この記事は、NineData のプログラマー、Jiuzhang Arithmetic の CEO、Alibaba Cloud の元シニア テクニカル エキスパートである Ye Zhengsheng によって書かれました。NineData の公式 Web サイトは www.ninedata.cloud で、エンタープライズ レベルのデータベース SQL 開発ツール、データ複製、比較、バックアップなどの製品を提供しており、ダウンロードが不要な ChatGPT に似た無料の SQL サービス (SQL AI Copilot) も提供しています。 **コメントを残したり、転載したりすることを歓迎します!**