AIとコンピュータビジョンにおけるプロンプトエンジニアリングを習得しましょう。Ultralytics やUltralytics のようなマルチモーダルモデル向けに入力を最適化し、優れた結果を達成する方法を学びます。
プロンプトエンジニアリングとは、入力テキストを設計・改良・最適化し、 人工知能(AI)モデルが 正確で関連性の高い高品質な出力を生成するよう導く戦略的プロセスである。当初は この分野は、テキスト・画像・動画など多様なモダリティにわたる生成AIシステムとの対話において不可欠なスキルへと発展した。再学習によるモデル重みの変更ではなく、プロンプトエンジニアリングはタスクをシステムが最適に理解できる形で構成することで既存の知識を活用し、人間の意図と機械の実行の間の隔たりを埋める。
プロンプトエンジニアリングの核心は、基盤モデルが文脈と指示をどのように処理するかを理解することにある。適切に構築されたプロンプトは、明示的な制約、望ましい出力形式(Markdown)、関連する背景情報を提供することで曖昧さを低減する。上級実践者は、ユーザーがプロンプト内で入力-出力ペアの例を数例提供し、望ましいパターンを示す「少例学習」などの技術を活用する。
もう一つの強力な戦略は 思考の連鎖プロンプティングであり、 これはモデルに複雑な推論タスクを中間ステップに分解するよう促す。これにより 論理重視のクエリに対する性能が大幅に向上する。さらに、コンテキストウィンドウ(モデルが一度に処理できるテキスト量の制限)の最適化は、 長い対話における一貫性を維持するために極めて重要である。OpenAIのプロンプト設計ガイドなどの外部リソースは、 エッジケースを効果的に処理するための反復的な改善の重要性を強調している。
テキストと関連付けられることが多いが、プロンプトエンジニアリングはコンピュータビジョン(CV)においてますます重要になっている。YOLOのような現代のマルチモーダルモデルやオープンボキャブラリ検出器は、ユーザーが事前定義された数値クラスIDではなく自然言語処理(NLP)を用いて検出対象を定義することを可能にする。
この文脈における「プロンプト」とは、対象物(例:「赤いヘルメットをかぶった人物」)のテキスト記述を指す。この能力はゼロショット学習として知られ、視覚的特徴と意味的埋め込みの学習済み関連性を活用することで、明示的に訓練されていない対象物のdetect 可能にする。 クラスが固定された高速生産環境では、開発者は最終的にプロンプト付きモデルからYOLO26のような効率的な再学習モデルへ移行する可能性があるが、プロンプト設計は迅速なプロトタイピングと柔軟性の鍵であり続ける。
プロンプトエンジニアリングは、柔軟かつ知的な自動化を実現することで、多様な産業に価値をもたらします:
以下の例では、プロンプトエンジニアリングがどのようにプログラム的に適用されるかを示している。
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ソリューションを効果的に展開するには、 プロンプトエンジニアリングと類似の最適化手法を区別することが重要です: