-- Views
July 18, 26
スライド概要
現時点、まだUdemyでレッスンを公開出来ておりません 公開しましたら、お知らせします!
はじめまして、yukikoと申します。 IT教育支援や、DX推進が可能です。 ◆ スキル LPIC レベル2 AI / Python Splunk BI(データ可視化・分析) ◆ その他 新卒・未経験の学生向けに、エンジニア転職を応援する資料を趣味で作成しています。 もしよろしければご活用ください。
CORPORATE TRAINING PROGRAM YAML実践講座 構造化データ記述の基礎から実践まで、体系的に学ぶ全4モジュール うさうさ研修工房 法人研修・オンライン講座(Udemy等)対応版 01 / 27
WELCOME この講座について 本講座は、データ構造を記述するための標準フォーマット「YAML」を、基礎文法から実務での落とし穴、実践的な設計パターンまで、 体系的に習得するための全4モジュール構成の研修プログラムです。 実務直結 理解度チェック付き 段階的な難易度設計 設定ファイル・CI/CD・IaC等、現場で頻出する 各モジュールの終わりに確認問題を設置。 基礎→構造→データ型→応用という順に、 記述パターンを重点的にカバー 知識の定着を都度確認 無理なくステップアップ 02 / 27
TARGET AUDIENCE 受講対象者 設定ファイルを扱うすべてのエンジニア Docker Compose・Kubernetes・GitHub Actions等、YAMLベースの設定ファイルを日常的に編集する方 インフラ・ DevOps担当者 IaC(Infrastructure as Code)ツールでYAMLを扱う機会が多い方 AIプロンプトエンジニアリング担当者 構造化プロンプトの設計にYAMLを活用したい方 新入社員・部署異動者向けの研修担当者 社内研修として体系的な教材を必要としている方 03 / 27
LEARNING OBJECTIVES 到達目標 本講座を修了すると、以下ができるようになります。 YAMLの基本文法(キー・値、インデント、リスト、ネスト構造)を正確に読み書きできる 文字列のクォート規則、複数行文字列(| / >)を用途に応じて使い分けられる アンカー(&)と参照(*)を使い、重複のない保守性の高いYAMLを設計できる 現場で頻発する典型的なミス(インデント崩れ・型の誤変換等)を未然に防げる 実務のユースケース(設定ファイル・CI/CD・構造化プロンプト)に応用できる 04 / 27
CURRICULUM カリキュラム全体像 01 02 03 04 基礎文法編 構造編 データ型・文字列編 実践・応用編 キー・値、インデント、コメント リスト、ネスト構造の設計 クォート規則、複数行文字列、型の アンカー参照、落とし穴、実務ケー 自動判定 ススタディ 05 / 27
MODULE 01 基礎文法編 YAML SYNTAX FUNDAMENTALS キーと値の基本ルール(コロン+半角スペース) インデントによる階層表現 コメントとデータ型の自動判定 06 / 27
MODULE 01 — 01 キーと値 — key: value YAMLの最小単位は「キー:値」のペアです。 コロンの直後に半角スペースが1つ必要という点が、最初につまず 実例 name: shirousagi きやすいポイントです。 role: announcer colon + space voice_tone: warm and playful 「key: value」— コロンの後に必ず半角スペース confidence: 8 is_mascot: true キー名は自由 英数字・アンダースコアが安全。日本語キーも使用可能 値の型は自動判定 文字列・数値・真偽値などは書式から自動で推定される 07 / 27
MODULE 01 — 02 インデント — 階層を作る唯一の手段 YAMLには { } や end のような区切り記号がありません。インデントの 階層構造の例 深さそのものが「どの階層に属するか」を表します。 character: appearance: 半角スペースのみを使う(タブ文字は禁止) fur_color: white 同じ階層は同じ幅で揃える eye_color: ruby red outfit: 幅は2または4スペースを推奨し、ファイル内で統一する jacket: navy blue bow_tie: red 08 / 27
MODULE 01 — 03 コメントとデータ型の自動判定 # から行末まではコメントとして無視されます。値はクォートなしで書 コメント付きサンプル くと、文字列・数値・真偽値・nullが自動判定されます。 # キャラクター設定シート name: shirousagi 文字列 整数 / 小数 flat illustration 3 / 1.5 confidence_level: 8 is_mascot: true signature_prop: null 真偽値 null true / false null もしくは ~ # 小道具は場面ごとに指定 09 / 27
MODULE 01 — CHECKPOINT 理解度チェック Q1. 次のうち、YAMLの記法として正しいものはどれですか? A name:shirousagi (コロンの直後にスペースなし) B name: shirousagi (コロンの直後に半角スペース) C name = shirousagi (イコール記号を使用) 解説 YAMLではコロンの直後に半角スペースが1つ必要です。スペースを省略すると多くのパーサーで正しく解釈されません。 10 / 27
MODULE 02 構造編 LISTS & NESTED STRUCTURES ハイフンによるリスト(配列)表現 マップの入れ子によるネスト構造 実務での設計パターン 11 / 27
MODULE 02 — 01 リスト(配列) — ハイフンで列挙する 複数の値を並べたいときは、行頭に「- 」(ハイフン+半角スペース)を つけて列挙します。 オブジェクトのリスト reference_shots: - angle: front 2つの書き方 poses: - waving - pointing forward expression: smiling - angle: side profile expression: neutral - thumbs up 12 / 27
MODULE 02 — 02 ネスト構造 — マップの入れ子 マップは、値の位置にさらにマップを置くことで、いくらでも深く入れ 子にできます。 3階層ネストの例 character: appearance: 設計のコツ palette: fur: #FFFFFF 大分類を第1階層に置き、詳細属性をぶら下げると、後から要素を差し替えや すい構成になる。 jacket: #1B2A4A proportions: head_to_body: 1:2.5 13 / 27
MODULE 02 — CHECKPOINT 理解度チェック Q2. 単純な値のリスト項目として正しい書き方はどれですか? A - : waving (ハイフンの後にコロンを書く) B - waving (ハイフン+半角スペースの後に値) C : waving (コロンのみで列挙) 解説 単純な値のリストはキーを持たないため、「- 値」の形で書きます。「- : waving」のようにコロンを加えるのは誤りです。 14 / 27
MODULE 03 データ型・文字列編 STRINGS & DATA TYPES クォートが必要になる4つのケース 複数行文字列(| と >)の使い分け シングルクォートとダブルクォートの違い 15 / 27
MODULE 03 — 01 文字列とクォートの規則 多くの文字列にクォートは不要ですが、特定の記号を含む場合は クォートで囲む必要があります。 クォート不要 と 必要 の比較 style: flat illustration コロンを含む文字列 "ratio: 16:9" のように : を含む場合は必須 ↑ コロンを含むためクォート必須 先頭が特殊記号 #, &, *, !, |, >, [, ] などで始まる値 シングル と ダブル の違い true/falseに見える文字列 "true" を文字列として扱いたい場合 ダブルクォートのみ \n 等のエスケープを解釈する 16 / 27
MODULE 03 — 02 複数行文字列 — | と > | (パイプ)= literal literal(|)の例 改行をそのまま保持する。台本のような、行区切りに意味がある文章に。 > (フォールド)= folded 改行をスペースに変換して 1行に畳み込む。読みやすさ優先の説明文に。 folded(>)の例 17 / 27
MODULE 03 — CHECKPOINT 理解度チェック Q3. 改行をそのまま保持したい場合に使うブロックスカラーはどちらですか? A > (フォールド、folded) B | (パイプ、 literal) C どちらを使っても同じ結果になる 解説 | (literal)は改行をそのまま保持します。> (folded)は改行をスペースに変換して1行に畳み込むため、詩や台本など行区切りに意味がある文章には | が適していま す。 18 / 27
MODULE 04 実践・応用編 ANCHORS, PITFALLS & CASE STUDY アンカー(&)と参照(*)による再利用 実務でよくある落とし穴と対策 総合ケーススタディ 19 / 27
MODULE 04 — 01 アンカーと参照 — & と * &名前 で値にアンカーを付け、*名前 でその値を別の場所から再利 用できます。重複記述を避け、一貫性を担保できます。 アンカー定義と参照 base_character: &rabbit fur: white 活用シーン scene_1: *rabbit scene_2: *rabbit 同一キャラクターの複数シーンを1ファイルにまとめる際、外見定義をアンカー化す ると表記ゆれを防げる。 *rabbit は &rabbit の内容をそのまま複製する。 20 / 27
MODULE 04 — 02 よくある落とし穴 早見表 タブ文字の混入 インデントのずれ コロンを含む未クォート文字列 エディタの自動インデント設定を確認する 兄弟キーの幅を厳密に揃える "16:9" のように必ずクォートする true/false/nullの誤変換 全角スペースの混入 末尾の不要な空白 文字列として使いたい場合は明示的にクォート 日本語入力時は特に注意して検索・除去する 見えない空白がキー・値の末尾に残っていないか確認 21 / 27
MODULE 04 — 03 / CASE STUDY 総合ケーススタディ:キャラクター一貫性プロンプト これまで学んだ文法をすべて使い、実務レベルのYAMLプロンプトを構成する # しろうさぎアナウンサー 基本設定 &rabbit / *rabbit character: &rabbit species: white rabbit 外見定義を一度書き、cast内で再利用 outfit: jacket: navy blue suit ネストされた outfit scene: 属性を階層化し差し替えやすく cast: - *rabbit setting: news studio > によるnegative_prompt negative_prompt: > 除外条件を1つの文字列に集約 blurry, inconsistent colors 22 / 27
MODULE 04 — CHECKPOINT 理解度チェック Q4. 同一キャラクターを複数シーンで再利用する際に最も適した方法はどれですか? A 各シーンにキャラクター設定をすべて再記述する B &で定義したアンカーを *で参照して再利用する C キャラクター名だけをコメントとして書いておく 解説 &でアンカーを定義し*で参照することで、重複記述を避けつつ、キャラクター設定の一貫性を保てます。再記述はメンテナンス性を下げ、表記ゆれの原因になりま す。 23 / 27
COURSE SUMMARY 講座まとめ: 5つの原理原則 階層はインデントで表現する タブ禁止・幅を統一 リストは「 - 」で列挙する 配列 or オブジェクトのリスト 特殊文字を含む値はクォートする 特に : を含む値は必須 長文は | / > で使い分ける 改行保持か畳み込みか アンカー (&)と参照(*)で再利用する 一貫性の担保と重複削減 24 / 27
NEXT STEPS 次のステップ 実務ファイルで練習する 応用トピックを学ぶ チームへの展開 自社のDocker Compose・CI/CD設定ファイルを JSON Schemaによるバリデーション、YAML Lint 本講座の資料を社内勉強会・オンボーディング 読み解いてみる ツールの導入 資料として活用する 25 / 27
COURSE COMPLETE お疲れさまでした 全4モジュールを修了し、YAMLの基礎から実践までを習得しました。 26 / 27
THANK YOU ご視聴ありがとうございました ご不明点・研修導入に関するお問い合わせは、下記までお気軽にご連絡ください。 うさうさ研修工房 面白きこともなき世を面白く 27 / 27