主要な取り組み
- プロンプト エンジニアリングでは、ChatGPT などの言語モデルから有用な応答を得るために効果的なプロンプトとプロンプト シーケンスを設計することに焦点を当てますが、ソフトウェア エンジニアリングではソフトウェア システムの構築と保守が含まれます。
- プロンプト エンジニアリングは大規模言語モデルの進歩によって可能になった新しい分野ですが、ソフトウェア エンジニアリングは確立された分野として数十年にわたって存在しています。
- 迅速なエンジニアリングには創造性と自然言語の理解が必要ですが、ソフトウェア エンジニアリングはコーディングなどの技術スキルやアルゴリズムとデータ構造の知識に依存します。
プロンプトエンジニアリングとは?
AI モデルを微調整するには、迅速なエンジニアリングが不可欠です。 この場合、AI 言語は非常に慎重に指示され、必要な応答と制御された動作を描写または引き出します。 そして、この目的のためには、AI モデルが望ましい結果を得るように導くのに役立つ、文脈に応じて言語的に適切なプロンプトを注意深く作成する必要があります。
エンジニアは、継続的な実験と反復により、AI モデルのパフォーマンス、コンテキストの理解、精度を開発および強化します。
ソフトウェアエンジニアリングとは
ソフトウェア エンジニアリングはエンジニアリングの分野の XNUMX つであり、ソフトウェア アプリケーションの設計、開発、保守に関連しています。 ソフトウェア エンジニアリングにはさまざまな段階があり、その後、ユーザーが必要とするソフトウェア アプリケーションを開発します。 これには、展開に役立つ要件に関する情報の収集と、最終的に最終製品の保守が含まれます。
ソフトウェア エンジニアは、継続的な実験と反復により、変化する要求に応じてユーザー フレンドリーなソフトウェアを開発します。 彼らは、プログラム、ソフトウェア設計、アルゴリズムに関する知識と理解を活用して、効率的で信頼性が高く、スケーラブルなユーザー要件を開発します。
プロンプトエンジニアリングとソフトウェアエンジニアリングの違い
- プロンプト エンジニアの主な焦点は、目的の出力を提供するための言語モデル プロンプトの設計、開発、または作成です。 一方、ソフトウェア エンジニアの主な焦点は、ユーザーの要件を満たすようにソフトウェアを開発および保守することです。
- プロンプト エンジニアリングの目的は、プロンプトを通じて改善された指示を与えることで AI 言語モデルを強化することです。 さらに、より良い応答を提供するのにも役立ちます。 一方、ソフトウェア エンジニアリングの目的は、ユーザーの要件に対応する方法でソフトウェア アプリケーションを設計および作成することです。
- プロンプト エンジニアリングの中心的なアクティビティは自然言語プロンプトを生成することですが、一方、ソフトウェア エンジニアリングに関連する中心的なアクティビティは、保守、テスト、コーディング、要件分析の実行などです。
- プロンプト エンジニアリングの専門知識を得るには、NLP と AI について十分に理解する必要があります。 同時に、ソフトウェア エンジニアリングの専門知識を得るには、CS に関する十分な知識とプログラミングをしっかりと理解する必要があります。
- プロンプトエンジニアリングではMLフレームワークやNLPライブラリが必要ですが、一方ソフトウェアエンジニアリングではバグトラッキング、バージョン管理、IDEなどがツールやフレームワークとして必要となります。
- プロンプト エンジニアリングで期待できる一般的な出力は、AI の高品質なプロンプトです。 対照的に、ソフトウェア エンジニアリングの一般的な成果物は、実際に動作するソフトウェア アプリケーションです。
- 迅速なエンジニアリングにはある程度の複雑さが伴う場合があります。 これに加えて、ソフトウェア エンジニアリングでは、アルゴリズムによって複雑さが生じます。
- プロンプト エンジニアリングでは、対話はモデルとエンジニアの間で行われますが、ソフトウェア エンジニアリングでは、対話はユーザーとソフトウェアの間で行われます。
- プロンプトエンジニアリングにおける応用は、主に言語生成タスクと AI 研究にあります。 同時に、ソフトウェアエンジニアリングの応用は、モバイル開発、Web開発、組み込みシステムなどのさまざまな領域に関連しています。
プロンプトエンジニアリングとソフトウェアエンジニアリングの比較
比較パラメータ | プロンプトエンジニアリング | ソフトウエアエンジニアリング |
---|---|---|
主な焦点 | モデルプロンプトの作成 | ソフトウェアの開発と設計 |
目的 | AI言語モデルを強化 | 機能的なアプリケーションを構築する |
中心活動 | 自然言語プロンプトを生成する | 保守、テスト、コーディング、要件分析など |
必要な専門知識 | NLP と AI に関する優れた知識 | CS に関する優れた知識と強力なプログラミング |
ツールとフレームワーク | ML フレームワークと NLP ライブラリ | バグ追跡、バージョン管理、IDE |
出力 | AI モデルのプロンプト | 実用的なソフトウェアソリューション |
複雑 | 複雑さを伴う場合がある | 複雑なアルゴリズムが含まれる |
エンドユーザーとの対話 | 通常はモデルとエンジニアの間で | 通常、ユーザーとソフトウェアの間では、 |
繰り返し | 迅速なチューニングのための頻繁な反復 | 反復的な開発プロセス |
開発サイクル | AIモデルのアップデートに関係している可能性がある | ソフトウェア開発ライフサイクルに従います |
アプリケーションドメイン | 言語生成、AI研究 | さまざまなドメイン (モバイル、Web、デスクトップなど) |
展開 | モデルまたは AI システム内 | ソフトウェア アプリケーションとして導入 |