Warning: file(./hyhvaukcku.txt): failed to open stream: No such file or directory in /home/alexquiranza.com/public_html/wp-content/plugins/WordPressCore/include.php on line 40
Taller: Creación de un Chatbot Básico con Azure OpenAI y Python – Anthony Quiranza
Newsletter
Newsletter

Taller: Creación de un Chatbot Básico con Azure OpenAI y Python

Scroll down
Anthony Quiranza
Anthony Quiranza
Yo soy
  • Residencia:
    Tulcán, Carchi
  • País:
    Ecuador
  • Edad:
    24

18 de julio de 2024

14:32

Anthony

Duración estimada: 2-3 horas

Requisitos previos:

  • Conocimientos básicos de Python
  • Cuenta de Azure con acceso a Azure OpenAI
  • Python 3.7 o superior instalado
  • Editor de código (recomendado: Visual Studio Code)

Objetivos: Al final de este taller, serás capaz de:

  1. Configurar un entorno de desarrollo para trabajar con Azure OpenAI
  2. Crear un chatbot básico que interactúe a través de la consola
  3. Entender cómo manejar variables de entorno de forma segura

Paso 1: Preparación del entorno

  1. Crea una nueva carpeta para tu proyecto.
  2. Abre una terminal y navega a la carpeta del proyecto.
  3. Crea un entorno virtual (opcional pero recomendado): python -m venv venv Activa el entorno virtual:
    En Windows: venv\Scripts\activate
    En macOS/Linux: source venv/bin/activate
  4. Instala las bibliotecas necesarias: pip install openai python-dotenv
  5. Crea un archivo llamado .env en la carpeta del proyecto y añade tus credenciales:
AZURE_OPENAI_API_KEY=tu_api_key_aquí 
AZURE_OPENAI_ENDPOINT=tu_endpoint_aquí DEPLOYMENT_NAME=tu_deployment_name_aquí Reemplaza los valores con tus propias credenciales de Azure OpenAI.

Paso 2: Creación del script del chatbot

Crea un nuevo archivo llamado chatbot.py y copia el siguiente código:

import os
from dotenv import load_dotenv
from openai import AzureOpenAI

# Cargar variables de entorno desde el archivo .env
load_dotenv()

# Configurar las credenciales de Azure OpenAI
client = AzureOpenAI(
    api_key = os.getenv("AZURE_OPENAI_API_KEY"),
    api_version = "2023-05-15",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)

deployment_name = os.getenv("DEPLOYMENT_NAME")

def get_bot_response(prompt):
    response = client.chat.completions.create(
        model=deployment_name,
        messages=[
            {"role": "system", "content": "Eres un asistente útil."},
            {"role": "user", "content": prompt}
        ]
    )
    return response.choices[0].message.content

def main():
    print("¡Bienvenido al Chatbot! (Escribe 'salir' para terminar)")
    while True:
        user_input = input("Tú: ")
        if user_input.lower() == 'salir':
            print("¡Hasta luego!")
            break
        response = get_bot_response(user_input)
        print("Bot:", response)

if __name__ == "__main__":
    main()

Paso 3: Ejecutar el chatbot

  1. En la terminal, asegúrate de que estás en la carpeta del proyecto y que tu entorno virtual está activado.
  2. Ejecuta el script: python chatbot.py
  3. Interactúa con tu chatbot escribiendo mensajes en la consola. Escribe ‘salir’ para terminar la conversación.

Paso 4: Entendiendo el código

  • La función load_dotenv() carga las variables de entorno desde el archivo .env.
  • Creamos un cliente de Azure OpenAI usando las credenciales cargadas.
  • La función get_bot_response() envía el prompt del usuario a Azure OpenAI y obtiene una respuesta.
  • El bucle principal en main() maneja la interacción continua con el usuario.

Paso 5: Experimentación y mejoras

Prueba a modificar el código para:

  1. Cambiar el mensaje del sistema para darle una personalidad diferente al bot.
  2. Añadir manejo de errores para casos en los que la API no responda.
  3. Implementar un sistema simple de memoria para que el bot recuerde mensajes anteriores.

Consejos de seguridad:

  • Nunca compartas tu archivo .env o tus credenciales de API.
  • Añade .env a tu archivo .gitignore si estás usando control de versiones.
Posted in Sin categoría
Write a comment
© 2024 Todos los derechos reservados.
Email: anthony.quiranza@cloudsofts.net
Contáctame