Hablar con Slack la Aplicación Web de Ejemplo
Es muy fácil crear una aplicación web simple que integrará un LLM con el conocimiento del usuario a través de consultas a Rememberizer.
Last updated
Es muy fácil crear una aplicación web simple que integrará un LLM con el conocimiento del usuario a través de consultas a Rememberizer.
Last updated
El código fuente de la aplicación se puede encontrar aquí.
En esta sección proporcionaremos instrucciones paso a paso y el código fuente completo para que puedas crear tu propia aplicación rápidamente.
Hemos creado un GPT de Hablar-con-Slack en OpenAI. La aplicación web de Hablar-con-Slack es muy similar.
En esta guía, proporcionamos instrucciones paso a paso y el código fuente completo para ayudarte a crear tu propia aplicación similar a nuestra integración de Talk-to-Slack GPT con Rememberizer.ai. A diferencia de la integración de Slack, una aplicación web ofrece más características y control, tales como web scraping, acceso a la base de datos local, gráficos y animación, y la recopilación de pagos. Además, puede ser utilizada por cualquier persona sin la necesidad de una cuenta premium genAI.
Nuestra aplicación de ejemplo, Talk to Slack, está alojada en Heroku e integra LLM de OpenAI con Rememberizer.ai para mejorar tu experiencia en Slack. La aplicación web está construida usando Flask y ofrece características como la integración OAuth2, acceso a los datos de Slack y una interfaz de usuario intuitiva.
Arquitectura basada en Flask: Las operaciones de backend, las comunicaciones de frontend y las interacciones de la API son manejadas por Flask.
Integración de OAuth2: Autorización segura y acceso a datos con el flujo OAuth2 de Rememberizer.
Acceso a Datos de Slack: Obtiene datos seguros de Slack conectados del usuario utilizando las APIs de Rememberizer.
Integración con OpenAI LLM: Procesa consultas con el servicio LLM de OpenAI para obtener respuestas perspicaces.
Interfaz de Usuario Intuitiva: Navegación e interacción sencillas con un diseño de IU moderno.
Mejores Prácticas: Se adhiere a los estándares de seguridad y experiencia de usuario para una integración fluida.
Python
Flask
Ten en cuenta que no fue muy difícil hacer que un LLM reescribiera toda esta aplicación en otro lenguaje, en nuestro caso Golang. Así que ten en cuenta que no estás limitado a Python.
Establezca estas variables de entorno:
APP_SECRET_KEY
: Clave secreta única para Flask.
REMEMBERIZER_CLIENT_ID
: ID de cliente para su aplicación Rememberizer.
REMEMBERIZER_CLIENT_SECRET
: Secreto del cliente para su aplicación Rememberizer.
OPENAI_API_KEY
: Su clave API de OpenAI.
Iniciar la Aplicación Flask: Ejecuta flask run
en la terminal y accede a la aplicación en http://localhost:5000
.
Copia la URL de callback a la configuración de tu aplicación Rememberizer: https://<YOURHOST>/auth/rememberizer/callback
ejemplo: http://localhost:5000/auth/rememberizer/callback
.
Se recomienda el despliegue en plataformas como Heroku, Google Cloud Platform (GCP), Amazon Web Services (AWS) o Microsoft Azure.
Despliegue en Heroku
Crea una Cuenta de Heroku: Instala el Heroku CLI.
Prepara tu Aplicación: Asegúrate de que estén presentes un Procfile
, runtime.txt
y requirements.txt
.
Despliega: Usa el Heroku CLI o la integración de GitHub para el despliegue.
Pasos Detallados
Conectar Heroku a GitHub: Habilita despliegues automáticos desde el repositorio de GitHub para actualizaciones sin problemas.
Desplegar Manualmente: Opcionalmente, usa el despliegue manual para tener más control.
Configuración Adicional
Instala Heroku CLI: brew tap heroku/brew && brew install heroku
(macOS).
Agrega certificados SSL: Usa certificados autofirmados para la configuración inicial de HTTPS.
Configura Variables de Entorno en Heroku: Usa heroku config:set KEY=value
para claves esenciales.
Otras Plataformas en la Nube
GCP: Configura una cuenta de GCP, prepara tu aplicación con app.yaml
y despliega usando gcloud app deploy
.
AWS: Usa Elastic Beanstalk para el despliegue después de configurar una cuenta de AWS y el AWS CLI.
Azure: Despliega a través de Azure App Service después de crear una cuenta de Azure e instalar el Azure CLI.
Antes de la implementación, verifica tu requirements.txt
, ajusta las configuraciones para producción y actualiza las URIs de redirección de OAuth.
@app.route('/') (Ruta de Índice):
Esta ruta renderiza la plantilla index.html cuando se accede a la URL raíz (/). Sirve como la página de inicio de tu aplicación.
@app.route('/auth/rememberizer') (Ruta de Autenticación de Rememberizer):
Esta ruta inicia el proceso de autenticación OAuth2 con Rememberizer.ai. Genera un valor de estado aleatorio, lo almacena en la sesión, construye la URL de autorización con los parámetros necesarios (ID de cliente, URI de redirección, alcance y estado), y redirige al usuario a la página de autorización de Rememberizer.ai.
@app.route('/auth/rememberizer/callback') (Ruta de Callback de Rememberizer):
Esta ruta maneja el callback de Rememberizer.ai después de que el usuario ha autorizado tu aplicación. Extrae el código de autorización de los parámetros de consulta, lo intercambia por un token de acceso utilizando el endpoint de token de Rememberizer.ai, y almacena el token de acceso en la sesión. Luego, redirige al usuario a la ruta /dashboard.
@app.route('/dashboard') (Ruta del Dashboard):
Esta ruta muestra la página del dashboard al usuario. Verifica si el usuario tiene un token de acceso en la sesión; si no, lo redirige a la ruta de autenticación. Si el usuario está autenticado, realiza una solicitud al endpoint de cuenta de Rememberizer.ai para recuperar la información de la cuenta y renderiza la plantilla dashboard.html con esta información.
@app.route('/slack-info') (Ruta de Información de Integración de Slack):
Esta ruta muestra información sobre la integración de Slack del usuario con Rememberizer.ai. Verifica si hay un token de acceso y realiza una solicitud al endpoint de integraciones de Rememberizer.ai para obtener los datos de la integración. Luego, renderiza la plantilla slack_info.html con estos datos.
@app.route('/ask', methods=['POST']) (Ruta de Pregunta):
Esta ruta maneja la presentación de preguntas del usuario. Verifica si hay un token de acceso, recupera la pregunta del usuario de los datos del formulario y realiza una solicitud al endpoint de búsqueda de documentos de Rememberizer.ai para encontrar información relevante. Luego, utiliza el modelo GPT-4 de OpenAI para generar una respuesta basada en la pregunta y los resultados de la búsqueda. La respuesta se renderiza en la plantilla answer.html.
Iconografía: Diseñado con un estilo detallado de arte de papel doblado, reflejando la integración de IA y comunicación. Nuestro icono fue creado en Midjourney e Image2Icon.
Configuración SSL: Generar certificados autofirmados utilizando OpenSSL para una comunicación segura.
Animamos a la exploración y la innovación con tu propia aplicación web integrada con IA, con el objetivo de mejorar la productividad y la colaboración dentro de tu plataforma.
Esta documentación revisada proporciona una guía completa para que los desarrolladores creen su propia aplicación web integrada con IA, similar a Talk-to-Slack. Incluye instrucciones detalladas para la configuración, el despliegue y una visión general del código de la aplicación, junto con las mejores prácticas.