初めてでもわかる、生成AIを使ってスクリプト生成に挑戦!

はじめに


近年、ChatGPTをはじめとした生成AIの登場により、これまでと比較して格段にAIが身近な存在となりました。 すでに日常生活でAIを活用されている方も多いことかと思います。

本記事では、改めてAIとは何か、また生成AIで何ができるのか、実際に触ってみた結果をご紹介していきます。


1.AIとは?

まず初めに、「AI」とは「Artificial Intelligence(人工知能)」の略称であり、簡単に言うと「人間の知的行動をコンピュータを使って再現しようとする技術」のことです。
AIという言葉は、1956年にアメリカで開催されたダートマス会議で初めて提唱され、その後何度かのAIブームを経て今日に至ります。特に2000年代に始まった第三次AIブームでは、ディープラーニング(深層学習)の登場により、高度な機械学習が可能となったことから、AI技術が飛躍的に進歩しました。 機械学習とは、コンピュータにデータを分析させることで特徴を学ばせ、それを基に予測を行わせる技術のことです。機械学習の学習方法(アルゴリズム)にはいくつかの種類があり、人間の脳の働きを模倣した「ニューラルネットワーク」もその一つです。基本的なニューラルネットワークは、「入力層」「隠れ層(中間層)」「出力層」の3層で構成されていますが、この隠れ層の階層を増やしたものが「ディープラーニング(深層学習)」です。多層構造となることによって、より人間のような複雑な学習が可能となりAI技術の向上に繋がりました。

ディープラーニングについて

2.新たなコンテンツを生み出す生成AIとは?

こうした近年の技術革新に伴い、AIが新たなコンテンツを生み出す「生成AI」が発展しました。生成AIを活用することで、文章や画像、動画、音声など多種多様なコンテンツの生成が可能となります。これらのコンテンツは、AIが作ったとは思えないほど自然で、高品質なものが多いのが特徴です。
例えばChatGPTは、「GPT」という大規模言語モデル(LLM)を基盤にしています。言語モデルとは、人間の言葉を学習してその知識をもとに文章を生成する技術であり、ディープラーニングを活用して膨大なデータを学習したGPTは、非常に精度の高い文章の作成が可能です。

2022年11月にChatGPTが公開されて以降、生成AIは一般社会にも広く普及し、現在私たちは以下のサービスをはじめとした様々な生成AIを利用することができます。

ChatGPT(チャットジーピーティー)

開発元:OpenAI
特徴:基盤にOpenAI開発の大規模言語モデル「GPT」を採用している。
     チャット形式でユーザーと自然な会話が可能。
サイト:https://openai.com/ja-JP/chatgpt/overview/

Microsoft Copilot(コパイロット)

開発元:Microsoft
特徴:ChatGPT同様、言語モデルにOpenAIのGPTを利用。
     WordなどのMicrosoft製品との連携による業務効率向上が強み。
サイト:https://www.microsoft.com/ja-jp/microsoft-copilot/organizations

Gemini(ジェミニ)

開発元:Google
 特徴 :対話型の生成AIサービス。旧Bard(バード)。Google DeepMind開発の大規模言語モデル「Gemini」を利用している。
 サイト:https://gemini.google.com/

Stable Diffusion(ステイブルディフュージョン)

開発元:Stability AI
 特徴 :オープンソースの画像生成AI。PCのスペックを満たせればローカル環境に導入することも可能。
 サイト:https://ja.stability.ai/stable-diffusion

Runway(ランウェイ)

開発元:Runway AI
 特徴 :動画生成AI。画像やテキストデータをもとにして動画を作成することができる。
 サイト:https://runwayml.com/

3.ChatGPTを使ってスクリプトの生成に挑戦!

それでは、実際に生成AIを触ってどのようなことができるのかを確認していきましょう。 ここでは例としてChatGPTを利用していきたいと思います。

https://chatgpt.com/

STEP.1 簡単な会話
まずは、簡単な会話を試してみます。

名前を尋ねたところ、以下のように日本語できちんと回答してくれました。

なお、ChatGPTは多言語に対応しているため、英語で話しかければ英語で回答してくれたり、文章の翻訳もしてくれたりします。

AI会話1
AI会話2

このように、普通の日常会話レベルでは、意味の通った文章が生成可能なことがわかりました。

STEP.2 スクリプトの作成
それでは今度はより高度なものとして、ChatGPTを使ってスクリプトを生成してみたいと思います。

まず実現したい内容をChatGPTに投げかけます。


以下を実現するスクリプトをPythonを使って作成してください。
・WindowsPCにログインしているユーザーを自動サインアウトさせる
・サインアウト前にデスクトップにサインアウトする旨のメッセージを表示させ、
 必要に応じてサインアウトをキャンセルできるようにする。
 ◎メッセージ内容
 xx秒後にこのPCからサインアウトします。
 サインアウトを中止する場合は、[キャンセル]を押してください。
 ※サインアウトまでの時間は30秒で、画面上でカウントダウンさせる
 ◎キャンセルボタン押下後はメッセージが以下の内容に変わる
 サインアウトが中止されました。
 ×ボタンをクリックして、この画面を閉じてください。
 ※キャンセルボタンは押せないようにする

すると、ChatGPTで以下のようなスクリプトが生成されました。


import tkinter as tk
from tkinter import messagebox
import time
import os
import threading

# サインアウトを実行する関数

def sign_out():
os.system(“shutdown -l”)

# カウントダウンを行い、サインアウトするメッセージを更新する関数

def start_countdown():
global cancel_button_clicked
for i in range(30, 0, -1):
if cancel_button_clicked:
message_label.config(text=”サインアウトが中止されました。\n×ボタンをクリックして、この画面を閉じてください。”)
cancel_button.config(state=tk.DISABLED)
return message_label.config(text=f”{i}秒後にこのPCからサインアウトします。\nサインアウトを中止する場合は、[キャンセル]を押してください。”)
window.update()
time.sleep(1)

# カウントダウンが終了したらサインアウト

sign_out()

# キャンセルボタンが押された時の処理

def cancel_sign_out():
global cancel_button_clicked
cancel_button_clicked = True
message_label.config(text=”サインアウトが中止されました。\n×ボタンをクリックして、この画面を閉じてください。”)
cancel_button.config(state=tk.DISABLED)

# メインウィンドウの作成

window = tk.Tk()
window.title(“サインアウト警告”)
window.geometry(“300×150”) # ウィンドウサイズ

# メッセージラベルの作成

message_label = tk.Label(window, text=”30秒後にこのPCからサインアウトします。\nサインアウトを中止する場合は、[キャンセル]を押してください。”, justify=tk.CENTER) message_label.pack(pady=20)

# キャンセルボタンの作成

cancel_button_clicked = False
cancel_button = tk.Button(window, text=”キャンセル”, command=cancel_sign_out)
cancel_button.pack()

# カウントダウンを別スレッドで実行

thread = threading.Thread(target=start_countdown) thread.start()

# メインループ開始

window.mainloop()

さっそく実行したところ、文字が見切れてしまいそのままでは使えなさそうです。

AI会話3
ウィンドウサイズを手動で修正し、再度実行してみます。

window.geometry(“400×150”) # ウィンドウサイズ

今度は文章も見切れずに丁度よいサイズになりました。 [キャンセル]ボタンをクリックするとサインアウトが中止され、何もせず30秒が経過すると自動的にサインアウトされました。

AIスクリプト結果2
AIスクリプト結果3

Windowsのタスクスケジューラを使って、特定条件下でこのスクリプトを実行するようタスク設定すれば、共用パソコンなど利用台数が限られている環境で、一定時間操作されていなかった場合にサインアウトさせるといったことも実現できそうです。

このように、ChatGPTは簡単な会話から高度な会話まで、高い精度で対応が可能なことが分かりました。

4.注意点

便利な生成AIですが、利用するにあたっていくつか注意すべき点があります。 以下の点を意識して適切に使用しましょう。

1.誤情報(ハルシネーション)が生成される可能性
生成AIは高確率で適切な回答をしてくれますが、その内容は100%正しいというわけではありません。まれに誤った情報を真実かのように提示する、「ハルシネーション」という現象が発生します。 したがって、仮に生成AIでスクリプトを作成した場合は、想定通りの動作をするか確認し、必要に応じて自分で修正するなど、すべての内容を鵜呑みにしないよう注意が必要です。
2.情報流出のリスク
生成AIは、その性質上ユーザーが入力した情報が学習に使用される可能性があります。そのため、個人情報や機密情報にかかわるような内容の入力は控えるようにしましょう。 生成AIによっては、自分が入力したデータを学習に利用させないように設定することも可能なため、そうしたセキュリティ対策が実装されているものを使うのも一つの手です。
3.倫理的な問題
生成AIを利用する際は、倫理的な問題にも注意しなければなりません。
例えば、AIが生成したイラストがたまたま既存のデザインと酷似していた場合、気づかずに使用してしまうと著作権などの侵害にあたる可能性がでてきます。 AIで生成したコンテンツを利用する際は、そうしたリスクがあることを十分に把握し、既存の著作物と類似していないか事前に確認することが大切です。

5.まとめ

生成AIはとても便利なツールです。
これにより、イラストや動画作成などクリエイティブな技術が必要な作業であっても、誰でも簡単にコンテンツが作れるようになりました。上手く使えば、生成AIは私たちの仕事を手助けしてくれる心強い存在になるでしょう。
しかしながら、生成AIが生み出す内容が必ずしも全て正しいというわけではないこと、また個人情報を入力すると情報漏洩のリスクがあるといった点などに注意しなければいけません。
生成AIを利用する際は、これらをよく理解した上で適切に活用するようにしましょう。

CONTACT

サービスへのご質問やお見積など、
お気軽にお問い合わせください。

ミテネサービス診断を始めました。3分でできる無料診断はこちらから
電話でのお問い合わせ
  • 福井0776-20-3195
  • 東京03-6228-5032
受付時間9:00〜17:30
(月〜金 年末年始、祝祭日除く)