Yolo 深圳
深セン
今すぐ参加
用語集

プロンプトエンジニアリング

AIとコンピュータビジョンにおけるプロンプトエンジニアリングを習得しましょう。Ultralytics やUltralytics のようなマルチモーダルモデル向けに入力を最適化し、優れた結果を達成する方法を学びます。

プロンプトエンジニアリングとは、入力テキストを設計・改良・最適化し、 人工知能(AI)モデルが 正確で関連性の高い高品質な出力を生成するよう導く戦略的プロセスである。当初は この分野は、テキスト・画像・動画など多様なモダリティにわたる生成AIシステムとの対話において不可欠なスキルへと発展した。再学習によるモデル重みの変更ではなく、プロンプトエンジニアリングはタスクをシステムが最適に理解できる形で構成することで既存の知識を活用し、人間の意図と機械の実行の間の隔たりを埋める。

効果的なプロンプトの仕組み

プロンプトエンジニアリングの核心は、基盤モデルが文脈と指示をどのように処理するかを理解することにある。適切に構築されたプロンプトは、明示的な制約、望ましい出力形式(Markdown)、関連する背景情報を提供することで曖昧さを低減する。上級実践者は、ユーザーがプロンプト内で入力-出力ペアの例を数例提供し、望ましいパターンを示す「少例学習」などの技術を活用する。

もう一つの強力な戦略は 思考の連鎖プロンプティングであり、 これはモデルに複雑な推論タスクを中間ステップに分解するよう促す。これにより 論理重視のクエリに対する性能が大幅に向上する。さらに、コンテキストウィンドウ(モデルが一度に処理できるテキスト量の制限)の最適化は、 長い対話における一貫性を維持するために極めて重要である。OpenAIのプロンプト設計ガイドなどの外部リソース、 エッジケースを効果的に処理するための反復的な改善の重要性を強調している。

コンピュータビジョンにおける関連性

テキストと関連付けられることが多いが、プロンプトエンジニアリングはコンピュータビジョン(CV)においてますます重要になっている。YOLOのような現代のマルチモーダルモデルやオープンボキャブラリ検出器は、ユーザーが事前定義された数値クラスIDではなく自然言語処理(NLP)を用いて検出対象を定義することを可能にする。

この文脈における「プロンプト」とは、対象物(例:「赤いヘルメットをかぶった人物」)のテキスト記述を指す。この能力はゼロショット学習として知られ、視覚的特徴と意味的埋め込みの学習済み関連性を活用することで、明示的に訓練されていない対象物のdetect 可能にする。 クラスが固定された高速生産環境では、開発者は最終的にプロンプト付きモデルからYOLO26のような効率的な再学習モデルへ移行する可能性があるが、プロンプト設計は迅速なプロトタイピングと柔軟性の鍵であり続ける。

実際のアプリケーション

プロンプトエンジニアリングは、柔軟かつ知的な自動化を実現することで、多様な産業に価値をもたらします:

  • 動的ビジュアル分析: 小売業におけるAIでは、店舗管理者が技術的な介入なしにプロンプトベースのビジョンモデルを用いて特定商品を検索する。システムは「空の棚」を1日目にtrack 、翌日には「誤置商品」track 指示可能だ。この柔軟性により、企業は物体検出システムを季節的なトレンドに即座に適応させられる。
  • 自動コンテンツ生成:マーケティングチームは、 Stable Diffusionや Midjourneyといった テキストから画像を生成するツールを 導く詳細なプロンプトに依存しています。 照明、芸術的スタイル、構図を指定するプロンプトを設計することで、 デザイナーは視覚的資産を迅速に生成できます。
  • インテリジェント知識検索:カスタマーサポートにおいて、エンジニアは「システムプロンプト」を設計する。 これはチャットボットに対し、検証済みの企業データのみを用いて問い合わせに回答するよう指示するものである。 これは検索拡張生成(RAG)の重要な構成要素であり、AIが有用なパーソナリティを維持しつつ、 大規模言語モデル(LLM)における幻覚現象を回避することを保証する。

Ultralytics実装

以下の例では、プロンプトエンジニアリングがどのようにプログラム的に適用されるかを示している。 ultralytics パッケージ。ここでは、テキストプロンプトを受け取り、動的に検索対象となるオブジェクトを定義するYOLOモデルを使用します。これは、標準的なモデル(例: YOLO26 固定クラスリストを使用する。

from ultralytics import YOLO

# Load a YOLO-World model capable of interpreting text prompts
model = YOLO("yolov8s-world.pt")

# Apply prompt engineering to define custom classes dynamically
# The model maps these text descriptions to visual features
model.set_classes(["person in safety vest", "forklift", "blue hardhat"])

# Run inference on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Show results - the model only detects objects matching the prompts
results[0].show()

関連概念の区別

Ultralytics 介してAIソリューションを効果的に展開するには、 プロンプトエンジニアリングと類似の最適化手法を区別することが重要です:

  • プロンプトエンジニアリングとプロンプトチューニング プロンプトエンジニアリングは、自然言語入力を手動で作成する手法である。これに対し、プロンプトチューニングは パラメータ効率の良い微調整(PEFT)手法であり、 トレーニングフェーズ中に「ソフトプロンプト」(連続ベクトル埋め込み)を学習する。これらのソフトプロンプトは 人間ユーザーには見えない数学的最適化である。
  • プロンプトエンジニアリングとファインチューニング ファインチューニングは特定の訓練データセットを用いてモデルの重みを恒久的に更新し、 特定のタスクに特化させる プロンプトエンジニアリングはモデル自体を変更せず、リアルタイム推論時の入力のみを最適化する。
  • プロンプトエンジニアリングと プロンプトインジェクション エンジニアリングは建設的である一方、プロンプトインジェクションは悪意のある入力がモデルの安全制約を無視させるように操作するセキュリティ脆弱性である。AIの安全性を確保するには、このような敵対的プロンプトに対する強固な防御が必要である。

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加