Dify on WeChat微信本地实验对接

相关环境及时间:

时间:2024年10月19号
操作系统:win10 专业版x64
python:3.10
Anaconda3:Anaconda3-2024.02-1-Windows-x86_64
企业微信1:4.0.8.6027(固定版本,win7系统可以扫码登录,win10不可以,会提示版本过低)
企业微信2:4.1.30.6008(当前最新版本)

准备开始

  1. dify先安装好,自己搭建虚拟机什么的都可以,因为后续的ai对话需要用dify的应用接口
  2. 熟读Dify on WeChat文档《手摸手教你把 Dify 接入微信生态》,当前教程只是作为个人实验过程及补充
  3. dify-on-wechat源码下载到本地准备
  4. ntwork-whl离线包下载到本地准备,这个是企业微信对接时使用,算是接管了本地客户端网络协议

开始

1、Anaconda3虚拟环境运行

1.1图Anaconda3自定义虚拟环境,安装时默认3.11,得自定义个3.10,因为ntwork-whl不兼容3.11

2、dify-on-wechat和ntwork-whl文件位置

2.1图_dify-on-wecha源码目录结构

2.2图_ntwork-whl文件存放于dify-on-wechat目录下,方便选择,也可以独立复制指定的whl丢根目录

3、安装依赖,参考官方文档即可

3.1图_核心依赖安装

3.2图_拓展依赖安装,可选,但是建议全部安装,避免后续是否要实验其他特性

4、ntwork-whl可以顺便安装,如果只是实验客户端微信可以暂时不用安装

4.1图_ntwork依赖安装

5.1、如果只是尝试接入个人微信,可以根据官方文档配置好config.json就可以运行

5.1.1图_dify官方教程案例截图

如果运行python app.py异常,比如我这边会提示缺少依赖(pilk)那就自己安装个就好

5.1.2图_运行时提示缺少依赖

5.1.3图_pilik依赖安装

5.2、实验对接个人企业微信,这里win10系统需要安装好最新版本和固定版本,最新版本官方下载,固定版本官方文档有下载地址

1、说明一下为什么这么麻烦要安装两个,首先Dify on WeChat、ntwork-whl只兼容了固定版本企业微信客户端,最新版本没有兼容,如果换成win7是可以安装固定版本企业微信4.0,但是win7的py官方版本最多兼容到3.8而已,如果要兼容py3.10得自己去实验《Python3.10兼容Win7下载第2版

5.2.1图_dify教程固定企业微信客户端下载

5.2.2图_同时安装两个版本企业微信客户端

5.2.3图_两个版本企业微信客户端快捷键

5.2.4图_当前最新版本4.1

5.2.5图_固定版本4.0

2 、网络上大佬已经实验出来了,win10时,旧版无法扫码进行登录,Dify on WeChat就没法代理到协议获取不到聊天,无法"劫持"会话,只能是先扫码登录新版->勾选免扫码登录,然后整个软件关掉,然后启动4.0版本企业微信时就实现自动登录了,特别注意,4.0版本的要把自动更新给去掉

5.2.6图_启动企业微信后自动登录

5.2.7图_禁止自动更新

6、如果运行中发现异常,比如一直提示企业微信版本不存在的,往下看

6.1图_企业微信客户端版本异常拦截

代码强行指定固定企业微信客户端版本

6.2图_代码修改位置

7、运行效果

7.1图_程序运行效果

7.2图_控制台输出效果

7.3图_知识库问答对话效果

7.4图_退出进程效果

8、总结

  1. 不用自己造轮子是真的香,感谢大佬的开源分享
  2. 实验中感觉个人微信和个人企业微信的对接方式存在一定的安全隐患,而且操作不够方便,真的要在生产中使用起来,还有很多场景流程要考虑,额外的开发工作必不可少
  3. dify是真的香,希望能越做越好
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容