Skip to main content

GitHub Spark について

          GitHub Sparkを使用した自然言語によるインテリジェント アプリの構築と展開について説明します。

概要

GitHub Spark を使うと、望むことを自然言語で記述し、データ ストレージ、AI 機能、GitHub 認証が組み込まれたフルスタックの Web アプリを取得できます。 プロンプト、ビジュアル ツール、またはコードを使って反復処理した後、クリックしてフル マネージド ランタイムにデプロイできます。

Spark は GitHub とシームレスに統合されているため、同期された GitHub codespace と高度な編集用の Copilot を使って、Spark を開発できます。 チーム コラボレーション用のリポジトリを作成したり、GitHub のツールと統合のエコシステムを活用したりすることもできます。

使用することで得られる利点 Spark

          Spark は、アプリ開発のすべての段階で幅広い利点を提供できます。

自然言語またはコードでアプリを構築する

          Sparkを使用してアプリをビルドするためにコーディングする方法を知る必要はありません。 アプリが自然言語で実行する内容を記述できます。 Spark は、アプリのライブ対話型プレビューと共に、必要なすべてのコードを生成します。

コードを調べて編集する場合は、 Sparkでコード パネルを開くか、 GitHub コード空間 (クラウドベースの開発環境) でアプリを開くだけです。

GitHub Codespaces とは」を参照してください。

AI 機能を利用する

          Spark は GitHub Modelsとネイティブに統合されているため、 Sparkを求めるメッセージを表示するだけで、アプリに AI 機能 (テキストの要約や画像タグの提案など) を追加できます。 
          Spark では、必要な推論コンポーネントが自動的に追加され、それらの機能を制御するシステム プロンプトを自分で編集できます。

マネージド データ ストア

          Sparkがアプリにデータを格納する必要性を検出すると、マネージド キーと値のストアが自動的に設定されるため、データベースの設定と管理について心配する必要はありません。 データ ストアは Azure (Cosmos DB) で実行され、小さなレコード (エントリあたり最大 512 KB) を対象としています。

組み込みのセキュリティ保護

          Spark には、ユーザーがアプリにアクセスするために GitHub アカウントでサインインする必要があるため、認証が組み込まれています。 可視性とデータaccessオプションを設定して、アプリにaccessするユーザーを制御します。

ワンクリック デプロイ

          Spark には、ワンクリックでアプリをデプロイできる完全に統合されたランタイム環境が付属しています。 必要なインフラストラクチャはすべて自動的にプロビジョニングされるため、サーバーの設定やデプロイの管理について心配する必要はありません。

すべての Spark は、Azure Container Apps (ACA) によってホストおよびデプロイされます。

完全に統合された GitHub

          Spark は GitHubと完全に統合されているため、使い慣れたツールやワークフローを使用してアプリをビルドおよび管理できます。

で作業する GitHub Codespaces

  •         GitHubから直接Sparkコードスペース (クラウドベースの開発環境) を開くことができるので、Copilotとすべての通常の開発ツールにアクセスして、アプリのビルドを続けることができます。
    
  • コードスペースと Sparkの間には自動同期があるため、2 つの環境をシームレスに切り替えることができます。

双方向同期機能を備えたリポジトリを作成する

  • Spark のリポジトリを 1 回のクリックで作成できるため、標準の GitHub ワークフローを使用してアプリのコードを管理したり、他のユーザーと共同作業したりできます。

  • Spark とリポジトリの間には双方向の同期があるため、 Spark またはリポジトリのメイン ブランチで行われた変更は、両方の場所に自動的に反映されます。 リポジトリの作成前に Spark に対して行った変更はすべてリポジトリに追加されるため、作成後に Spark に対して行われたすべての変更とコミットの完全な記録が得られます。

コラボレーターを招待する

  • Spark を構築する作業に他のユーザーの協力を依頼する場合は、コラボレーターとしてリポジトリに追加できます。

標準の GitHub 機能を活用する

  • Spark のリポジトリを作成したら、プル要求、問題、プロジェクト ボードなどの標準的な GitHub 機能をすべて使用して Spark 開発プロセスを管理し、CI/CD ワークフローの GitHub Actions を活用できます。

エンタープライズに関する考慮事項

          Sparkを評価しているエンタープライズ管理者の場合は、エンタープライズ レベルで利用できる特定の利点と制御があります。

企業の Spark を有効にする方法の詳細については、 エンタープライズでの GitHub Spark の管理 を参照してください。

企業の Spark を有効にする理由

          Sparkを有効にすると、企業管理者が期待するセキュリティ、ガバナンス、コスト管理を維持しながら、チームがアイデアから運用環境にすばやく移行できるようになります。

次のような利点があります。

  •         **一元的な制御**。 
            Spark は、 Copilot ライセンスに含まれており、既存のエンタープライズ アクセス ポリシーを尊重します。
    
  •         **ガバナンスとセキュリティ**。 
            GitHubと Azure 上に構築された Spark は、エンタープライズ レベルの信頼性、認証、コンプライアンスを継承します。
    
  •         **透明性とコスト管理**。 
            Spark 従量課金はCopilot Premium リクエストから引き出され、GitHub 課金プラットフォームを通じて監視することができます。
    
  •         **イノベーションの加速**。 Teams では、断片化されたツールチェーンに依存することなく、数か月ではなく数時間でアイデアを検証できます。
    

Billing

          Sparkの各自然言語プロンプトでは、4 つの Premium 要求が使用されます。

GitHub Sparkの請求」を参照してください。

インフラストラクチャ

          Spark開発環境は、GitHub Codespacesを利用します。 企業で Codespacesが無効になっている場合、ユーザーは引き続き Spark インターフェイスにアクセスできますが、基になるコード空間を開くことができません。

すべての Spark は Azure Container Apps (ACA) にデプロイされます。

          Copilot を使ってあなたのスキルを伸ばしましょう。

          GitHub Sparkの機能とGitHub Copilotを組み合わせて、アプリの開発をサポートできます。

          Copilot エージェント モード

          GitHubコードスペースで Spark を開くと、CopilotやCopilot チャット エージェント モードなど、Copilotのすべての機能にアクセスできます。

エージェント モードは、特定のタスクを念頭に置き、 Copilot がコードを自律的に編集できるようにする場合に便利です。 エージェント モードでは、 Copilot は変更するファイルを決定し、タスクを完了するためのコード変更とターミナル コマンドを提供し、元のタスクが完了するまで問題を修復するために反復処理します。 アプリの開発を次のレベルに引き上げます。また、 Copilot を利用してコードの問題をデバッグおよびトラブルシューティングすることもできます。

          [エージェント モードCopilot](/copilot/how-tos/chat-with-copilot/chat-in-ide#agent-mode)参照してください。

Copilot クラウド エージェント

spark が GitHub リポジトリに接続されたら、 Copilot クラウド エージェント を使用して、他のことに集中しながら、アプリのビルドと保守を続けることができます。

クラウド エージェントを使用すると、特定のタスクを Copilot に委任します ( Copilotに問題を割り当てるか、プル要求を作成するように Copilot を求める)、 Copilot はタスクを完了するためにバックグラウンドで自律的に動作します。 Copilot クラウド エージェント は、バグの修正、コードのリファクタリング、テスト カバレッジの向上などを行うことができます。

GitHub Copilot クラウド エージェントについて」を参照してください。

あなたのSparkを共有する

Spark を公開する準備ができたら、次の表示オプションから選択できます。

  • 自分にのみ表示する
  • 特定の組織のメンバーに表示されます。 GitHub
  • すべての GitHub ユーザーに表示されます (管理者の構成に基づいて特定の マネージド ユーザー アカウント で無効になる場合があります)

次に、他のユーザーと Spark を共有して、アプリの閲覧や操作を許可することができます。 Spark へのリンクは、そのリンクを知っているユーザー以外は発見できません。

必要に応じて、Spark を "読み取り専用" として公開できます。つまり、他のユーザーがアプリのコンテンツを編集または削除できないようにして、アプリを他のユーザーに紹介することができます。

          Spark の制限事項

          Spark では、信頼性のためにオピニオンスタック (React、TypeScript) を使用します。 最良の結果を得るには、 Sparkの SDK とコア フレームワーク内で作業する必要があります。

外部ライブラリを追加することはできますが、 Sparkの SDK との互換性は保証されません。 外部ライブラリを追加した後は、必ず Spark を徹底的にテストしてください。

既定では、Spark のデータ ストアは、公開された Spark のすべてのユーザーと共有されます。 他のユーザーに公開する前に、アプリから個人情報や機密データを必ず削除してください。 必要に応じて、Spark を "読み取り専用" として公開できます。つまり、他のユーザーがアプリのコンテンツを編集または削除できないようにして、アプリを他のユーザーに紹介することができます。

参考資料

  •         [AUTOTITLE](/copilot/responsible-use/spark)
    
  •         [AUTOTITLE](/copilot/tutorials/spark/build-apps-with-spark)
    
  •         [AUTOTITLE](/copilot/how-tos/troubleshoot-copilot/troubleshoot-spark)