2024-02-05
杂货铺
00

目录

不到50行代码,搭建自己的全能微信机器人
具体原理
用途

不到50行代码,搭建自己的全能微信机器人

采用wechaty+LM Studio来搭建微信机器人,只需要不到50行代码即可轻松实现

import { WechatyBuilder } from 'wechaty' import request from 'sync-request' import Qr from 'qrcode-terminal'; const wechaty = WechatyBuilder.build() // get a Wechaty instance wechaty .on('scan', (qrcode, status) => { Qr.generate(qrcode); // 展示微信登录二维码 }) .on('login', user => console.log(`${user} 登录成功`)) .on('message', async (m) => { const content = m.text(); const room = m.room(); if (room) { // 如果群聊不是@自己 则不说话 if (!await m.mentionSelf()) return; } if (m.self()) return; const res = request('POST', 'http://localhost:1234/v1/chat/completions', { headers: { "Content-Type": "application/json", }, body: JSON.stringify({ "messages": [ { "role": "system", "content": '假设你是一部百科全书,无所不知无所不能,什么问题都能回答' }, { "role": "user", "content": content } ], "temperature": 0.8, "max_tokens": 4096, "stream": false }) } ); let result = ''; if (res && res.statusCode == 200) { const body = res.getBody(); const jsonObj = JSON.parse(body); // 解析接口返回的JSON内容 if (jsonObj) { //数据处理 result = jsonObj.choices[0].message.content } else { result = '智能机器人正在闭关修炼中,请稍后再来' } } else { result = '智能机器人正在闭关修炼中,请稍后再来' } m.say(result); }) wechaty.start()

具体原理

  1. wechaty用于提供微信消息监听
  2. LM Studio用于提供大语言模型接口服务
  3. 将监听到的内容提交给大语言模型,然后将大语言模型返回的推理内容回复给用户

用途

  1. 智能聊天机器人
  2. 群助手

提示

机器人的用途可自行设定,并且可根据不同大模型进行个性化定制,操作空间极大,缺点是需要在本地部署,当然,也可以将接口地址改成第三方提供的接口。

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:老程序员小唐

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!