自作チャットロボットでchatgptやWeChat友達との対話を実現【添付コード】

何もすることがないので、chatgptWeChat の友達と会話できるチャット ロボットを実装したいと考えています。チャットロボットはQQ友達などの音声入力にも応用できます。機能は比較的シンプルで、コンピューター間の対話エクスペリエンスが向上し続けるように、後期にゆっくりと更新される予定です。

プロジェクトの説明:

音声入力「音声アシスタントを開く」ユーザーの音声入力を待ちます(待機時間は 2 秒で、自分で調整できます)。その後、音声をテキストに変換してダイアログ ボックスに入力します (認識時間は 5 秒です)。 、自分で調整できます)、音声入力「オフになっています 音声アシスタント」プログラムが表示されます。音声認識を利用してテキスト入力を完了し、チャット機能を実現します。


環境の説明

Python言語

ウィンドウズ10


準備

まずは以下のライブラリをインストールします

pip インストール pyperclip
pip インストール pyautogui
pip 音声認識をインストールする
pip インストール pyaudio
pip インストールウェーブ

このプロジェクトのテキスト送信ダイアログはマウスの送信ボタンをシミュレートするために使用されているため、画面に対する「送信」ボタンの座標位置を取得する必要があります。

この座標位置も非常に簡単に取得でき、WeChat スクリーンショットのショートカット キーを使用して直接表示できます。

たとえば、WeChat ダイアログ ボックスの送信ボタンの座標を取得したい場合、WeChat のスクリーンショットをクリックし、送信ボタンにマウスを置くと、座標位置である POS が表示されます。


 

機能表示

使用プロセス全体を通じて科学的インターネットへのアクセスをオンにする必要があります (ここではインターネット上に多くの方法がありますので、自分で見つけてください)

WeChat の友達とチャットする

1.送信ボタンの座標位置を変更する

2. WeChat の会話の場合は、次の行をコメント アウトする必要があります。

            # 对于chatgpt需要在点击一下对话框
            pyautogui.moveTo(639, 929)
            pyautogui.mouseDown()  # 鼠标左键按下,发送内容
            pyautogui.mouseUp()  # 鼠标左键抬起

私はここにいます (1405, 787)

pyautogui.moveTo(1405, 787)  # 鼠标光标移动至发送按钮(这里是坐标)
pyautogui.mouseDown()  # 鼠标左键按下,发送内容
pyautogui.mouseUp()  # 鼠标左键抬起
python wechat_root/wechat.py

3. 言語入力「言語アシスタントを有効にする」で機能が有効になります。 

开始录制...
录制结束...
result2:
{   'alternative': [{'confidence': 0.97500253, 'transcript': '开启语音助手'}],
    'final': True}

 4. Windows タスクバーの右下隅に「マイク」アイコンが表示されている場合は録音がオンになっていることを意味し、アイコンがオフになっている場合は録音が終了していることを意味します。デフォルトの録音時間は 5 秒ですが、自分で変更できます。

5. この時点で、音声からテキストへの音声は WeChat ダイアログ ボックスに入力され、自動的に送信されます。

各入力間隔は 2 秒です (自分で変更可能)。以下を変更するだけです。

    if text_ == '开启语音助手':  # 开启
        time.sleep(2)  # 等待2s输入一次

ユーザーが何も入力しない場合は何も送信されません。入力が有効な場合にのみ送信されます。

 

 6. ユーザーの音声入力で「音声アシスタントをオフにする」と終了します。


chatGPT と話す 

これは上記の WeChat 会話と同じですが、chatgpt 送信ボタンとダイアログ ボックスの座標を変更する必要がある点が異なります。

たとえば、私の chatgpt 送信ボタンは (1531,933) で、ダイアログ ボックスの座標は (639,929) です。

            pyautogui.moveTo(1531, 933)  # 鼠标光标移动至发送按钮(这里是坐标)
            pyautogui.mouseDown()  # 鼠标左键按下,发送内容
            pyautogui.mouseUp()  # 鼠标左键抬起
            # 对于chatgpt需要在点击一下对话框
            pyautogui.moveTo(639, 929)
            pyautogui.mouseDown()  # 鼠标左键按下,发送内容
            pyautogui.mouseUp()  # 鼠标左键抬起

ユーザーの音声入力「音声アシスタントをオンにする」で対話を開始できます。

 


 完全なコード

https://github.com/YINYIPENG-EN/chatbot.git

おすすめ

転載: blog.csdn.net/z240626191s/article/details/131460932