見出し画像

エンジニア向け!はじめての「ChatGPT」で業務効率化をするヒント

こんにちは!生成AIコンシェルジュです。
すっかり暑くなってきましたね💦

さて、今回は、開発業務の経験をもとにした、働きやすさに繋がるヒントをnoteに記していきたいと思います。

本日は「生成AI」はほぼ初めて!というエンジニアの方が、業務で使える活用術をご紹介します。

まずは基本的な使い方の習得を目指しましょう!


生成AI活用における5つのリスク

生成AIを活用する際には、以下の5つのリスクを意識することが重要です。

  1. データの収集: ChatGPTに限らず、多くの生成AIモデルは、ユーザーからの入力データをトレーニングや品質改善のために収集し、分析します。そのため、意図せず機密情報が収集されてしまうリスクがあります。

  2. 情報の保持と再生成: 生成AIは、過去のトレーニングデータを元に回答を生成します。そのため、特定の情報が再生成され、機密情報が不適切に開示されてしまうリスクがあります。

  3. セキュリティリスク: サイバー攻撃やアクセス制御の不備により、機密情報が流出する恐れがあります。

  4. 法規制とコンプライアンス: 法律や業界規制に違反してしまうリスクがあり、罰則を受ける可能性があります。

  5. 不正確な情報の提供: 生成AIは、インターネット上のウェブページ、書籍、記事、Wikipediaなど、公開されているテキストデータから情報を収集し、与えられた文脈に基づいた予測を回答として生成します。そのため、情報の正誤性や最新性は保証されていません。

📌 特に注意すべき2つのポイント

上記5つのリスクを踏まえ、生成AIを使う上で、特に注意すべきポイントは2点です。

  • 情報漏洩をさせない

  • 情報の正誤性を確かめる

情報漏洩を防ぐには?

情報漏洩のリスクを避けるためには、 「機密情報・秘密情報・個人情報」を生成AIに入力しない というのが大原則です。

そのためには、使用する人が 「何が入れてはいけない情報に該当するのか」 を理解している必要があります。

企業で生成AIを導入する際には、研修などで、入力してはいけない情報について、具体例を交えながら周知徹底することが重要になります。

情報の正誤性を確認するには?

生成AIが生成した情報は、必ずしも正しいとは限りません。

特に、数値データや事実関係が重要な場合は、他の資料や情報源と照らし合わせて、情報の正誤性を確認する必要があります。

生成AIが得意なこと

生成AIは、情報の正誤性が重要ではない「アイデア出し」や「文章作成の補助」などに活用するのが効果的です。

生成AIは、あくまでも人間の活動をサポートするツールであることを理解し、その特性を踏まえた上で、適切に活用していくことが重要です。

ChatGPTの基本的な使い方

基本的な使用方法は、会話をするように「聞きたい事」を入力するだけです。

開発業務の効率化につながる使い方を5つ紹介

1. 実装アイデアの提案

アイデア出しはGPTが得意とする業務の一つです。

試しに、既存システムの機能改修案を考える際のアイデアを出してもらいましょう。(架空のシステムです)

💬 入力プロンプト

あなたは優秀なシステムエンジニアです。あるECサイトの機能改修をすることになりました。
以下の条件から、ユーザーの購買体験を向上させるための新しい機能のアイデアを10個考えてください。

目的: 新機能追加によるユーザーの購買体験向上とコンバージョン率の増加

サービス概要:  アパレル商品のECサイト

現状の機能: 

商品一覧ページ

商品詳細ページ

カート機能

注文履歴

課題: 

ユーザーが求める商品を見つけにくい

カートに追加した商品をそのまま放置してしまうユーザーが多い


🤖 GPTの回答

アパレル商品のECサイトにおけるユーザー体験向上とコンバージョン率の増加を目指して、以下の新機能を提案します。

1. **パーソナライズドレコメンデーション**
   - ユーザーの閲覧履歴や購入履歴を元に、好みに合った商品をレコメンドする機能。機械学習アルゴリズムを用いることで精度を向上させる。

2. **リマインダー機能**
   - カートに追加した商品を放置しているユーザーに、定期的にリマインダーを送信する。割引クーポンを含むことで購買意欲を高める。

3. **商品検索フィルターの強化**
   - 色、サイズ、価格帯、ブランド、レビュー評価などの詳細なフィルターを追加し、ユーザーが求める商品をより簡単に見つけられるようにする。

4. **バーチャル試着機能**
   - ユーザーが自分の写真をアップロードし、商品をバーチャルで試着できる機能。サイズや色の選択に役立てる。

5. **在庫アラート機能**
   - 欲しい商品の在庫が少なくなったり再入荷した際に通知する機能。ユーザーが買い逃すことを防ぐ。

6. **関連商品の提案**
   - 商品詳細ページに関連商品を表示し、クロスセルを促進する。例として、シャツを見ているユーザーには関連するパンツやアクセサリーを表示する。

7. **ユーザーレビューと評価の充実**
   - 商品ページに詳細なレビューや評価を表示する。購入者が投稿する写真やビデオレビューを追加し、信頼性を向上させる。

8. **購入前に相談できるチャットサポート**
   - 購入前に商品の詳細やコーディネートのアドバイスをチャットで受けられるサポート機能。AIチャットボットや専門スタッフとの連携を考慮。

9. **ウィッシュリスト機能**
   - 気になる商品をウィッシュリストに追加できる機能。ユーザーが簡単にお気に入りの商品を管理し、後で購入することができる。

10. **タイムセールとフラッシュセールの通知**
    - 限定時間のセールやフラッシュセールの情報をリアルタイムで通知する機能。ユーザーの購入意欲を高め、迅速な購買行動を促進する。

これらの機能を実装することで、ユーザーが求める商品を見つけやすくし、カート放置を減少させることが期待できます。また、購買体験が向上することで、コンバージョン率の増加にも寄与するでしょう。

これらのアイデアは、ユーザーが求める商品を見つけやすく、購入を促進するための新しい機能として、様々なユーザーニーズに対応することを目指しています。いかがでしょうか?

2. 開発手順の整理

開発プロジェクトは複数のステップを経て進行しますが、ChatGPTを使うとその業務フローを整理するのに役立ちます。たとえば、「API開発のプロジェクトを効率的に進めるための手順を教えて」と尋ねると、具体的なステップとその順序を提案してくれます。

💬 入力プロンプト

API開発のプロジェクトを効率的に進めるための手順を教えて。

簡潔に、マークダウン形式で記述し、コードブロック表示して。

「簡潔に」というワードを入れる事でよりシンプルな記述になります。

「マークダウン形式で記述し、コードブロック表示して。」と指示する事で、他のテキストエディタにコピーしやすくなります。


🤖 GPTの回答

## API開発プロジェクトを効率的に進めるための手順

1. **要件定義**
    - APIの目的と機能を明確にする
    - 利用するユーザーやシステムを特定する
    - データの流れとエンドポイントを設計する

    ```markdown
    - APIの目的
    - ターゲットユーザー
    - データフロー
    - エンドポイント
    ```

2. **技術選定**
    - プログラミング言語やフレームワークを選定する
    - 必要なツールやライブラリを決定する

    ```markdown
    - 言語: Python, JavaScript
    - フレームワーク: Flask, Express
    - ツール: Postman, Swagger
    ```

3. **プロジェクトのセットアップ**
    - リポジトリを作成し、バージョン管理を設定する
    - プロジェクト構成を定義し、必要なディレクトリとファイルを作成する

    ```sh
    git init
    mkdir src tests
    touch src/app.py tests/test_app.py
    ```

4. **エンドポイントの設計と実装**
    - 各エンドポイントのリクエストとレスポンスを設計する
    - 必要なモデルやデータベーススキーマを定義する

    ```python
    from flask import Flask, jsonify

    app = Flask(__name__)

    @app.route('/api/v1/resource', methods=['GET'])
    def get_resource():
        return jsonify({"message": "Hello, World!"})

    if __name__ == '__main__':
        app.run(debug=True)
    ```

5. **テストの作成**
    - 単体テストや統合テストを作成し、エンドポイントの動作を検証する
    - テスト自動化ツールを設定する

    ```python
    import unittest
    from src.app import app

    class ApiTestCase(unittest.TestCase):
        def test_get_resource(self):
            tester = app.test_client(self)
            response = tester.get('/api/v1/resource')
            self.assertEqual(response.status_code, 200)
            self.assertEqual(response.json, {"message": "Hello, World!"})

    if __name__ == '__main__':
        unittest.main()
    ```

6. **ドキュメントの作成**
    - APIの利用方法やエンドポイントの詳細をドキュメント化する
    - SwaggerやOpenAPIを使用して自動生成する

    ```yaml
    openapi: 3.0.0
    info:
      title: Sample API
      version: 1.0.0
    paths:
      /api/v1/resource:
        get:
          summary: Retrieve a resource
          responses:
            '200':
              description: Successful response
              content:
                application/json:
                  schema:
                    type: object
                    properties:
                      message:
                        type: string
                        example: Hello, World!
    ```

7. **デプロイと運用**
    - APIをサーバーにデプロイし、運用環境で動作を確認する
    - モニタリングとログ管理を設定する

    ```sh
    docker build -t myapi .
    docker run -d -p 80:80 myapi
    ```

8. **メンテナンスとアップデート**
    - フィードバックを基に機能を追加や改善する
    - セキュリティパッチを適用し、APIの安定性を保つ

    ```sh
    git pull
    git checkout -b feature/new-endpoint
    ```

以上の手順を踏むことで、効率的にAPI開発を進めることができます。

今回は言語について指定しなかったので、PythonとFlaskの例で説明されていますが、ここを実際に業務で使っている言語で出力するよう指示すれば使えそうです。

3. コード生成

ChatGPTはコード生成能力も優れており、実装のたたきとなるコードを作成してくれます。

💬 入力プロンプト

Pythonで、ユーザーの名前と年齢を受け取って、「〇〇さん、こんにちは!あなたは△△歳ですね。」と出力する関数を作ってください。
簡単なwebアプリとして実装してください。

🤖 GPTの回答

Flaskを使って簡単なWebアプリを作成し、ユーザーの名前と年齢を受け取って挨拶メッセージを表示するアプリケーションを作成します。

まず、Flaskをインストールします。以下のコマンドを使用してください:

```bash
pip install Flask
```

次に、以下のコードを使用してFlaskアプリケーションを作成します。

```python
from flask import Flask, request, render_template_string

app = Flask(__name__)

@app.route('/', methods=['GET', 'POST'])
def greet():
    if request.method == 'POST':
        name = request.form['name']
        age = request.form['age']
        message = f"{name}さん、こんにちは!あなたは{age}歳ですね。"
        return render_template_string('''
            <html>
                <body>
                    <h1>{{ message }}</h1>
                    <a href="/">戻る</a>
                </body>
            </html>
        ''', message=message)
    return '''
        <html>
            <body>
                <form method="post">
                    名前: <input type="text" name="name"><br>
                    年齢: <input type="text" name="age"><br>
                    <input type="submit" value="送信">
                </form>
            </body>
        </html>
    '''

if __name__ == '__main__':
    app.run(debug=True)
```

このコードをファイルに保存し、例えば `app.py` として保存します。次に、ターミナルでこのファイルを実行します:

```bash
python app.py
```

これにより、ローカルホスト上でFlaskサーバーが起動し、ブラウザで `http://127.0.0.1:5000/` にアクセスすることでアプリケーションを確認できます。フォームに名前と年齢を入力し、「送信」ボタンを押すと、指定したメッセージが表示されます。

4. ドキュメント要約

こちらもGPTが得意とする業務の一つです。

仕様書など、長文のドキュメントを読む前に概要を把握できるので、インプットの質が高まります。

翻訳も得意なので、海外のドキュメントの内容も日本語で把握しやすい点も嬉しいですね!

5. エラー解決

Chat GPT4oでは、エラーメッセージを読み込ませて解決策を提示してもらうことができます。

たとえば、プログラミング中に発生したエラーメッセージをコピーしてChatGPTに貼り付け、「このエラーの原因と解決策を教えてください」と指示すれば、エラーの原因を特定し、解決方法を提案してくれます。

※ エラーメッセージの内容によっては、機密情報を含む場合があるので、使用可能なものなのか各自で判断してください。

ChatGPT初心者がつまづきやすいポイントと解決策

業務効率化を加速させるChatGPTですが、使い始めの頃は誰でも一度はつまずくもの。

よくあるお悩みを解決するヒントを、生成AIコンシェルジュがご紹介します。

1. 途中で文章が途切れてしまう…

「あれ? まだ続きがありそうなのに、ChatGPTが急に黙っちゃった…」

そんな時は、焦らずに以下のいずれかの言葉を伝えてみましょう。

  • 「続きを生成してください」

  • 「続きをお願いします」

たったこれだけで、ChatGPTは気持ちよく続きを書いてくれます。

実は、続きがない場合でも、これらの言葉を伝えることで、詳細な説明を追加してくれることもあるんです!

2. 専門用語ばかりで、回答が理解できない…

「うーん、ChatGPTの言っていることが難しくて、よくわからない…」

そんな時は、ChatGPTに「中学生でもわかるように説明して」とお願いしてみましょう。

難しい専門用語を避け、より分かりやすく、丁寧な言葉で説明してくれるはずです。

3. 質問が漠然としすぎて、的外れな回答が返ってくる…

例えば、「システム設計を改善したいんだけど、どうすればいい?」

このような抽象的な質問では、ChatGPTは何を答えれば良いのか迷ってしまいます。

ChatGPTに的確な回答をしてもらうには、質問を具体的にすることが重要です。

例えば…

⭕️ 「ECサイトの検索機能を改善するための、具体的な設計案を教えてください。」

このように、改善したい対象を明確に伝えることで、より的確で役立つ回答が得られます。

4. 質問が長すぎて、ChatGPTが混乱してしまう…

例えば、「新しいシステムの設計を考えてるんだけど、パフォーマンスを向上させるための方法、最新のアーキテクチャ、セキュリティ対策など、いろいろ教えて欲しい。」

このように、一度にたくさんの質問を詰め込むと、ChatGPTは混乱してしまいます。

質問は短く、具体的に分けて伝えるようにしましょう。

例えば…

⭕️ 「システムのパフォーマンスを向上させる設計のヒントを教えてください。」

⭕️ 「最新のシステムアーキテクチャを教えてください。」

⭕️ 「システム設計におけるセキュリティ対策のポイントを教えてください。」

5. 前回の会話を覚えていない…

例えば、「前に言ってたデータベース設計、どう思う?」

ChatGPTは、前回の会話を完璧に覚えているわけではありません。

文脈が失われないように、前回の話を簡単に要約してから質問するようにしましょう。

例えば…

⭕️ 「データベース設計について前に話してたんだけど、具体的なテーブル設計案を教えて。」


まとめ|ChatGPTはあなたの頼れるパートナー

ChatGPTは、まるで優秀なアシスタントのように、あなたの業務を効率化してくれる強力なツールです。

使いこなすには少しコツが必要ですが、一度慣れてしまえば、手放せなくなること間違いなし!

ぜひ、これらのポイントを参考に、ChatGPTをあなたの業務に取り入れてみてください!



生成AIコンシェルジュ運営のJKK Technologiesでは、生成AIについて個別でセミナーを受けることができるサービスも実施しております。

生成AIを導入するにあたり、プロが業務についてヒアリングを行い、実際に業務に導入するまでサポートすることも可能です。

HPのお問い合わせフォームより、ご気軽にお問い合わせください。


この記事が気に入ったらサポートをしてみませんか?