解放双手!仅20行Python代码,让AI替你回复微信消息!

技术

大家在忙碌的时候,有没有想过让AI替你回复微信消息呢?

小伙伴们早上好吖,本期小编给大家带来一个硬核干货:教你用Python解放双手,接入文心一言大模型 自动回复微信消息 !这听起来是不是很酷呀?更酷的是,全程只需要编写 20行代码 哦~

1

Part1 :什么是大语言模型的API Key

大型语言模型的 API Key 是一种 授权密钥 ,它允许开发者通过API(应用程序编程接口)访问大型语言模型的功能。这些API Key通常由模型提供商生成并分发给开发者,以便他们可以使用语言模型的服务。

使用API Key,开发者可以向模型发送请求,并获取模型返回的文本生成、文本分类、文本理解等功能的结果。API Key可以确保访问者有权使用模型,并帮助提供商追踪和管理访问者的使用情况,以及对服务进行监管和控制。

请注意,API Key应当被妥善保管,不应当公开或泄露,因为泄露API Key可能导致未经授权的访问者使用模型服务,从而可能产生安全风险或额外的费用。

大型语言模型的API Key具有以下用途:

  1. 身份验证与授权: API Key用于验证用户的身份和授权他们使用语言模型的服务。只有拥有有效 API Key 的用户才能访问语言模型的功能。
  2. 访问语言模型服务: 使用API Key,开发者可以通过API访问语言模型的各种功能,如文本生成、文本分类、文本理解等。
  3. 控制访问和使用限制: 语言模型提供商可以通过API Key控制用户的访问权限和使用配额。这样可以防止滥用或超出合理使用范围。
  4. 跟踪使用情况与分析: API Key允许提供商跟踪用户的使用情况,包括请求频率、使用模式等,从而进行分析和优化服务。
  5. 计费和付款: 对于一些服务,API Key也可以用于识别用户并进行计费。这样,语言模型提供商可以根据用户的使用情况收取费用。

总之,API Key是连接开发者和语言模型服务之间的桥梁,确保只有经过授权的用户可以使用模型的功能,并且提供了管理和监控使用情况的手段。

2

Part2 :获取文心一言的API Key

step1 首先进入以下网址,登录后单击左上角的头像进入个人中心。


            
                

              https://aistudio.baidu.com/overview
            
          

step2 单击访问令牌,查看并复制Access Token。

picture.image

3

Part3 :实现微信自动回复程序

picture.image

step1 创建一个test.py文件,然后编写以下Python代码。


              
from uiautomation import WindowControl  # 导入用于控制 Windows 窗口的库
              
import erniebot  # 导入文心一言库
              
wx = WindowControl(Name='微信', searchDepth=1)  # 绑定微信主窗口
              
wx.ListControl()  # 切换窗口
              
wx.SwitchToThisWindow()  # 切换到微信窗口
              
hw = wx.ListControl(Name='会话')  # 寻找会话控件绑定
              
while True:  # 持续接收消息
              
    we = hw.TextControl(searchDepth=4)  # 查找未读信息
              
    while not we.Exists():
              
        pass
              
    if we.Name:  # 如果存在未读消息
              
        we.Click(simulateMove=False)  # 点击未读消息
              
        last_msg = wx.ListControl(Name='消息').GetChildren()[-1].Name  # 读取最后一条消息
              
        erniebot.api_type = 'aistudio'
              
        erniebot.access_token = '0f**********************************0b'  # 设置个人的访问令牌
              
        response = erniebot.ChatCompletion.create(
              
            model='ernie-3.5',
              
            messages=[{'role': 'user', 'content': last_msg}],
              
            system="你是一个阳光开朗的大学生,请以大学生的身份回复信息",
              
        )  # 使用文心一言进行聊天补全
              
        wx.SendKeys(response.get_result(), waitTime=5)   # 将聊天补全的结果发送给微信
              
        wx.SendKeys('{Enter}', waitTime=1)  # 模拟按下回车键
              
        wx.TextControl(SubName=last_msg[:5]).Click()  # 点击对应的消息
          

注意,代码中的*号要替换成上面复制的Access Token哦。

这段代码实现了一个简单的微信聊天机器人程序,下面是代码的具体分析。

  1. from uiautomation import WindowControl:这行代码导入了一个用于控制Windows窗口的库。

  2. import erniebot:这行代码导入了erniebot的库,一个用于聊天机器人的库。

  3. wx = WindowControl(Name='微信', searchDepth=1): 这行代码创建了一个名为wx的窗口控制对象,并将它绑定到了微信的主窗口。

  4. wx.ListControl():这行代码执行了一个操作,可能是为了切换窗口,但没有提供具体的功能说明。

  5. wx.SwitchToThisWindow():这行代码切换到微信窗口。

  6. hw = wx.ListControl(Name='会话'):这行代码似乎是在微信窗口中寻找一个名为“会话”的控件,并将其绑定到变量hw上。

  7. while True:这是一个无限循环,用于持续接收消息。

  8. we = hw.TextControl(searchDepth=4):这行代码似乎是在“会话”控件中查找未读信息。

  9. while not we.Exists():这是一个循环,用于查找未读消息。

  10. if we.Name:如果存在未读消息,则执行以下操作。

  11. we.Click(simulateMove=False):点击未读消息。

  12. last_msg = wx.ListControl(Name='消息').GetChildren()[-1].Name:获取最后一条消息。

  13. 设置文心一言库的参数。

  14. 使用文心一言库对最后一条消息进行聊天补全。

  15. wx.SendKeys(response.get_result(), waitTime=5):将聊天补全的结果发送给微信。

  16. wx.SendKeys('{Enter}', waitTime=1):模拟按下回车键。

  17. wx.TextControl(SubName=last_msg[:5]).Click():点击对应的消息。

这段代码的作用是,当微信接收到消息时,它会自动点击消息并使用文心一言库对接收到的消息进行回复,然后将回复发送给对方。

step2 在电脑端登录微信,并让其处在任务栏中。

picture.image

step3 运行test.py文件等待接收消息即可。

运行代码后,如果此时有人给你发消息,微信会自动回复消息哦(哈哈哈虽然可能不太靠谱)

picture.image

可以看到,它回复了2023年12月份左右的电影。

最最最后,喜欢本篇文章的帅哥美女们可以留下👍🏻嘛~

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
vivo 容器化平台架构与核心能力建设实践
为了实现规模化降本提效的目标,vivo 确定了基于云原生理念构建容器化生态的目标。在容器化生态发展过程中,平台架构不断演进,并针对业务的痛点和诉求,持续完善容器化能力矩阵。本次演讲将会介绍 vivo 容器化平台及主要子系统的架构设计,并分享重点建设的容器化核心能力。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论