AI・機械学習

オウム返しBotを作ってみた

palm

こんにちは、Palmです!

BOOKOFFを探索しているととある本に
出会ってしまいました。

それがこちらです!!

楽天ブックス
¥2,970 (2024/05/09 12:05時点 | 楽天市場調べ)
\楽天ポイント4倍セール!/
楽天市場

では早速作っていきましょう!

コマンドの実行

Python3のライブラリを簡単にインストールするための
ソフトフェア、「pip3」のインストールをします

コンソールをひらいて

こちらのコマンドを入力してください

$ sudo apt install python3-pip -y

入力後、パスワードを聞かれますが、
最初にPCを立ち上げる際に
聞かれるパスワードを入力してください。

「Restart services during package upgrades without asking?」
(確認せずにパッケージのアップグレード中にサービスを再起動しますか?)
と聞かれますので、

「Yes」

を選択し、エンターキーを押しましょう。
これでpip3のインストールは完了です。

pipはぴっぷと読みます。

テレグラムをインストールしよう

本記事では、メッセンジャーアプリTelegramを使用します。

ダウンロードは以下のURLからです。

https://telegram.org

BotのAPIキーを取得する

アカウントを作成したら、
左上の検索欄にて「@BotFather」と検索します。

次に、「@BotFather」に対してメッセージを送ります。

/strat」とメッセージを送ってみましょう。

色々タグが出ていますが今回は、

/newbot」のタグを送信してみましょう

palm
palm

「Alright, a new bot. How are we going to call it? Please choose a name for your bot.」
(さて、新しいボットです。それをどう呼ぼうか?ボットの名前を選択してください。)

とたずねてくるので
好きなBotの名前を決めましょう。

名前が正しい形式でない

palm
palm

「Good. Now let’s choose a username for your bot. It must end in bot. Like this, for example: TetrisBot or tetris_bot.」
(よし。次に、ボットのユーザー名を選択しましょう。「bot」で終わる必要があります。たとえば、TetrisBotやtetris_botのように。)

といわれてしまうので、
〇〇Bot〇〇_botのように
名前をつけてあげてください。

命名に成功すると

palm
palm

「Done! Congratulations on your new bot. You will find it at t.me/palm7710bot.
(完成です!新しいボットおめでとうございます。t.me/palm7710bot で見つけることができます。)
というようなメッセージが送られてきます。


t.me/〇〇botを押してみたり、
先ほどのように検索してみると、
botのメッセージプログラムに移動できます。

送られてきたメッセージの下のほうに行くと、
「Use this token to access the HTTP API: ”YOUR-TOKEN-HEREKeep your token secure and store it safely, it can be used by anyone to control your bot.」
(このトークンを使用して HTTP API にアクセスします: “YOUR-TOKEN-HERE” トークンを安全に保ち、安全に保管すると、誰でもボットを制御するために使用できます。)

このようにAPIキーを入手することができます

 API keyとは、他社のサービスと連携するために必要な認証情報です。
絶対他人に知られないように!!

Pythonの辞書型とは?

このようなプログラムの構造を知るために必要な知識があります
それが辞書型です。

mydict = {"apple":1, "orange":2, "banana":3}

例えば、mydictという辞書型のオブジェクトの中に、
key(“apple”)とvalue(1)があるのが基本の形です。

辞書型とは、「{}」の中にkeyとvalueの組み合わせがあるデータのことです。

よくBotやchatなど受け答えのプログラムで使われます。

from import *の使い方

import(インポート)とは、別のファイルに記述されたPythonコードを取り込む機能のことです。
ファイルというのは、.pyで書かれたファイルのことです。

fromというのは、
あるファイルから一部だけをインポートすることです。

TelegramBotを作ってみよう

では早速、TelegramBotを作っていきましょう。

全体のコードはここにあります。
palm7710/telegram-bot (github.com)

作り方は簡単です。
GitHubからこのふたつのコードをダウンロードします。

1.APIキーの設定

telegram_bot.py」の”YOUR_TOKEN_HERE”の部分を
独自のAPIキーに変更します。
“”(ダブルクォーテーション)を忘れずに!

# アクセストークン
TOKEN = "YOUR_TOKEN_HERE"

2.python-telegram-botのインストール

コンソールをひらいて

こちらのコマンドを入力してください。

$ pip install python-telegram-bot==13.13

少し古いタイプですが、バージョン 13 で問題なく機能します。
新しいバージョンだとこのBotは機能しません。

3.実行

1.cdコマンドでお使いのディレクトリを移動してください。

cdコマンドが分からない方は【初心者向け】cdコマンドの使い方と基本的なオプション (itc.tokyo)こちらから!
Documents/python_folderにファイルを保存している場合は、「cd documents/python_folder」というようにします。

2.コンソールでこちらを実行します。

$ python echo_system.py

3.TelegramのBotに「/start」と入力してみる。
「こんにちは。対話を始めましょう」とかえってくるので、
「こんにちは」とへんしんすると、
「こんにちは」とオウム返ししてくれます。

まとめ

今回は、オウム返しBotを作ってみました。

この本を最後まで読むともっと自然に応答してくれるBotを作れます。

この本に出会えて、Pythonへの価値観が変わりましたし、
実際にAIっぽい機能にも触れることができます。

Python使いには筆者はこの本の購読を強くおすすめします。
最後まで読んでいただきありがとうございました!!

スポンサーリンク
ABOUT ME
Palm
Palm
東京通信大学3年生
私はpalm(ぱるむ)です。お花や自然が大好きです。専門学校でWeb開発を学び、東京通信大学に編入しました。得意分野は、ウェブ開発(フロントエンド、バックエンド)や機械学習(自然言語、データ分析)です。趣味で色々デモ開発をしています。
記事URLをコピーしました