如何将 39.3k 的开源知识库 Dify 接入微信

在渐渐熟悉 Dify 的各个功能后,我们已经不满足于只在 PC 端或者说需要打开网页才可以使用 Dify 了。我们更希望的是它可以和我们平时最常用的通讯软件相对接,比如微信

如何将 Dify 接入到微信中

这里介绍一下 Dify 生态圈中的一个开源项目------dify-on-wechat,运行这个项目,我们可以将 dify 应用轻松地接入到微信中,使我们可以随时随地都可以访问到 dify 应用。

接入步骤如下

  • 在 API 管理页面,点击右上角的 API 密钥-点击创建密钥-复制保存密钥,右上角的 API 服务器地址也需要记住

至此,在 Dify 这一侧的准备工作就算做好了。接下来就到了 dify-on-wechat 项目:

  • 下载项目,并安装 python,官方建议 python 版本在 3.8 以上
bash 复制代码
git clone https://github.com/hanfangyuan4396/dify-on-wechat
cd dify-on-wechat/
  • 安装依赖
bash 复制代码
pip3 install -r requirements.txt  
  • 还有拓展依赖(这个是可选的,官方建议安装)
bash 复制代码
pip3 install -r requirements-optional.txt 
  • 填写配置文件,在项目根目录下创建一个名为 config.json 的文件:
json 复制代码
{
  "dify_api_base": "https://api.dify.ai/v1",   # dify 的服务器地址,把之前复制的服务器地址粘贴进去即可
  "dify_api_key": "app-xxx",                   # 之前复制的应用的 api key
  "dify_app_type": "chatbot",                  # dify 应用的类型
  "channel_type": "wx",                        # 通道类型,当前为个人微信
  "model": "dify",                             # 模型名称,不用动
  "single_chat_prefix": [""],                  # 私聊时文本需要包含该前缀才能触发机器人回复
  "single_chat_reply_prefix": "",              # 私聊时自动回复的前缀,用于区分真人
  "group_chat_prefix": ["@bot"],               # 群聊时包含该前缀则会触发机器人回复
  "group_name_white_list": ["ALL_GROUP"]       # 机器人回复的群名称列表
}

这里如果你使用的是云服务器进行部署的,那么服务器地址是可以被公网访问的。但是如果是在本地服务器或者电脑部署的 ,那么就需要一些工具来进行内网穿透,从而才能实现接入微信的功能,否则是无法实现微信与 dify 之间的交互的。

这里大家如果只是测试用,推荐使用 ngork

  • 启动项目,然后扫码登录

测试一下:

我们跑通之后,可以通过以下命令在后台运行程序并通过日志输出二维码

bash 复制代码
cd dify-on-wechat
nohup python3 app.py & tail -f nohup.out   

或者使用 docker compose 也可以进行项目部署,在部署之前需要修改 docker/docker-compose.yml 文件,里面的内容和上面说到的 config.json 文件内容一致。

要确保正确配置了 DIFY_API_BASEDIFY_API_KEY 以及 DIFY_APP_TYPE 这三个环境变量。

yaml 复制代码
version: '2.0'
services:
  dify-on-wechat:
    image: hanfangyuan/dify-on-wechat
    container_name: dify-on-wechat
    security_opt:
      - seccomp:unconfined
    environment:
      DIFY_API_BASE: 'https://api.dify.ai/v1'
      DIFY_API_KEY: 'app-xx'
      DIFY_APP_TYPE: 'chatbot'
      MODEL: 'dify'
      SINGLE_CHAT_PREFIX: '[""]'
      SINGLE_CHAT_REPLY_PREFIX: '""'
      GROUP_CHAT_PREFIX: '["@bot"]'
      GROUP_NAME_WHITE_LIST: '["ALL_GROUP"]'

然后执行如下命令启动容器即可:

bash 复制代码
cd dify-on-wechat/docker       
docker compose up -d           
docker logs -f dify-on-wechat  

注意,接入微信有封号风险,建议使用小号哈!感谢 jy 提醒

小伙伴们快去试试吧~

喜欢的 jym 也可以收藏点赞加关注💗

相关推荐
GISer_Jing11 分钟前
前端营销技术实战:数据+AI实战指南
前端·javascript·人工智能
Dekesas969525 分钟前
【深度学习】基于Faster R-CNN的黄瓜幼苗智能识别与定位系统,农业AI新突破
人工智能·深度学习·r语言
大佐不会说日语~1 小时前
Spring AI Alibaba 的 ChatClient 工具注册与 Function Calling 实践
人工智能·spring boot·python·spring·封装·spring ai
CeshirenTester1 小时前
Playwright元素定位详解:8种定位策略实战指南
人工智能·功能测试·程序人生·单元测试·自动化
世岩清上2 小时前
AI驱动的智能运维:从自动化到自主化的技术演进与架构革新
运维·人工智能·自动化
K2_BPM2 小时前
告别“单点智能”:AI Agent如何重构企业生产力与流程?
人工智能
TMT星球2 小时前
深业云从人工智能产业投资基金设立,聚焦AI和具身智能相关产业
人工智能
鼾声鼾语2 小时前
matlab的ros2发布的消息,局域网内其他设备收不到情况吗?但是matlab可以订阅其他局域网的ros2发布的消息(问题总结)
开发语言·人工智能·深度学习·算法·matlab·isaaclab
Dingdangcat862 小时前
中药材图像识别与分类 RetinaNet-R101-FPN模型详解
人工智能·数据挖掘
老蒋新思维2 小时前
创客匠人视角:智能体重构创始人 IP,知识变现从 “内容售卖” 到 “能力复制” 的革命
大数据·网络·人工智能·tcp/ip·创始人ip·创客匠人·知识变现