YOLO Vision Shenzhen
深セン
今すぐ参加
用語集

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

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

プロンプトエンジニアリングは、人工知能 (AI)モデルが正確で関連性の高い高品質な出力を生成するように導くために入力テキストを設計、洗練、最適化する戦略的なプロセスです。GPT-4のような大規模言語モデル (LLM)の台頭とともに当初注目を集めましたが、この分野は、テキスト、画像、ビデオを含むさまざまなモダリティにわたる生成AIシステムと対話するための重要なスキルへと進化しました。再トレーニングによって基盤となるモデルウェイトを変更するのではなく、プロンプトエンジニアリングは、システムが最もよく理解できる方法でタスクを構成することにより、モデルの既存の知識を活用し、人間の意図と機械の実行との間のギャップを埋めます。

効果的なプロンプティングのメカニズム

プロンプトエンジニアリングの核となるのは、基盤モデルがコンテキストと指示をどのように処理するかを理解することです。適切に構築されたプロンプトは、明示的な制約、望ましい出力形式(JSONやMarkdownなど)、および関連する背景情報を提供することで曖昧さを軽減します。上級者は、ユーザーがプロンプト内でいくつかの入出力ペアの例を提供して望ましいパターンを示すFew-shot学習のようなテクニックを利用します。

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

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

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

この文脈において、「プロンプト」はオブジェクトのテキスト記述(例:「赤いヘルメットを着用した人物」)です。この機能はゼロショット学習として知られ、視覚的特徴とセマンティック埋め込みの間の学習された関連性を活用することで、明示的にトレーニングされていないオブジェクトをシステムがdetectできるようにします。クラスが固定されている高速生産環境では、開発者は最終的にプロンプトモデルからYOLO26のような効率的で再トレーニングされたモデルに移行するかもしれませんが、プロンプトエンジニアリングは迅速なプロトタイピングと柔軟性の鍵であり続けます。

実際のアプリケーション

プロンプトエンジニアリングは、柔軟でインテリジェントな自動化を可能にすることで、多様な産業にわたって価値を推進します。

  • 動的ビジュアル分析: 小売AIにおいて、店舗管理者は技術的な介入なしに、プロンプトベースのビジョンモデルを使用して特定のアイテムを検索します。システムは、ある日は「空の棚」をtrackし、次の日は「置き場所を間違えた製品」をtrackするように促すことができます。この柔軟性により、企業はobject detectionシステムを季節のトレンドに即座に適応させることができます。
  • 自動コンテンツ作成: マーケティングチームは、Stable DiffusionMidjourneyのようなtext-to-imageジェネレーターを導くために詳細なプロンプトに依存しています。照明、芸術的スタイル、構図を指定するプロンプトを設計することで、デザイナーは視覚アセットを迅速に生成できます。
  • インテリジェントな知識検索: 顧客サポートにおいて、エンジニアはチャットボットが検証済みの企業データのみを使用して問い合わせに回答するよう指示する「システムプロンプト」を設計します。これはRetrieval-Augmented Generation (RAG)の重要なコンポーネントであり、AIが役立つペルソナを維持しつつ、LLMにおけるハルシネーションを回避することを保証します。

Ultralytics実装

以下の例では、プロンプトエンジニアリングがどのようにプログラム的に適用されるかを示している。 ultralytics パッケージ。ここでは、テキストプロンプトを受け入れてどのオブジェクトを動的に探すかを定義するYOLO-Worldモデルを使用します。これは、〜のような標準モデルとは対照的です。 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 Platformを介してAIソリューションを効果的にデプロイするには、プロンプトエンジニアリングを類似の最適化手法と区別することが重要です。

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

共にAIの未来を築きましょう!

未来の機械学習で、新たな一歩を踏み出しましょう。