Open21

生成AIサービス集

hiroki_nakaharahiroki_nakahara

Github Copilot

https://zenn.dev/safubuki/articles/turtle-20240223-gitcopilot
機能メモ

インラインチャット

・コードを書いているファイルの中でチャット機能を呼び出し、コードの生成や修正などを行う機能
・プログラムの新規作成、部分的な処理の追加・修正で利用可能
・Ctrl + I (アイ) キー で呼び出せる

コードサジェスチョン

・1行または複数行の最適なコードを提案(サジェスチョン)する機能
・使い方としては、コメントで実行したい処理を記述し、目的の場所で改行するとコードが提案される
・提案が期待する内容ではなかった場合、Ctrl + Enter キーを入力することで、別の提案を一覧で表示することができる

チャット

・エディタ上でコードの生成や関数の説明、その他プログラム開発に関する質問など自然言語により対話する機能
・エディタ左側のチャットタブを選択することで利用可能
・作成したコードは、Insert at Cursor ボタンを押すことで、ファイルに簡単に反映することができる
・会話の話題を切り替えたときは、チャット画面上部の+のボタン(New Chat)を押すことで、今までの会話をクリアして、新しく始めることができる
・会話内容は時計マークのボタン(Show Chats)にて確認可能

よく使うコマンドメモ

  • /fix
    • 修正内容の提案
  • /doc
    • ドキュメンテーションコメントの追加
  • /tests
    • テストコードの生成
  • /explain
    • 選択したコードの意味や動作を解説
  • /new
    • 新しいファイルやコードを生成
  • /help
    • Copilotの使い方を教えてくれる

コンテキスト変数
特定のファイルやコードの一部を指定して、より具体的で関連性の高い回答を得るため機能

  • #selection
    • アクティブなエディタでカーソル選択した範囲を示す変数
    • #selection 処理内容を説明してくださいや#selection 処理を簡略化してくださいと入力することで、選択範囲のコードについてのみ説明や修正を行うことができる
  • #terminalSelection
    • アクティブなターミナルでカーソル選択した範囲を示す変数
    • プログラム実行時にエラーが発生するシーンでよく利用される
    • ターミナルに表示されたエラーを選択し、#terminalSelection エラーの原因と対策を教えてくださいと入力すると、エラーの原因と対策を教えてくれる
    • Ctrl + @でターミナルが起動できる
  • #file
    • ワークスペース内で選択したファイルを示す変数
    • ファイルの概要や関数の一覧、ファイル同士の関係性を知りたいときに便利
    • #file:sample.py ファイルの概要と関数の一覧を示してくださいや#file:kame.py #file:turtle.py これらのファイルの関係性を示してくださいと入力

感想
チャットくらいしか使えてなかったので、ほぼ使えていなかった機能であるインラインチャット + コマンド、コンテクスト変数を使い込んでみる!!!(個人的な反省も含め...)

hiroki_nakaharahiroki_nakahara

ChatGPT

  • 使いこなすためのTips
    • / でモードを指定する
      • Web検索/画像生成/理由の中から選択可能
    • @ でGPTs を選択できる
      • 過去に使用したことのあるGPTまたは保存したGPTを選択できるらしい
      • GPTs 間でやりとしして整理までいける??
    • cmd + / でショートカットキー一覧を確認
    • 擬似ショートカットキーの作成
      • 例)to=bio
      • ショートカットキー"b"
        • 文頭に"b"の文字が入力されたら、「マークダウン形式でブログ記事化する」
      • ショートカット"t"
        • 文頭に"t"が入力されたら、「表形式でまとめる」を実行してください
    • 表中の日本語の文字化けはJPフォントを渡すことで解消できるらしい(google fontがおすすめ)
    • GPTs + プロンプトジェネレーター はめちゃくちゃ便利そう
    • 今すぐ作るべきは、プロンプトを作成するためのプロンプトを作成するw
      https://twitter.com/shota7180/status/1815582850781184342
      https://github.com/dahatake/ChatGPT-Prompt-Sample-Japanese
      https://qiita.com/b-mente/items/93ea3d9a4fc33a76b949
hiroki_nakaharahiroki_nakahara

Replit Agent

プロトタイプを高速で作成可能なAIツール

  • 得意な領域:バックエンド側のシステム作成
  • 苦手領域:フロントエンド側のシステム作成(Bolt および v0の方が得意)
    https://replit.com/