Dify confía en ChatGPT-on-WeChat para acceder al ecosistema WeChat
Tutoriales prácticos sobre IAActualizado hace 7 meses Círculo de intercambio de inteligencia artificial 3.8K 00
Por Han Fangyuan, "Dify autor del proyecto de código abierto "on WeChat
1. Panorama general
WeChat, como programa de mensajería instantánea más popular, tiene un tráfico enorme.
La amigable ventana de chat de WeChat es una aplicación de IA natural LUI(Language User Interface)/CUI(Comando Interfaz de usuario).
WeChat no sólo tiene WeChat personal, sino que también proporciona canales de diálogo como el número público, WeChat de empresa, aplicación WeChat de empresa, servicio de atención al cliente WeChat de empresa, etc. Tiene una buena ecología WeChat.
Conectando la app de Dify al ecosistema WeChat, se puede crear un potente servicio inteligente de atención al cliente que reduce enormemente los costes de atención al cliente y además puede mejorar la experiencia del cliente. Este tutorial es para enseñarte a usar el proyecto Dify en WeChat tocando tus manos y conectando la app Dify al ecosistema WeChat.
2. Dificar el acceso a microsoft personal ### 2.1. preparación
2.1.1 Crear un asistente de chat
(1) Introducción a Dify
Dify es una excelente plataforma para LLMOps (Large Language Modelling Operations). Para una introducción detallada a Dify, por favor diríjase a la documentación oficial Bienvenido a Dify | Chino | Dify.
(2) Inicie sesión en la plataforma oficial de aplicaciones de Dify
En primer lugar, inicie sesión en la plataforma oficial de aplicaciones de Dify, puede optar por utilizar el inicio de sesión de Github o utilizar el inicio de sesión de Google. Además, también puede consultar el tutorial oficial de Dify Docker Compose Deployment | Chinese | Dify Private Deployment, Dify es un proyecto de código abierto que soporta el despliegue privado.

(3) Creación de la aplicación Dify Basic Orchestration Chat Assistant

Después de iniciar sesión con éxito, vamos a la página de Dify y seguimos los siguientes pasos para crear una aplicación básica de asistente de chat de orquestación
- Haga clic en Estudio en la parte superior de la página
- Crear una aplicación en blanco
- Tipo de aplicación Seleccione Asistente de Chat
- Opciones de gráficos del asistente de chatGráficos básicos
- Seleccione el icono de la aplicación y escriba un nombre para la aplicación, como Asistente de chat de orquestación básica.
- Haga clic para crear

Después de la creación exitosa somos redirigidos a la página mostrada arriba, continuamos para configurar la aplicación
- Seleccione el modelo, por ejemplo gpt-3.5-turbo-0125
- Ajuste de los parámetros del modelo
- Rellene los campos de la solicitud

Una vez finalizada la configuración, podemos probarla en el cuadro de diálogo de la derecha y, una vez finalizada la prueba, hacer lo siguiente
- Correo electrónico:
- actualización
- Acceso a la API
(4) Generar la clave API del asistente de chat de orquestación básica

Después de hacer clic en "Acceder a la API", seremos redirigidos a la página de gestión de la API anterior, en esta página seguimos los siguientes pasos para obtener la clave de la API:
- Haga clic en la clave API en la esquina superior derecha
- Haga clic en Crear clave
- Copiar y guardar la clave
Después de guardar la clave, también es necesario comprobar el servidor API en la esquina superior derecha, si la aplicación es de Dify sitio web oficial, la dirección del servidor API es "https://api.dify.ai/v1", si se trata de un despliegue privado, por favor asegúrese de que su propia dirección del servidor API.
Esto concluye los preparativos para crear un asistente de chat, y sólo hay dos cosas que necesitamos guardar en esta subsección:Clave APIjunto conDirección del servidor API
2.1.2. descargar el proyecto Dify en WeChat
(1) Dify en WeChat Información del proyecto
Dify en WeChatsea ChatGPT en WeChat La rama descendente de la API de Dify, que además implementa acoplamiento a la API de Dify, soporte para el Asistente de Chat de Dify, soporte para herramientas de invocación de Agentes y bases de conocimiento, y soporte para flujos de trabajo de Dify, ver el repositorio GitHub Dify en WeChat para más detalles.
(2) Descargar código e instalar dependencias
- Descargar el código del proyecto
Copia
gitclonehttps://github.com/hanfangyuan4396/dify-on-wechat
cddify-on-wechat/
- Instalación de python
El proyecto Dify en WeChat está escrito en python.sitio web oficial de pythonDescargar e instalar python, se recomienda instalar python 3.8 o superior, he probado la versión 3.11.6 en ubuntu y funciona bien.
- Instalar dependencias del núcleo (obligatorio):
Copia
pip3install-rrequirements.txt# 国内可以在该命令末尾添加 "-i https://mirrors.aliyun.com/pypi/simple" 参数,使用阿里云镜像源安装依赖
- Dependencias ampliadas (opcional, recomendado):
Copia
pip3install-rrequirements-optional.txt# 国内可以在该命令末尾添加 "-i https://mirrors.aliyun.com/pypi/simple" 参数,使用阿里云镜像源安装依赖
(3) Rellene el archivo de configuración
Creamos un archivo llamado config.json en el directorio raíz del proyecto con el siguiente contenido, y creamos un archivo en el directorioSubsección 2.1.1 (4) Finalmente salvadoClave APIjunto con Dirección del servidor API Por favor, pongadify_api_baseconfigurar como Dirección del servidor API .;dify_api_keyconfigurar comoClave APILas demás configuraciones se mantienen sin cambios.
(PD: Puede que muchos de vosotros no hayáis seguido al pie de la letra los pasos indicados en mi tutorial.Tipo de asistente de chatde la aplicación Dify, con una nota especial sobre ladify_app_typesi crea el método de configuraciónAsistente de chatConfigure la aplicación para chatbot CreadoAgenteConfigure la aplicación para agente creadoflujo de trabajoConfigure la aplicación para flujo de trabajo )
Copia
{
"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 Acceso a WeChat para asistentes de chat de orquestación básica
2.2.1 Prueba de arranque rápido
(1) Ejecute el siguiente comando en el directorio raíz del proyecto Dify en Wechat
Copia
cddify-on-wechat
python3app.py# windows环境下该命令通常为 python app.py
(2) Escanear código de acceso

Este proyecto utiliza itchat para implementar wechat personal de inicio de sesión, existe el riesgo de bloqueo, se recomienda utilizar elautenticación con nombre realpasadoNúmero en miniatura de WeChatPara probar, después de la ejecución del comando anterior, podemos ver en la consola para imprimir el código QR como se muestra arriba, utilice WeChat para escanear el código para iniciar sesión, después de iniciar sesión cuando vea "itchat: Iniciar respuesta automática." caracteres, dijo que el inicio de sesión se ha realizado correctamente, podemos probar.
(3) Prueba de diálogo

Vemos que las respuestas del bot de WeChat son consistentes con las respuestas de la página de prueba de Dify. En este punto, ¡felicidades por conectar exitosamente Dify a tu WeChat personal 🎉🎉🎉🎉🎉!
(PS: Algunos amigos aquí puede ver una respuesta normal al mensaje en el registro, pero no recibió el mensaje en WeChat, por favor No te envíes mensajes a ti mismo en tu propio WeChat )
(4) Despliegue del servidor
- Implantación del código fuente
Copia
cddify-on-wechat
nohuppython3app.py&tail-fnohup.out# 在后台运行程序并通过日志输出二维码
- despliegue de docker compose
contenedorvariable de entornoasegúrese desobrescribirconfig.json, modifique las variables de entorno del archivo docker/docker-compose.yml según su configuración real, el método de configuración es el mismo que el del archivoSubsección 2.1.1 (4) La configuración config.json es coherente con la de la aplicación
Asegúrate de configurarlo correctamente. DIFY_API_BASE , DIFY_API_KEYjunto conDIFY_APP_TYPEVariables de entorno.
Copia
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"]'
A continuación, ejecute el siguiente comando para iniciar el contenedor
Copia
cddify-on-wechat/docker# 进入docker目录
dockercomposeup-d# 启动docker容器
dockerlogs-fdify-on-wechat# 查看二维码并登录
2.3 Conexión del asistente de chat de orquestación de flujos de trabajo a WeChat
Después de acceder a la aplicación básica de asistente de chat de Dify a WeChat, a continuación aumentamos la dificultad e intentamos acceder a la aplicación de asistente de chat de orquestación de flujo de trabajo a WeChat para implementar un servicio de atención al cliente inteligente de WeChat con conocimientos de la plataforma Dify para responder a los conocimientos relacionados con el flujo de trabajo de Dify para nosotros.
2.3.1 Crear una base de conocimientos
(1) Descargar el archivo de la base de conocimientos

Estamos aquí.repositorio de documentos docifyDescargue la documentación de la Introducción al flujo de trabajo de Dify.
(2) Importar Base de Conocimientos en Dify

Vaya a la página Base de conocimientos para crear una base de conocimientos

Elija importar el texto existente, cargue el archivo introduce.md que acaba de descargar y haga clic en siguiente.


Seleccione la siguiente configuración
- Segmentación: segmentación y limpieza automáticas
- Método de indexación: alta calidad
- Ajustes de búsqueda: Búsqueda vectorial
Por último, haga clic en Guardar y procesar

Vemos que la base de conocimientos se está procesando para la incrustación, así que espere unos instantes a que la incrustación se realice correctamente.
2.3.2 Creación de asistentes de chat de orquestación de flujos de trabajo

Entramos en el estudio de Dify y pulsamos en Crear desde plantilla de aplicación

Utilizamos una plantilla de tipo Base de conocimientos + Chatbot, establecemos el icono y el nombre de la aplicación y hacemos clic en Crear.

Después de saltar a la página de orquestación del flujo de trabajo, primero haga clic en el nodo Knowledge Retrieval, y luego haga clic en el "+" de la derecha para añadir una base de conocimientos. Elegimos la base de conocimientos introduce.md previamente cargada, que es una introducción básica al flujo de trabajo de Dify. Por último, hacemos clic en Agregar, la configuración del nodo de base de conocimientos se ha completado.

A continuación, seleccionamos el nodo LLM, hacemos clic en Set Context, y seleccionamos la variable resultante, que contiene los resultados de la recuperación de conocimientos.

Después de configurar el nodo LLM, pulsamos en Vista Previa para probarlo e introducimos la pregunta: por favor introduzca el flujo de trabajo dedify. Puede ver que finalmente sale la introducción correcta al flujo de trabajo de Dify. Después de probar correctamente, volvemos al modo de edición.

Después de volver al modo de edición, haga clic en Publicar, Actualizar y Acceder a la API sucesivamente.
2.3.3. Generar la clave API del asistente de chat de orquestación de flujos de trabajo
Tras saltar a la página de gestión de la API, nos remitimos a la página2.1.1 Subsección (4) Obtención de una clave API para la aplicación Knowledge Base + Chatbotjunto conDirección del servidor API
2.3.4 Acceso a WeChat
junto con2.1.2 Subsección (3) Del mismo modo, creamos un archivo llamado config.json en el directorio raíz del proyecto, con el siguiente contenido, y también ponemos el dedify_api_baseconfigurar comoBase de conocimientos + Chatbotla dirección del servidor API de la aplicación, el dify_api_keyconfigurar comoBase de conocimientos + ChatbotClave API para la aplicación, las demás configuraciones no cambian
Copia
{
"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"]
}
Seguimos2.2.1 SubsecciónAbre la aplicación, escanea el código para iniciar sesión y envía un mensaje al bot de WeChat para probarlo.

Las respuestas del bot de WeChat son consistentes con las de la página de prueba de Dify. Felicitaciones por dar un paso más allá y obtener la aplicación de orquestación de flujo de trabajo en su WeChat personal, puede importar más documentación oficial de Dify en su base de conocimientos y dejar que el bot de WeChat responda más preguntas relacionadas con Dify por usted.
2.4. Conexión de agentes a WeChat
2.4.1 Creación de Aplicaciones de Agente

Vaya a la página Studio, haga clic en Create Blank App, seleccione Agent, defina el icono y el nombre de la aplicación y, por último, haga clic en Create

Después de la creación exitosa, entraremos en la página de configuración de la aplicación Agente, donde seleccionamos el modelo de diálogo y luego añadimos herramientas. Primero añadimos la herramienta de dibujo DALL-E, la primera vez para usar la herramienta necesita ser autorizada, generalmente establecemos la clave API de OpenAI y la URL base de OpenAI para usar la herramienta de dibujo DALL-E.

Una vez obtenida la autorización, añadimos la herramienta de pintura DALL-E 3

A continuación, añada el motor de búsqueda DuckDuckGo y la herramienta matemática para realizar las pruebas posteriores.

¡Entramos en la pregunta "Buscar el número de estrellas del proyecto de código abierto Dify, ¿cuál es este número multiplicado por 3,14", asegúrese de que la aplicación puede llamar a la herramienta normalmente, hacemos clic en la liberación, actualización, el acceso a la API a su vez!
2.4.2. Generación de claves API de agente
Seguimos refiriéndonos a2.1.1 Subsección (4) Conseguir un asistente inteligenteaplicadoClave APIjunto conDirección del servidor API
2.4.3 Acceso a WeChat
Creamos un archivo llamado config.json en el directorio raíz del proyecto con el siguiente contenido, y también ponemos el archivodify_api_baseconfigurar comoasistente inteligenteLa dirección del servidor API de la aplicación;dify_api_keyconfigurar comoasistente inteligenteClave API para la aplicación, teniendo en cuenta que la aplicación es elasistente inteligenteaplicación de tipo, también es necesario poner eldify_app_typeajustado a agente Las demás configuraciones se mantienen sin cambios.
Copia
{
"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"]
}
referencia continua2.2.1 SubsecciónAbre la aplicación, escanea el código para iniciar sesión y envía un mensaje al bot de WeChat para probarlo.

Usted puede ver que el bot WeChat puede utilizar las herramientas de búsqueda y dibujo con normalidad. Una vez más, felicitaciones por conseguir la aplicación Dify Agent en WeChat. También felicitarme, puedo dormir primero después de escribir esto.
2.5 Conectar flujos de trabajo a WeChat
2.5.1 Creación de aplicaciones de flujo de trabajo

En primer lugar, tienes que descargar el archivo DSL que he creado previamente.Haga clic aquí para descargar. Una vez finalizada la descarga, vaya a la página del estudio, haga clic en Importar archivo DSL, cargue el archivo que descargó previamente y, por último, haga clic en Crear.

Una vez creado, siga los pasos anteriores para probarlo. Haga clic en Ejecutar y escriba hola para asegurarse de que este flujo de trabajo produce resultados correctamente.
Puede basarse en este flujo de trabajo, pero para elTipo de flujo de trabajoLa aplicación, que tiene un nombre de variable de entrada muy flexible,, con el fin de acceder más fácilmente al robot WeChat, Dify en WeChat compromiso del proyectoTipo de flujo de trabajoaplicación específicaLa variable de entrada se denomina<strong>query</strong>
(matemáticas) géneroLa variable de salida se denomina<strong>text</strong>
.

Después de probar sin problemas, siga los pasos anteriores para publicar la aplicación, haciendo clic en Publicar, Actualizar y Acceder a API en ese orden.
2.5.2. Generación de claves API de flujo de trabajo
Nos referimos igualmente al2.1.1 Subsección (4) Adquisición de flujos de trabajoaplicadoClave APIjunto con Dirección del servidor API .
2.5.3 Acceso a WeChat
Creamos un archivo llamado config.json en el directorio raíz del proyecto con el siguiente contenido, y también ponemos el archivodify_api_baseconfigurar comoflujo de trabajoLa dirección del servidor API de la aplicación;dify_api_keyconfigurar comoflujo de trabajoClave API para la aplicación, teniendo en cuenta que la aplicación es elflujo de trabajoaplicación de tipo, también es necesario poner eldify_app_typeajustado a flujo de trabajo Las demás configuraciones se mantienen sin cambios.
Copia
{
"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. misma referencia2.2.1 SubsecciónEjecuta el programa y escanea el código para iniciar sesión, luego envía un mensaje al bot de WeChat para probarlo.

Puedes ver que el robot se conecta con éxito a la api de flujo de trabajo y responde, hasta ahora hemos dominado completamente cómo crear todo tipo de aplicaciones de Dify: asistente de chat básico, asistente de chat de flujo de trabajo, asistente inteligente, flujo de trabajo, y también hemos aprendido cómo publicar las aplicaciones anteriores como APIs y acceder a WeChat.
A continuación describiré cómo acceder a la aplicación a otros canales de WeChat, como el número público, la aplicación WeChat de empresa, el servicio de atención al cliente WeChat de empresa, etc.
3. Dificar el acceso al número personal WeChat de la empresa (sólo entorno Windows)
- hay riesgo de suspensión del registro Utilice WeChat para empresasviolínprueba (maquinaria, etc.)
- Al iniciar sesión en la versión antigua de Enterprise WeChat puede aparecer Enterprise WeChat versión es demasiado baja, no puede iniciar sesión en la situación, de referenciaasunto1525Por favor, intente cambiar a otra micro-señal de empresa e inténtelo de nuevo.
3.1. Descargar e instalar WeChat para empresas
Asegúrese de que dispone de un ordenador con Windows y, a continuación, descargue e instale la versión específica de enterprise microsoft en este ordenador.Enlace oficial de descarga(matemáticas) géneroEnlaces de descarga alternativos.
3.2 Creación de la aplicación Dify
Hemos estado frente al 2.1.1 y 2.3.2 y2.4.1junto con2.5.1Las subsecciones describen la creación de 4 diferentes aplicaciones de Dify - Asistente de Chat Básico, Asistente de Chat de Flujo de Trabajo, Asistente Inteligente, y Flujo de Trabajo - y usted puede crear cualquiera de ellas de acuerdo a los tutoriales anteriores.
3.3. Descargar e instalar Dify en WeChat
fundación 2.1.2(2) paso, descargar el código e instalar las dependencias, para posteriormente seguir las dependencias de ntwork, el Asegúrate de tener instalada la versión 3.8, 3.9 o 3.10 de python. .
3.4. Instalación de las dependencias de ntwork
Dado que la fuente de instalación de ntwork no es muy estable, puede descargar el archivo whl correspondiente y utilizarlo para instalar ntwork sin conexión.
Lo primero que debe hacer es comprobar su versión de python, escriba python en la línea de comandos para ver la información de la versión y, a continuación, en el campontwork-whlpara encontrar el archivo whl correspondiente, ejecute el programapip install xx.whl
Instale las dependencias de ntwork, tenga en cuenta que "xx.whl" se sustituye por el archivo whl de Trayectoria real .
Por ejemplo, mi información sobre la versión de python es
"Python 3.8.5 (por defecto, 3 sep 2020, 21:29:08) [MSC v.1916 64 bit (AMD64)]"
Puedes ver que la versión de python es 3.8.5 y es AMD64 El archivo whl correspondiente es ntwork-0.1.3-cp38-cp38-win_amd64.whl Debe ejecutar el siguiente comando para instalar
Copia
pipinstallyour-path/ntwork-0.1.3-cp38-cp38-win_amd64.whl
3.5 Rellenar el fichero de configuración
Creamos un archivo llamado config.json en el directorio raíz de Dify en el proyecto WeChat, a continuación se muestra el archivo de configuración con Dify asistente inteligente aplicación como un ejemplo, por favor, rellene la información de dedify_api_base, dedify_api_key, dedify_app_type de la aplicación que acaba de crear correctamente, por favor, tenga en cuenta que channel_type se rellena como channel_key y channel_type se rellena como channel_type. type es wework
Copia
{
"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 Iniciar sesión en WeChat
Asegúrate de escanear el código en tu ordenador para iniciar sesión en Enterprise WeChat con antelación.
3.7 Lanzamiento del Robot Personal WeChat
Ejecute el siguiente comando para iniciar el robot
Copia
cddify-on-wechat
pythonapp.py
Podemos ver que el terminal muestra el siguiente mensaje. Esperar a que finalice la inicialización del programa wework Y finalmente, la puesta en marcha fue un éxito.
Copia
[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程序初始化完成········

Ahora enviamos un mensaje al bot y podemos ver que el acceso se ha realizado correctamente.
4. Dify Acceso Público
Por actualizar~
5. Dificar el acceso a la aplicación WeChat de la empresa
Por actualizar~
6. Dificar el acceso al servicio de atención al cliente WeChat de la empresa
Por actualizar~
7. Posdata
¡Soy un trabajador social de los animales, la energía es muy limitada, sólo puede trabajar en la noche y el fin de semana el tiempo libre para mantener la Dify en WeChat proyecto, dependen de mi desarrollo personal progreso del proyecto es muy lento, espero que usted pueda participar en este proyecto, más PR, por lo que la ecología de la Dify ser mejor ~!
© declaración de copyright
Derechos de autor del artículo Círculo de intercambio de inteligencia artificial Todos, por favor no reproducir sin permiso.
Artículos relacionados
Sin comentarios...