Monthly FB NEWS 月刊FBニュース 月刊FBニュースはアマチュア無線の電子WEBマガジン。ベテランから入門まで、楽しく役立つ情報が満載です。

特別寄稿

生成AIを相手にしてCWの交信練習をしてみよう!

7M4MON 野村秀明

2024年8月15日掲載


生成AI[Dall-E 3]で生成したCW交信練習のイメージ

概要

OpenAI社が提供する生成AI(GPT-4)にモールス信号による交信相手になってもらうプログラムを製作しました。AIとの交信例を以下に示します。


図1 AI(GPT-4)との交信例

AIとの交信の流れ

AIとの交信の流れは以下のとおりです。

  • ・Pythonプログラムを実行し、OpenAI社が提供するAPIにアクセスしてAIによる交信相手を作成します。
  • ・初期プロンプトで交信の条件などを設定したら、入力待ち状態になります。
  • ・こちらからターミナルでCQを出すと、AIが適当なコールサインで応答してきます。
  • ・応答された文字列からモールス信号のwavファイルを作成して再生しますので、音響受信を行います。文字列はターミナル上に表示されますので、ミスコピーしても大丈夫です。
  • ・AIが応答したコールサインに対して通常のQSOを進めていきます。つまり、RSTレポート、名前、QTHの交換などです。
  • ・交信を進めて送るものがなくなったらファイナルを送ります。
  • ・最後は「CL」という文字列でセッションを終了します。

なお、プログラムの実行には、OpenAI社のAPIキーやPythonの実行環境、ffmpegのインストールと環境変数の設定が必要です。環境の構築方法は前回の記事(AIによる文字起こし)をご参照ください。

プログラムはgithubに公開しています。
https://github.com/7m4mon/cw_qso_session_with_chatgpt/

このプログラムのソースコードはChatGPTに

  • ・文字からモールス信号の音をwavファイルに作成するpythonコード。例えば「A」なら「ププー」というwavファイルを生成する。
  • ・openai APIを使用して、アマチュア無線の一般的な欧文電信QSOをChatGPTを相手に行うpythonコード。
  • と質問して作成しました。回答は、使用しているAPIバージョンが古かったり、実行時にエラーが出たりして、結局は人間の手による修正が必要になりましたが、初手としては十分に使用できるものでした。

モールス信号入力装置について

キーボード入力で交信のシミュレーションを進めても良いですが、「(和文)モールス→キーボード入力コンバーター」を使用するとキーの送出練習にもなります。


写真1 (和文)モールス→キーボード入力コンバーター

感想

今回製作した生成AIによる交信相手は、ラバースタンプQSO程度でも内容を間違えることがあります。将来的には初期プロンプトや学習データを充実させることで、より自然な交信体験になると思われます。

コンテストのCW運用では人間が手打ちで信号を出すことは少なくなりつつありますが、通常の交信でも人間を相手にすることは少なくなるのかもしれません(!?)

2024年8月号トップへ戻る

サイトのご利用について

©2024 月刊FBニュース編集部 All Rights Reserved.