Docker Model Runnerを使用したAIチューターのプロトタイピング

すべての開発者は、最初の docker run hello-world を覚えています。その単純なコマンドが画像を取得し、コンテナを作成し、フレンドリーなメッセージを表示するときの興奮と驚きが入り混じった。しかし、AI がその体験をさらに良くできるとしたらどうでしょうか?

Docker の Docs チームのテクニカル ライターとして、私は開発者エクスペリエンスについて考えることに日々を費やしています。最近、私は AI が開発者が新しいツールを学習する方法をどのように強化できるかを模索しています。ドキュメントタブと ChatGPT ウィンドウをやりくりする代わりに、AI 支援を学習フローに直接組み込むことができたらどうでしょうか?これにより、概念実証として Docker Model Runner を利用したインタラクティブな AI チューター を構築することにしました。

組み込み AI チューターのケース

開発者教育の状況は変化しています。ドキュメントは依然として不可欠ですが、AI アシスタントと一緒にコーディングする開発者が増えています。しかし、端末、ドキュメント、外部の AI チャットの間でコンテキストを切り替えると、集中力と流れが崩れます。組み込みの AI チューターは、この力関係を完全に変えます。

AI アシスタントを使用して Docker を学習することを想像してみてください。

  • 開発環境と並行して存在
  • 達成しようとしていることについてのコンテキストを維持します
  • ネットワーク遅延なしで迅速に応答
  • コードと質問を完全に非公開にします

これはドキュメントを置き換えることではありません。それは、開発者に学習方法の選択肢を提供することです。ガイドを読むことを好む人もいれば、実際に実践しながら学ぶ人もいれば、複雑なタスクを通じて会話によるガイダンスを求める人も増えています。

AI チューターの構築

AI チューターを構築するために、アーキテクチャをかなりシンプルにしました。

DMR 1

  • フロントエンドは、チャット インターフェイスを備えた React アプリです。派手なことは何もなく、メッセージ履歴、入力フィールド、読み込み状態だけです。
  • バックエンドは、OpenAI 互換 API を介してローカル LLM にリクエストを転送する /api/chat エンドポイントです。
  • すべてを強化する AI が、Docker Model Runnerの出番です。Docker Model Runner は、 マシン上でローカルにモデルを実行し、OpenAI エンドポイントを介してモデルを公開します。Docker Model Runner を使用することにしたのは、ローカル開発と高速イテレーションを約束したためです。
  • システムプロンプトは、docker run hello-worldの実行を念頭に置いて設計されました。

You are a Docker tutor with ONE SPECIFIC JOB: helping users run their first "hello-world" container.

YOUR ONLY TASK: Guide users through these exact steps:
1. Check if Docker is installed: docker --version
2. Run their first container: docker run hello-world
3. Celebrate their success

STRICT BOUNDARIES:
- If a user says they already know Docker: Respond with an iteration of "I'm specifically designed to help beginners run their first container. For advanced help, please review Docker documentation at docs.docker.com or use Ask Gordon."
- If a user asks about Dockerfiles, docker-compose, or ANY other topic: Respond with "I only help with running your first hello-world container. For other Docker topics, please consult Docker documentation or use Ask Gordon."
- If a user says they've already run hello-world: Respond with "Great! You've completed what I'm designed to help with. For next steps, check out Docker's official tutorials at docs.docker.com."

ALLOWED RESPONSES:
- Helping install Docker Desktop (provide official download link)
- Troubleshooting "docker --version" command
- Troubleshooting "docker run hello-world" command
- Explaining what the hello-world output means
- Celebrating their success

CONVERSATION RULES:
- Use short, simple messages (max 2-3 sentences)
- One question at a time
- Stay friendly but firm about your boundaries
- If users persist with off-topic questions, politely repeat your purpose

EXAMPLE BOUNDARY ENFORCEMENT:
User: "Help me debug my Dockerfile"
You: "I'm specifically designed to help beginners run their first hello-world container. For Dockerfile help, please check Docker's documentation or Ask Gordon."

Start by asking: "Hi! I'm your Docker tutor. Is this your first time using Docker?"

Docker Model Runner の設定

Docker Model Runner の使用を開始するのは簡単であることがわかりました。Docker Desktopの設定を切り替えてTCPサポートを有効にするだけで、ローカルのReactアプリがシームレスに接続されました。このセットアップは、Docker Model Runnerのシンプルさの約束を実現しました。

初期テストでは、モデルは良好なパフォーマンスを発揮しました。OpenAI 互換のエンドポイントを介して対話でき、React フロントエンドは変更や微調整を必要とせずに接続できました。プロトタイプをすぐに立ち上げて実行しました。

AIチューターをきちんと評価するために、2つの道からアプローチしました。まず、初心者の開発者のように対話することで「幸せな道」をたどりました。Dockerを「初めて」使ったと言ったところ、講師は私のプロンプトに適切に対応してくれました。コンテナを実行する前に、ターミナルを使用してDockerがインストールされているかどうかを確認する手順を説明しました。 

DMR 2

次に、私は家庭教師の限界を試すために「不幸な道」を冒険しました。経験豊富な開発者として、私は基本的なコンテナ操作を超えて推し進めようとしました。AI チューターは集中力を維持し、指定された範囲内にとどまりました。

DMR 3

このガイドラインの厳格な遵守は、ベスト プラクティスに従うことではなく、むしろ私の特定のユースケースを満たすことでした。明確に定義された単一の目的を果たす明確なガードレールを備えた AI チューターのプロトタイプを作成する必要がありました。このアプローチは私のプロトタイプではうまくいきましたが、将来の反復では、複数のトピックをカバーしたり、 特定の Docker ユースケース ガイドを補完したりするように拡張される可能性があります。

Docker Model Runner に関する考察

Docker Model Runner は、使い慣れた Docker ワークフローを通じて AI モデルにアクセスできるようにするという中核的な約束を実現しました。Docker エコシステムにおける一流市民としてのモデルのビジョンは、迅速なローカル プロトタイピングにとって価値があることが証明されました。最近の Docker Desktop リリースでは、管理コマンドの改善や API サポートの拡張など、Docker Model Runner に継続的な改善がもたらされました。

私にとって本当にうまくいったこと:

  • Docker Desktopとのネイティブ統合、私が毎日、毎日使うツール
  • フロントエンドの変更を必要としないOpenAI互換API
  • より高速なローカル推論のためのGPUアクセラレーションのサポート
  • Docker Hubで利用可能なモデルの選択の増加

何よりもシンプルさが際立った特徴です。数分以内に、ローカル LLM が実行され、React アプリの API 呼び出しに応答するようになりました。アイデアからプロトタイプまでのスピードは、まさに開発者が AI ツールを実験する際に必要としているものです。

前進

このプロトタイプは、組み込み AI チューターが単なるアイデアではなく、実用的な学習ツールであることを証明しました。Docker Model Runner は、コンテキスト AI 支援が開発者の学習を強化できるかどうかをテストするために必要な基盤を提供してくれました。

Docker Model Runner に興味がある方へ:

  • 今すぐ実験を始めましょう! このツールは、有意義な実験を行うのに十分成熟しており、セットアップのオーバーヘッドは最小限です。
  • シンプルにしてください。 基本的な React フロントエンドとわかりやすいシステム プロンプトで、この概念を検証するのに十分でした。
  • ローカルファーストで考えてください。 モデルをローカルで実行すると、レイテンシーの懸念がなくなり、開発者データのプライバシーが保たれます。

Docker Model Runner は、AI モデルをコンテナーと同じくらい使いやすくするための重要なステップを表しています。私の旅にはいくつかの困難がありましたが、目的地はそれだけの価値がありました:開発者の学習を支援するAIチューターでした。

ドキュメント、開発者エクスペリエンス、AI の交差点を探求し続けると、Docker Model Runner は私のツールキットに残ります。コンテナーを実行するのと同じくらい簡単にローカル モデルをスピンアップできるため、インテリジェントで応答性の高い開発者ツールの可能性が開かれます。開発者エクスペリエンスの未来は、単なる Docker モデルの暴走かもしれません。

自分で試してみる

独自の AI を活用した開発者ツールを構築する準備はできていますか? Docker Model Runner の使用を開始する

フィードバックはありますか? Docker チームは、Docker Model Runner の使用経験について聞きたいと考えています。何が機能し、何が機能していないか、そしてどのような機能を使用したいかを共有します。あなたの意見は、Docker の AI 製品と機能の将来を直接形作ります。Docker とフィードバックを共有します

投稿カテゴリ

関連記事