ホームページ  >  記事  >  バックエンド開発  >  Python コード行を使用して、ChatGPT を WeChat ロボットに接続します。

Python コード行を使用して、ChatGPT を WeChat ロボットに接続します。

WBOY
WBOY転載
2023-05-09 23:28:071134ブラウズ

1. 実装原則

おそらく、すべてのインテリジェント チャット ロボットは次のような実装アイデアを持っているのではないでしょうか?

まず、コードを通じてチャット コンテンツを取得し (言語制限なし)、次にチャット コンテンツを AI バックグラウンドに転送し、最後に取得した AI 応答を元のルートを介してチャット インターフェイスに転送します。

Python コード行を使用して、ChatGPT を WeChat ロボットに接続します。

このプロセスでの問題は次のとおりです:

  • チャット コンテンツの取得方法;

  • AI 返信を呼び出す方法;

  • 自動で正しく返信する方法。

開発の過程で、最後の項目: すべてのダイアログを修正する方法が最も難しいことがわかります

2. コードをアップロードします

PyOfficeRobot

pip install PyOfficeRobot

1 行のコードをダウンロードして WeChat ロボット ChatGPT

import PyOfficeRobot
PyOfficeRobot.chat.chat_by_gpt(who='程序员', api_key='你的api_key')

3. パラメーターの説明

上記には 2 つのパラメータのみがリストされています:

  • who='Programmer': 必須、インテリジェントに返信したい人;

  • api_key ='your api_key': required, your own ChatGPT

実際には、メソッド内に一連のパラメータがありますが、私たちのプロジェクトは主に初心者によって使用されるため、すべてを入力しましたプロの開発者の場合は、以下の手順を参照して変更できます。 (OpenAI公式サイトより)

    completions = openai.Completion.create(
        engine=model_engine,
        prompt=prompt,
        max_tokens=max_tokens,  # 生成结果时的最大 tokens 数。平均一个汉字是 2 个 tokens,text-davinci-003 最多是 4000 个 tokens,也就是 2000 个汉字左右
        n=n,
        stop=stop,
        temperature=temperature,  # 控制结果的随机性,如果希望结果更有差异性 0.9,或者希望有固定结果可以尝试 0.0
        top_p=top_p,  # 一个可用于代替 temperature 的参数,对应机器学习中 nucleus sampling,如果设置 0.1 意味着只考虑构成前 10% 概率质量的 tokens
        frequency_penalty=frequency_penalty,  # 控制字符的重复度,取值为 -2.0 ~ 2.0 之间的数字
        presence_penalty=presence_penalty  # 控制主题的重复度,取值为 -2.0 ~ 2.0 之间的数字
    )

以上がPython コード行を使用して、ChatGPT を WeChat ロボットに接続します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。