基于python实现微信接入ChatGpt进行自动回复

article/2024/9/19 9:52:43

基于python实现微信接入ChatGpt进行自动回复

  • 教程说明
  • 下载和使用python库
    • 如何下载python库
    • 如何使用python库
      • 导入python库
  • chatgpt部分
    • 申请openai的key
    • python调用chatgpt的简单示例
  • wxauto部分
    • wxauto简单示例
  • 整体实现
    • 整体示例代码

教程说明

1.机器人无法取代真人聊天,本教程仅用于学习,使用机器人和别人聊天本身就是对朋友的不尊重,请谨慎使用
2.本教程为了让大家更清晰地理解,让大家更方便进行自定义开发,本教程分为三大模块,每一模块对相关的功能和操作都进行单独的说明,并且教程最后将功能模块进行了合并总结,呈现整体效果
3.本教程对相关的基础操作只做了简单的说明,如果对python没有任何经验的新手朋友,需要根据本文档的引导进行自行搜索,本文档只对本文档主题进行详细说明,如果有什么建议,可以在评论区留言,欢迎各路大神批评斧正!
4.本教程只用于个人学习,如有疏漏,尽情谅解

下载和使用python库

1.wxauto,实现微信窗口消息检测
2.openai,获取chatgpt返回数据
3.time,实现操作延时,并且获取时间数据

如何下载python库

方法一:通过pip指令下载,前提是python已经加入环境变量,打开cmd输入以下指令
首先

//首先输入以下指令下载相关的库pip install 库名
//比如说下载wxauto库
pip install wxauto

方法二:(通过pycharm演示)
点击+,然后搜索库名,实现下载

如何使用python库

导入python库

在这里插入图片描述
然后在代码中使用相关的库方法就可以了,由于篇幅有限,在这里就不详细赘述,请自行搜索

chatgpt部分

1.首先你需要有一个openai账号,才可以进行以下操作
2.由于openai在亚太地区无法使用,并且属于国外网站,所以包括本章节的第一部分:申请openai的key,以及第二部分:python调用chatgpt的简单示例,都需要"魔法上网"才行
3.申请的免费key只有5美元的调用额度

申请openai的key

1.进入官网:openai
在这里插入图片描述
2. 接下来我们点击 api 即可:
在这里插入图片描述
3. 查找自己账户的 key:
我们依次点击 Personal ,View API keys
在这里插入图片描述
4. 创建自己的 key:
在这里插入图片描述

python调用chatgpt的简单示例

该示例可以实现连续对话功能

import openai# 初始化 OpenAI API 客户端
openai.api_key = "你的openai key"# 定义一个函数生成 ChatGPT 的回复
def generate_response(prompt):# 调用 OpenAI API 生成回复completions = openai.Completion.create(engine="text-davinci-003",  # 指定使用的引擎名称prompt=prompt,  # API 请求的提示信息max_tokens=1024,  # API 响应的最大令牌数n=1,  # API 请求的完成数stop=None,  # API 响应的终止标志temperature=0.5,  # API 请求的温度参数)# 从 API 响应中取得回复message = completions.choices[0].textreturn message# 初始化一个变量来存储对话上下文
context = ""# 开始一个死循环来接受用户输入
while True:# 提示用户输入信息user_input = input("你:")# 如果用户输入结束命令,退出循环if user_input in ["结束", "退出", "end", "exit"]:break# 把用户输入信息添加到对话上下文中context = context + user_input + "\n"# 调用 generate_response() 函数生成回复response = generate_response(context)# 显示 ChatGPT 的回复print("ChatGPT:" + response)# 把 ChatGPT 的回复添加到对话上下文中context = context + response + "\n"

wxauto部分

wxauto简单示例

# 首先,将wxauto模块导入到我们的代码块中。
from wxauto import *# 初始化我们已经登录的客户端对象WeChat。
wx_cli = WeChat()# 获取当前的客户端的联系人列表。
wx_cli.GetSessionList()# 输出当前所在的聊天窗口的信息。
messages = wx_cli.GetAllMessage
for message in messages:print('%s : %s' % (messages[0], messages[1]))# 获取到当前的聊天信息,还可以获取更多,使用LoadMoreMessage函数就可以实现。
wx_cli.LoadMoreMessage()
more_messages = wx_cli.GetAllMessage
for more_message in more_messages:print('%s : %s' % (more_message[0], more_message[1]))

整体实现

将openai库与wxauto库进行整合开发,实现了微信接入ChatGpt进行自动回复的功能

整体示例代码

from wxauto import *
import time
import pyautogui
import pyperclip
import openai# 获取当前微信客户端
wx = WeChat()
num = 0
# 获取会话列表
wx.GetSessionList()openai.api_key = "你申请的openai key"###############################
# 1、获取默认窗口聊天信息
###############################
# 定义一个函数生成 ChatGPT 的回复
def generate_response(prompt):# 调用 OpenAI API 生成回复completions = openai.Completion.create(engine="text-davinci-003",  # 指定使用的引擎名称prompt=prompt,  # API 请求的提示信息max_tokens=1024,  # API 响应的最大令牌数n=1,  # API 请求的完成数stop=None,  # API 响应的终止标志temperature=0.5,  # API 请求的温度参数)# 从 API 响应中取得回复message = completions.choices[0].textreturn message# 初始化一个变量来存储对话上下文
context = "请用中文回复"# def data(newdata):
#     urldata = "https://api.ownth*ink.com/bot?appid=e94dc1b1833a7f57ceeeb593bddccd87&userid=1&spoken=" + newdata
#     sess = requests.get(urldata)
#     answer = sess.text
#     answer = json.loads(answer)
#     return answer["data"]["info"]["text"]# def get_default_window_messages(context):# if __name__ == '__main__':
while True:if num < 10:# 默认是微信窗口当前选中的窗口#   输出当前聊天窗口聊天消息msgs = WeChat()if msgs.GetLastMessage[0] != "二流摄影爱好者":print("检测到新消息")# 提示用户输入信息# 如果用户输入结束命令,退出循环# if user_input in ["结束", "退出", "end", "exit"]:#     break# 把用户输入信息添加到对话上下文中context = context + msgs.GetLastMessage[1] + "\n"# 调用 generate_response() 函数生成回复response = generate_response(context)# 显示 ChatGPT 的回复print("ChatGPT:" + response)# 把 ChatGPT 的回复添加到对话上下文中context = context + response + "\n"print(msgs.GetLastMessage[0], msgs.GetLastMessage[1])# pyperclip.copy(response)# pyautogui.hotkey('ctrl', 'v')# time.sleep(10)  # 延迟时间,模拟真人回复wx.SendMsg(response)# pyautogui.hotkey('enter')num += 1else:print("正在检测中")else:num = 0context = ""

http://chatgpt.dhexx.cn/article/Fqmd4MYV.shtml

相关文章

myChat - 第三方ChatGPT原生客户端,支持win和mac系统

前言 可能你没体验过 ChatGPT&#xff0c;但肯定听说过。苦于高高的围墙&#xff0c;无法便捷的使用 ChatGPT。那你就不能错过 myChat &#xff0c;一款第三方 ChatGPT 原生客户端。基于 OpenAI 提供的 ChatGPT 同款模型 GPT-3.5&#xff0c;可达到与 ChatGPT 类似的效果&…

硬刚ChatGPT!文心一言能否为百度止颓?

引言&#xff1a; 近年来&#xff0c;人工智能领域的发展突飞猛进&#xff0c;尤其是在自然语言处理&#xff08;NLP&#xff09;方面。OpenAI的ChatGPT无疑是这个领域的佼佼者[1]。那么&#xff0c;面对这样一款高度智能的AI模型&#xff0c;国内市场上是否有相应的产品能与之…

大考在即 百度版ChatGPT会翻车吗?

文心一言的发布会定档3月16日&#xff0c;不出意外&#xff0c;百度创始人李彦宏、CTO王海峰将出现在北京总部的发布会现场。这是百度版ChatGPT最新的官方消息&#xff0c;2月7日&#xff0c;文心一言首次官宣&#xff0c;当时称&#xff0c;产品“3月见”。 3月如期而至&…

百度文心一言可以完胜ChatGPT的4点可能性

文心一言&#xff0c;百度全新一代知识增强大语言模型&#xff0c;文心大模型家族的新成员&#xff0c;能够与人对话互动&#xff0c;回答问题&#xff0c;协助创作&#xff0c;高效便捷地帮助人们获取信息、知识和灵感。但说实话&#xff0c;很多人拿他与ChatGPT相对比&#x…

大厂跟进ChatGPT,为什么百度“文心一言”成色最好?【快评】

作者 | 曾响铃 文 | 响铃说 赶ChatGPT热度&#xff0c;百度3月初就要发布与ChatGPT类似的人工智能聊天机器人服务“文心一言”&#xff08;英文名&#xff1a;ERNIE Bot&#xff09;&#xff0c;似乎无法提振资本市场对百度的信心。 2022年第四季度及全年未经审计的财报发布…

百度抢先发布中国版ChatGPT——文心一言,现已开通测试申请

3月16日&#xff0c;百度抢先其他国内科技巨头一步&#xff0c;率先发布被誉为中国版ChatGPT的“文心一言”。 即日起&#xff0c;百度也通过“百度智能云”官网正式开发“文心一言”的预约&#xff0c;申请云服务测试。 但是&#xff0c;目前百度智能云只面向企业级客户开放文…

百度李彦宏:文心一言和 ChatGPT 水平差距不是很大,也就一两个月

3 月 26 日消息&#xff0c;近日&#xff0c;李彦宏在极客公园的直播中表示&#xff0c;文心一言确实不如现在最好的 ChatGPT 版本&#xff0c;但差距也不是很大&#xff0c;可能就是一两个月的差别。 李彦宏称&#xff0c;“我也不断在讲文心一言不够完美&#xff0c;事实上如…

ChatGPT和百度文心一言写用例,谁更强?

文心一言发布的第一时间&#xff0c;就排队申请了邀请码&#xff0c;昨晚看了下&#xff0c;邀请码已经到手&#xff0c;索性就拿一个例子试了一下&#xff0c;看看哪个能够真正意义上的提高生产力&#xff0c;最简单的录制了个GIF动画如下&#xff1a; 问题&#xff1a;你是一…

百度中国版ChatGPT“正式问世”

百度中国版ChatGPT正式问世&#xff0c;这是百度自然语言处理方面的重大突破&#xff0c;也是AI领域的一次跨越。ChatGPT是百度自然语言处理技术的升级版&#xff0c;其核心是“GPT”&#xff0c;即“Generative Pre-training Transformer”&#xff0c;是一项基于深度学习的自…

硬刚ChatGPT!文心一言能否为百度止颓?中国版ChatGPT“狂飙”的机会在哪儿?

文章目录 目录产品背景发展历程科技简介主要功能合作伙伴 结语 文心一言 &#xff08;英文名&#xff1a;ERNIE Bot&#xff09; *是百度基于文心大模型技术推出的生成式对话产品&#xff0c;被外界誉为“中国版ChatGPT”&#xff0c;将于2023年3月份面向公众开放。 [40] 百度…

百度文心一言,是中国版的ChatGPT吗?

百度文心一言&#xff0c;是中国版的ChatGPT吗&#xff1f; 文心一言发布会网友评论&#xff1a; 百度在让人失望这件事上&#xff0c;从来没让人失望过&#xff01;技术原理一句没有&#xff0c;商业价值滔滔不绝。ChatGPT&#xff1f;CheatGPT&#xff01;难怪暴跌&#xff0…

不同问题来评测百度、谷歌、ChatGPT、Phind、GPT-4(持续更新)

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

ChatGPT爆火 百度急了

月活超1亿&#xff0c;对话机器人ChatGPT终于把火引向搜索引擎&#xff0c;谷歌、微软、百度开卷。 2月7日&#xff0c;火药味飙升&#xff1a;谷歌母公司Alphabet确认&#xff0c;将推“实验性对话式AI服务”Bard&#xff1b;微软举办发布会&#xff0c;直接推出了带有对话&a…

百度chatGPT chatgpt 程序员

ChatGPT作品展示&#xff1a; 可以使用Nginx反向代理&#xff0c;具体代码如下&#xff1a;server { listen 80; server_name www.example.com; location / { proxy_pass http://127.0.0.1:8080; } } 最近发现很多科技公司都在搞ChatGPT&#xff0c;我们普通网民没有技术也想体…

百度文心一言对标 ChatGPT,你怎么看?

文心一言 VS ChatGPT接受不完美 期待进步里程碑意义文心一言初体验✔ 文学创作✔ 商业文案创作✔ 数理逻辑推算✔ 中文理解✔ 多模态生成 写在最后 何为文心&#xff1f;“文”就是我们中华语言文字中的文&#xff0c;“心”是希望该语言模型可以用心的去理解语言&#xff0c;用…

百度版ChatGpt来了,真的太强大了!

今天突然发现百度官网的右上角多了一个【AI】的标志&#xff0c;点击图标后&#xff0c;居然直接进入了百度版ChatGpt。我也没有申请内侧什么的&#xff0c;应该是全部开放了吧&#xff0c;试了下一下感觉比ChatGpt的3.5模型要强大多了&#xff0c;跟4.0模型还是有一些差距的&a…

ChatGPT:百度文心一言畅想

国产“ChatGPT”扬帆启航。OpenAI的商业模式为API接口收费。我们认为此种商业模式具有“卡脖子”的风险&#xff0c;因此我国需要发展自主可控的“ChatGPT”。国产生态正在逐步繁荣&#xff0c;百度打响国产ChatGPT领域“第一枪”&#xff0c;其在算法、算力、数据、生态、平台…

开启收费模式,ChatGPT 试行 20 美元即享 Plus 体验,谷歌慌了!

整理 | 何苗 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; OpenAI 在 1 月初就 “开始考虑如何使 ChatGPT 货币化”&#xff0c;近日&#xff0c;OpenAI 确实为 ChatGPT 推出了一个新的试点订阅计划&#xff0c;被称为 ChatGPT Plus&#xff0c;起价为每…

OpenAI收费标准,ChatGPT调用须知!

OpenAI收费标准&#xff0c;ChatGPT调用须知&#xff01; 免费镜像站价格说明GPT4GPT3.5图片模型如何付费 免费镜像站 ChatGPT有很多镜像站&#xff0c;需要输入API-KEY才可以使用&#xff0c;镜像站不会进行收费&#xff0c;而是OpenAI会对您进行收费。本文主要说明OpenAI的收…

PHP - ChatGpt 学习 仅供参考

由于最近ChatGpt 大火&#xff0c;但是门槛来说是对于大家最头疼的环节&#xff0c; 由此ChatGpt 有一个API 可以仅供大伙对接 让我来说下资质&#xff1a; 1&#xff1a;首先要搞得到一个 ChatGpt 的账户&#xff0c; 会获得一个KEY&#xff0c;该key为访问API核心&#xff0…