AIエージェント開発者養成講座で使用するソースコードです。
ハンズオン環境の構築手順はこちらを参照してください。
講座の日程ごとにディレクトリを分けています。day2 と day3 には、講座中に参照するための完全版と、受講者に配布する自動生成版(starter)があります。
| ディレクトリ | 役割 |
|---|---|
day1-starter/ |
day1 の受講者配布用 starter(手動管理)。VS Code の設定などを含む。 |
day2/ |
day2 の完全版 |
day2-starter/ |
day2 の受講者配布用 starter(自動生成)。直接編集しないこと。 |
day3/ |
day3 の完全版 |
day3-starter/ |
day3 の受講者配布用 starter(自動生成)。直接編集しないこと。 |
setup/ |
ハンズオン環境の構築(AWS EC2 + code-server)。詳細は setup/README.md を参照。 |
docs/ |
講座準備用ドキュメントと API キー取得ガイド(Cohere、Weave、Azure OpenAI)。 |
scripts/ |
starter 生成・Release操作用スクリプト。 |
day2-starter/ と day3-starter/ は、day2/ と day3/ から生成されます。starter を手作業で編集しないでください。次回の make build でディレクトリごと上書き(rm -rf)されます。
make build # day2/ と day3/ から両方の starter を再生成する受講者に配布する内容を変更するには、以下の方法があります。
- 元ファイルを編集する(
day2/またはday3/)。編集後にmake buildを実行します。 - 含めるファイルを制御する:
scripts/generate-day{2,3}-starter/include.txtで指定します。ここに記載されたパスのみが starter にコピーされ、それ以外は除外されます。演習用ファイルを受講者から隠す(例:day3 ではevals/__init__.pyのみを含め、残りは受講者に実装させる)のもこの仕組みです。 - starter 用にファイルを上書きする:
scripts/generate-day{2,3}-starter/overrides/に対象パスと同じ構造で配置します。上書きは(include コピーの後に)最後に適用され、通常は解答コードを空にして受講者が埋められるようにします(例:day3-starterのgenerate_response.py)。
元ファイルを編集したら make build を実行し、starter の差分を確認してからコミットしてください。
講師が3種類のインデックスを事前生成し、教材ソースと同じ yyyy-mm-dd のGitHub Releaseに添付します。
受講者は取得スクリプトで配置できます。講師向けの配布手順と受講者向けの取得手順を参照してください。
インデックスの生成とReleaseの公開は別の操作です。
先に day2/scripts/rag_indexes/create.sh で生成・検索検証・梱包を行い、配布先での動作を確認してから scripts/release/create.sh で公開します。
scripts/release/create.sh は生成済みの配布物(既定: dist/advanced-rag-indexes.tar.gz)を使い、インデックスを生成しません。
生成に失敗しても以前の配布物が残るため、そのまま公開操作へ進まないでください。
| スクリプト | 用途 |
|---|---|
day2/scripts/rag_indexes/create.sh |
生成・検索検証・梱包 |
day2/scripts/rag_indexes/download.sh |
Releaseまたはローカル配布物から復元 |
scripts/release/create.sh |
日付タグ・Release作成と生成済み配布物の添付、Draftの公開 |
scripts/release/delete.sh |
指定日付のRelease・添付・リモートタグ削除 |