Dify s'appuie sur ChatGPT-on-WeChat pour accéder à l'écosystème WeChat
Par Han Fangyuan, "Dify sur WeChat", auteur du projet open source
1. vue d'ensemble
WeChat, le logiciel de messagerie instantanée le plus populaire, est très utilisé.
La fenêtre de chat conviviale de WeChat est une application naturelle de l'IA LUI (Language User Interface)/CUI(Commandement Interface utilisateur).
WeChat n'a pas seulement un WeChat personnel, mais fournit également des canaux de dialogue tels que le numéro public, le WeChat d'entreprise, l'application WeChat d'entreprise, le service clientèle WeChat d'entreprise, etc.
En connectant l'application Dify à l'écosystème WeChat, vous pouvez créer un puissant service client intelligent qui réduit considérablement les coûts du service client et peut également améliorer l'expérience du client. Ce tutoriel a pour but de vous apprendre à utiliser le projet Dify on WeChat en vous touchant les mains et en connectant l'application Dify à l'écosystème WeChat.
2. difier l'accès au logiciel personnel microsoft ### 2.1. préparation
2.1.1 Créer des assistants de conversation
(1) Introduction à Dify
Dify est une excellente plateforme pour les LLMOps (Large Language Modelling Operations). Pour une introduction détaillée à Dify, veuillez consulter la documentation officielle Welcome to Dify | Chinese | Dify.
(2) Se connecter à la plateforme d'application officielle de Dify
Tout d'abord, connectez-vous à la plateforme d'application officielle de Dify, vous pouvez choisir d'utiliser l'identifiant Github ou l'identifiant Google. En outre, vous pouvez également vous référer au tutoriel officiel de Dify, Docker Compose Deployment | Chinese | Dify Private Deployment, Dify est un projet open source qui prend en charge le déploiement privé.

(3) Création de l'application Dify Basic Orchestration Chat Assistant

Après une connexion réussie, nous allons sur la page Dify et nous suivons les étapes ci-dessous pour créer une application d'assistant de chat d'orchestration de base.
- Cliquez sur Studio en haut de la page
- Création d'une application vierge
- Type d'application Sélectionner l'assistant de conversation
- Options de graphique de l'assistant de chatTableau de base
- Sélectionnez l'icône de l'application et donnez-lui un nom, par exemple Basic Orchestration Chat Assistant.
- Cliquez pour créer

Après une création réussie, nous serons redirigés vers la page montrée ci-dessus, nous continuons à configurer l'application.
- Sélectionnez le modèle, par exemple gpt-3.5-turbo-0125
- Réglage des paramètres du modèle
- Remplir les questions de la demande

Une fois la configuration terminée, nous pouvons la tester dans la boîte de dialogue de droite, et une fois le test terminé, procédez comme suit
- poste
- mise à jour
- Accès à l'API
(4) Générer la clé API de l'assistant de chat d'orchestration de base

Après avoir cliqué sur "Access API", nous serons redirigés vers la page de gestion de l'API ci-dessus, dans cette page nous suivons les étapes ci-dessous pour obtenir la clé API :
- Cliquez sur la clé API dans le coin supérieur droit.
- Cliquez sur Créer une clé
- Copier et enregistrer la clé
Après avoir enregistré la clé, vous devez également vérifier le serveur API dans le coin supérieur droit, si l'application provient du site officiel de Dify, l'adresse du serveur API est "https://api.dify.ai/v1", s'il s'agit d'un déploiement privé, veuillez vous assurer de l'adresse de votre propre serveur API.
Ceci conclut les préparatifs pour la création d'un assistant de conversation, et il n'y a que deux choses que nous devons sauvegarder dans cette sous-section :Clé APIavecAdresse du serveur API
2.1.2. télécharger le projet Dify on WeChat
(1) Informations sur le projet Dify on WeChat
Dify sur WeChatêtre ChatGPT sur WeChat La branche en aval de l'API Dify, qui implémente en plus le docking à l'API Dify, la prise en charge de l'assistant de chat Dify, la prise en charge des outils d'invocation d'agents et des bases de connaissances, et la prise en charge des flux de travail Dify, voir le dépôt GitHub Dify on WeChat pour plus de détails.
(2) Télécharger le code et installer les dépendances
- Télécharger le code du projet
Copie
gitclonehttps://github.com/hanfangyuan4396/dify-on-wechat
cddify-on-wechat/
- Installation de python
Le projet Dify on WeChat est écrit en python.site officiel de pythonTéléchargez et installez python, il est recommandé d'installer python 3.8 ou plus, j'ai testé la version 3.11.6 sous ubuntu et cela fonctionne bien.
- Installer les dépendances de base (obligatoire) :
Copie
pip3install-rrequirements.txt# 国内可以在该命令末尾添加 "-i https://mirrors.aliyun.com/pypi/simple" 参数,使用阿里云镜像源安装依赖
- Dépendances étendues (facultatif, recommandé) :
Copie
pip3install-rrequirements-optional.txt# 国内可以在该命令末尾添加 "-i https://mirrors.aliyun.com/pypi/simple" 参数,使用阿里云镜像源安装依赖
(3) Remplir le fichier de configuration
Nous créons un fichier nommé config.json dans le répertoire racine du projet avec le contenu suivant, et nous créons un fichier dans le répertoireSous-section 2.1.1 (4) Enfin sauvéeClé APIavec Adresse du serveur API Veuillez mettredify_api_baseconfigurer comme Adresse du serveur API . ;dify_api_keyconfigurer commeClé APILes autres configurations restent inchangées.
(PS : Beaucoup d'entre vous n'ont peut-être pas suivi à la lettre les étapes indiquées dans mon tutoriel.Type d'assistant de conversationde l'application Dify, avec un accent particulier sur ladify_app_typeSi vous créez la méthode de configurationAssistant de chatVeuillez configurer l'application pour chatbot ; CrééAgentVeuillez configurer l'application pour agent ; crééflux de travailVeuillez configurer l'application pour flux de travail )
Copie
{
"dify_api_base":"https://api.dify.ai/v1",
"dify_api_key":"app-xxx",
"dify_app_type":"chatbot",
"channel_type":"wx",
"model":"dify",
"single_chat_prefix": [""],
"single_chat_reply_prefix":"",
"group_chat_prefix": ["@bot"],
"group_name_white_list": ["ALL_GROUP"]
}
2.2 Accès à WeChat pour l'orchestration de base des assistants de chat
2.2.1 Test de démarrage rapide
(1) Exécutez la commande suivante dans le répertoire racine du projet Dify on Wechat
Copie
cddify-on-wechat
python3app.py# windows环境下该命令通常为 python app.py
(2) Scanner le code de connexion

Ce projet utilise itchat pour mettre en place un login wechat personnel, il y a un risque de blocage, il est recommandé d'utiliser la fonctionauthentification par nom réelpasséNuméro miniature WeChatPour tester, après l'exécution de la commande ci-dessus, nous pouvons voir dans la console pour imprimer le code QR montré ci-dessus, utiliser WeChat pour scanner le code pour se connecter, après la connexion lorsque vous voyez les caractères "itchat : Start auto replying.", dit que la connexion est réussie, nous pouvons tester.
(3) Test de dialogue

Nous constatons que les réponses du robot WeChat sont cohérentes avec les réponses de la page de test de Dify. À ce stade, nous vous félicitons d'avoir réussi à connecter Dify à votre WeChat personnel 🎉🎉🎉🎉🎉🎉 !
(PS : Certains amis ici peuvent voir une réponse normale au message dans le journal, mais n'ont pas reçu le message dans WeChat, s'il vous plaît. Ne vous envoyez pas de messages sur votre propre WeChat )
(4) Déploiement du serveur
- Déploiement du code source
Copie
cddify-on-wechat
nohuppython3app.py&tail-fnohup.out# 在后台运行程序并通过日志输出二维码
- déploiement de docker compose
conteneurvariable d'environnementVeillez àécraserconfig.json, veuillez modifier les variables d'environnement du fichier docker/docker-compose.yml en fonction de votre configuration réelle, la méthode de configuration est la même que celle du fichier docker/docker-compose.yml.Sous-section 2.1.1 (4) La configuration config.json est cohérente avec celle de l'application
Veillez à le configurer correctement ! DIFY_API_BASE , CLÉ DIFY_APIavecDIFY_APP_TYPEVariables d'environnement.
Copie
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"]'
Exécutez ensuite la commande suivante pour démarrer le conteneur
Copie
cddify-on-wechat/docker# 进入docker目录
dockercomposeup-d# 启动docker容器
dockerlogs-fdify-on-wechat# 查看二维码并登录
2.3 Connecter l'assistant de chat de Workflow Orchestration à WeChat
Après avoir accédé à l'application de base de l'assistant de conversation Dify sur WeChat, nous avons ensuite augmenté la difficulté et essayé d'accéder à l'application de l'assistant de conversation de l'orchestration du flux de travail sur WeChat pour mettre en œuvre un service client intelligent sur WeChat avec une connaissance de la plateforme Dify pour répondre à nos questions sur le flux de travail Dify.
2.3.1 Création d'une base de connaissances
(1) Télécharger le fichier de la base de connaissances

Nous sommes ici.dépôt de documents docifyTéléchargez la documentation pour l'introduction au flux de travail de Dify.
(2) Importation de la base de connaissances dans Dify

Aller à la page Base de connaissances pour créer une base de connaissances

Choisissez d'importer le texte existant, téléchargez le fichier introduce.md qui vient d'être téléchargé, cliquez sur suivant !


Sélectionnez la configuration suivante
- Réglage du segment : segmentation et nettoyage automatiques
- Méthode d'indexation : haute qualité
- Paramètres de recherche : Recherche vectorielle
Enfin, cliquez sur "Enregistrer et traiter".

Nous constatons que la base de connaissances est en cours de traitement pour l'intégration, attendez donc quelques instants pour que l'intégration soit réussie.
2.3.2 Création d'assistants de chat pour l'orchestration des flux de travail

Nous allons dans le studio Dify et cliquons sur Créer à partir d'un modèle d'application.

Nous utilisons un modèle de type Base de connaissances + Chatbot, nous définissons l'icône et le nom de l'application, et nous cliquons sur Créer !

Après avoir accédé à la page d'orchestration du flux de travail, cliquez d'abord sur le nœud Knowledge Retrieval, puis sur le "+" le plus à droite pour ajouter une base de connaissances. Nous choisissons la base de connaissances introduce.md précédemment téléchargée, qui est une introduction de base au flux de travail Dify. Enfin, nous cliquons sur Ajouter, la configuration du nœud de la base de connaissances est terminée.

Ensuite, sélectionnez le nœud LLM, cliquez sur Set Context et sélectionnez la variable result, qui contient les résultats de la recherche de connaissances.

Après avoir configuré le nœud LLM, nous avons cliqué sur Preview pour le tester et nous avons saisi la question suivante : please introduce the dedify workflow. Vous pouvez voir que l'introduction correcte au flux de travail de Dify est finalement produite. Après avoir testé correctement, nous retournons en mode édition.

Après être revenu en mode édition, cliquez tour à tour sur Publier, Mettre à jour et Accéder à l'API
2.3.3 Générer la clé API de l'assistant Chat de Workflow Orchestration
Après avoir accédé à la page de gestion de l'API, nous nous référons à la section2.1.1 Sous-section (4) Obtention d'une clé API pour l'application Base de connaissances + ChatbotavecAdresse du serveur API
2.3.4 Accès à WeChat
avec2.1.2 Sous-section (3) De même, nous créons un fichier nommé config.json dans le répertoire racine du projet, avec le contenu suivant, et nous mettons aussi le fichier dedify_api_baseconfigurer commeBase de connaissances + Chatbotl'adresse du serveur API de l'application, le dify_api_keyconfigurer commeBase de connaissances + ChatbotClé API pour l'application, les autres configurations restent inchangées
Copie
{
"dify_api_base":"https://api.dify.ai/v1",
"dify_api_key":"app-xxx",
"dify_app_type":"chatbot",
"channel_type":"wx",
"model":"dify",
"single_chat_prefix": [""],
"single_chat_reply_prefix":"",
"group_chat_prefix": ["@bot"],
"group_name_white_list": ["ALL_GROUP"]
}
Nous suivons2.2.1 Sous-sectionLancez l'application et scannez le code pour vous connecter, puis envoyez un message au robot WeChat pour le tester.

Les réponses du robot WeChat sont cohérentes avec celles de la page de test de Dify. Félicitations pour avoir franchi une étape supplémentaire et intégré l'application d'orchestration de flux de travail dans votre WeChat personnel, vous pouvez importer davantage de documentation officielle de Dify dans votre base de connaissances et laisser le robot WeChat répondre à davantage de questions relatives à Dify pour vous.
2.4 Connexion des agents à WeChat
2.4.1 Création d'applications pour les agents

Allez sur la page Studio, cliquez sur Créer une application vierge, sélectionnez l'agent, définissez l'icône et le nom de l'application, et enfin cliquez sur Créer.

Après une création réussie, nous entrons dans la page de configuration de l'application Agent, où nous sélectionnons le modèle de dialogue et ajoutons ensuite des outils. Nous ajoutons d'abord l'outil de dessin DALL-E, la première fois que nous utilisons l'outil doit être autorisée, généralement nous définissons la clé API OpenAI et l'URL de base OpenAI pour utiliser l'outil de dessin DALL-E.

Après avoir obtenu l'autorisation, nous avons ajouté l'outil de peinture DALL-E 3.

Ensuite, ajoutez le moteur de recherche DuckDuckGo et l'outil mathématique pour les tests ultérieurs.

On entre dans la question "Recherche du nombre d'étoiles du projet open source Dify, quel est ce nombre multiplié par 3,14", on s'assure que l'application peut appeler l'outil normalement, on clique sur le release, la mise à jour, l'accès à l'API à son tour !
2.4.2 Génération des clés API de l'agent
Nous continuons à nous référer à2.1.1 Sous-section (4) Obtenir un assistant intelligentappliquéeClé APIavecAdresse du serveur API
2.4.3 Accès à WeChat
Nous créons un fichier nommé config.json dans le répertoire racine du projet avec le contenu suivant, et nous mettons également le fichierdify_api_baseconfigurer commeassistant intelligentL'adresse du serveur API de l'application ;dify_api_keyconfigurer commeassistant intelligentpour l'application, en notant que l'application est le serveur de lassistant intelligentil est également nécessaire de mettre en place l'application de typedify_app_typefixé à agent Les autres configurations restent inchangées.
Copie
{
"dify_api_base":"https://api.dify.ai/v1",
"dify_api_key":"app-xxx",
"dify_app_type":"agent",
"channel_type":"wx",
"model":"dify",
"single_chat_prefix": [""],
"single_chat_reply_prefix":"",
"group_chat_prefix": ["@bot"],
"group_name_white_list": ["ALL_GROUP"]
}
référence continue2.2.1 Sous-sectionLancez l'application et scannez le code pour vous connecter, puis envoyez un message au robot WeChat pour le tester.

Vous pouvez voir que le robot WeChat peut utiliser les outils de recherche et de dessin normalement. Encore une fois, félicitations pour avoir intégré l'application Dify Agent dans WeChat. Félicitez-moi également, je peux aller me coucher en premier après avoir écrit ceci.
2.5 Connecter les flux de travail à WeChat
2.5.1 Création d'applications de flux de travail

Tout d'abord, vous devez télécharger le fichier DSL que j'ai créé à l'avance.Cliquez ici pour télécharger. Une fois le téléchargement terminé, allez sur la page du studio, cliquez sur Importer un fichier DSL, chargez le fichier que vous avez téléchargé à l'avance, et enfin cliquez sur Créer.

Une fois créé, suivez les étapes ci-dessus pour le tester. Cliquez sur Run (Exécuter) et tapez hello (Bonjour) pour vous assurer que ce flux de travail produit des résultats corrects.
Vous pouvez vous inspirer de ce flux de travail, mais pour l'instant, il ne s'agit que d'une étape.Type de flux de travailL'application, qui dispose d'un nom de variable d'entrée très flexible, permet d'accéder plus facilement au robot WeChat, Dify on WeChat project engagement.Type de flux de travailapplication spécifiqueLa variable d'entrée est nommée<strong>query</strong>
(math.) genreLa variable de sortie est nommée<strong>text</strong>
.

Après avoir testé l'application sans problème, suivez les étapes ci-dessus pour la publier, en cliquant sur Publier, Mettre à jour et Accéder à l'API dans cet ordre.
2.5.2 Générer des clés API de workflow
Nous nous référons également à la2.1.1 Sous-section (4) Acquisition de flux de travailappliquéeClé APIavec Adresse du serveur API .
2.5.3 Accès à WeChat
Nous créons un fichier nommé config.json dans le répertoire racine du projet avec le contenu suivant, et nous mettons également le fichierdify_api_baseconfigurer commeflux de travailL'adresse du serveur API de l'application ;dify_api_keyconfigurer commeflux de travailpour l'application, en notant que l'application est le serveur de lflux de travailil est également nécessaire de mettre en place l'application de typedify_app_typefixé à flux de travail Les autres configurations restent inchangées.
Copie
{
"dify_api_base":"https://api.dify.ai/v1",
"dify_api_key":"app-xxx",
"dify_app_type":"workflow",
"channel_type":"wx",
"model":"dify",
"single_chat_prefix": [""],
"single_chat_reply_prefix":"",
"group_chat_prefix": ["@bot"],
"group_name_white_list": ["ALL_GROUP"]
}
cf. même référence2.2.1 Sous-sectionLancez le programme et scannez le code pour vous connecter, puis envoyez un message au robot WeChat pour le tester.

Vous pouvez voir que le robot se connecte avec succès à l'API de flux de travail et répond. Jusqu'à présent, nous avons maîtrisé la création de tous les types d'applications Dify : assistant de chat de base, assistant de chat de flux de travail, assistant intelligent, flux de travail, et nous avons également appris à publier les applications ci-dessus en tant qu'API et à accéder à WeChat.
Je décrirai ensuite comment accéder à l'application sur d'autres canaux de WeChat, tels que le numéro public, l'application WeChat de l'entreprise, le service clientèle WeChat de l'entreprise, etc.
3. accès direct au numéro personnel WeChat de l'entreprise (environnement Windows uniquement)
- il y a risque de suspension de l'enregistrement Veuillez utiliser Enterprise WeChatviolontest (machines, etc.)
- Lorsque vous vous connectez à l'ancienne version d'Enterprise WeChat, il se peut que la version d'Enterprise WeChat soit trop basse et que vous ne puissiez pas vous connecter.numéro 1525Veuillez essayer de passer à un autre micro-signal d'entreprise et réessayer.
3.1 Télécharger et installer Enterprise WeChat
Assurez-vous que vous disposez d'un ordinateur Windows, puis téléchargez et installez la version spécifique d'Enterprise Microsoft sur cet ordinateur.Lien de téléchargement officiel(math.) genreLiens de téléchargement alternatifs.
3.2 Création de l'application Dify
Nous sommes allés devant la 2.1.1 , 2.3.2 ,2.4.1avec2.5.1Les sous-sections décrivent la création de 4 applications Dify différentes - Basic Chat Assistant, Workflow Chat Assistant, Intelligent Assistant et Workflow - et vous pouvez créer n'importe laquelle d'entre elles en suivant les tutoriels ci-dessus.
3.3 Téléchargement et installation de Dify sur WeChat
sol 2.1.2(2) télécharger le code et installer les dépendances, afin de suivre par la suite les dépendances ntwork, l'étape Assurez-vous que la version 3.8, 3.9 ou 3.10 de python est installée. .
3.4 Installation des dépendances de ntwork
Comme la source d'installation de ntwork n'est pas très stable, vous pouvez télécharger le fichier whl correspondant et utiliser le fichier whl pour installer ntwork hors ligne.
La première chose à faire est de vérifier votre version de python, tapez python sur la ligne de commande pour voir les informations sur la version, puis dans le champntwork-whlpour trouver le fichier whl correspondant, exécutez le programmepip install xx.whl
Installez les dépendances de ntwork, notez que "xx.whl" est remplacé par le nom du fichier whl. Trajectoire réelle .
Par exemple, mes informations sur la version de python sont les suivantes
"Python 3.8.5 (par défaut, Sep 3 2020, 21:29:08) [MSC v.1916 64 bit (AMD64)]"
Vous pouvez voir que la version de python est 3.8.5 et est AMD64 Le fichier whl correspondant est ntwork-0.1.3-cp38-cp38-win_amd64.whl Vous devez exécuter la commande suivante pour installer
Copie
pipinstallyour-path/ntwork-0.1.3-cp38-cp38-win_amd64.whl
3.5 Remplir le fichier de configuration
Nous créons un fichier nommé config.json dans le répertoire racine du projet Dify on WeChat, ci-dessous le fichier de configuration avec l'application d'assistant intelligent Dify comme exemple, veuillez remplir correctement les informations dedify_api_base, dedify_api_key, dedify_app_type de l'application que vous venez de créer, veuillez noter que channel_type est rempli comme channel_key et channel_type est rempli comme channel_type. type est travail en ligne
Copie
{
"dify_api_base":"https://api.dify.ai/v1",
"dify_api_key":"app-xxx",
"dify_app_type":"agent",
"channel_type":"wework",
"model":"dify",
"single_chat_prefix": [""],
"single_chat_reply_prefix":"",
"group_chat_prefix": ["@bot"],
"group_name_white_list": ["ALL_GROUP"]
}
3.6 Connexion à WeChat
Veillez à scanner le code sur votre ordinateur pour vous connecter à l'avance à Enterprise WeChat.
3.7. Lancement du robot personnel WeChat
Exécutez la commande suivante pour démarrer le robot
Copie
cddify-on-wechat
pythonapp.py
Nous pouvons voir que le terminal affiche le message suivant. Attendre la fin de l'initialisation du programme wework Enfin, la startup a été couronnée de succès.
Copie
[INFO][2024-04-30 21:16:04][wework_channel.py:185] - 等待登录······
[INFO][2024-04-30 21:16:05][wework_channel.py:190] - 登录信息:>>>user_id:xxx>>>>>>>>name:
[INFO][2024-04-30 21:16:05][wework_channel.py:191] - 静默延迟60s,等待客户端刷新数据,请勿进行任何操作······
[INFO][2024-04-30 21:17:05][wework_channel.py:224] - wework程序初始化完成········

Nous envoyons maintenant un message au robot et nous pouvons voir que l'accès a réussi !
4. l'accès public Dify
À mettre à jour~
5. accès direct à l'application WeChat de l'entreprise
À mettre à jour~
6. accès au service clientèle WeChat de l'entreprise par Dify
À mettre à jour~
7. le post-scriptum
Je suis un travailleur social animalier, l'énergie est vraiment limitée, je ne peux travailler que la nuit et le temps libre du week-end pour maintenir le projet Dify sur WeChat, compter sur mon développement personnel les progrès du projet sont très lents, j'espère que vous pouvez participer à ce projet, plus de relations publiques, de sorte que l'écologie du Dify devienne meilleure ~ !
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...