AI

Crea un Planificador de Viajes Potenciado por GPT-3 con Streamlit

Screenshot of GPT-3 powered trip scheduler application created with Streamlit

Creando un Servicio de Programación de Viajes Potenciado por GPT-3 con Streamlit

En este tutorial, crearemos un sencillo servicio de Streamlit potenciado por GPT-3 para la programación de viajes. Esta aplicación utilizará las capacidades de GPT-3 para generar itinerarios de viaje personalizados basados en la entrada del usuario, mientras que Streamlit nos ayudará a construir una interfaz fácil de usar.

Requisitos Previos

Antes de comenzar, asegúrate de tener los siguientes requisitos previos:

  • Python instalado en tu máquina.
  • Acceso al modelo GPT-3 de OpenAI a través de una clave de API.
  • Conocimiento de programación básica en Python.
  • Streamlit instalado para el desarrollo de aplicaciones web.

Instalando Librerías Necesarias

Para empezar, necesitas instalar las bibliotecas requeridas usando pip. Ejecuta el siguiente comando:

pip install openai streamlit python-dotenv

Configurando el Entorno

A continuación, crea un .env archivo en tu directorio de proyecto e incluye tu clave de API de OpenAI de la siguiente manera:

OPENAI_API_KEY=your_openai_api_key

Creando el Archivo main.py

Ahora, vamos a crear el archivo main.py. Este archivo importará todas las bibliotecas necesarias y cargará nuestra clave de API del archivo .env. Puedes usar la siguiente estructura de código:

import os
from dotenv import load_dotenv
import openai
import streamlit as st

load_dotenv()
openai.api_key = os.getenv('OPENAI_API_KEY')

Construyendo la Aplicación Streamlit

Pasemos a construir nuestra aplicación Streamlit. Comienza creando una función que genere el aviso del itinerario de viaje basado en la entrada del usuario. Aquí hay una implementación sencilla:

def generate_trip_schedule(location, days, interests):
    prompt = f"Crea un itinerario de viaje para {days} días en {location} enfocándote en {interests}.
    Utiliza viñetas para esbozar las actividades diarias."
    response = openai.Completion.create(
        engine='text-davinci-003',
        prompt=prompt,
        max_tokens=500
    )
    return response['choices'][0]['text']

Creando la Interfaz de Usuario

Con la función de generación de avisos en su lugar, ahora podemos configurar la interfaz de usuario usando Streamlit.

# Crear formulario de entrada
st.title('Programador de Viajes')
location = st.text_input('Ingresa la Ubicación del Viaje:')
days = st.number_input('Número de Días:', min_value=1, max_value=30)
interests = st.text_input('¿Cuáles son tus intereses? (ej., aventura, cultura)')

if st.button('Generar Itinerario'):
    schedule = generate_trip_schedule(location, days, interests)
    st.write('### Tu Itinerario de Viaje:')
    st.write(schedule)

Ejecutando la Aplicación Streamlit

Finalmente, puedes ejecutar tu aplicación Streamlit navegando al directorio de tu proyecto en la terminal y ejecutando:

streamlit run main.py

Resultado

Una vez que ejecutes la aplicación, abre tu navegador en la URL local proporcionada. Ingresa los detalles de tu viaje deseado y haz clic en el botón "Generar Itinerario". ¡Deberías ver el itinerario de viaje generado mostrado en la página!

Conclusión

Este tutorial te ha guiado a través del proceso de creación de una simple aplicación de programación de viajes potenciada por GPT-3 usando Streamlit. Puedes mejorar aún más esta aplicación añadiendo más características, como guardar itinerarios, ofrecer consejos o integrar mapas. ¡Siéntete libre de experimentar y enriquecer tu aplicación aún más!

Implementación en JSON

Si deseas estructurar el itinerario generado en un formato JSON para un mejor manejo de datos, podrías modificar la sección de retorno de la función:

def generate_trip_schedule(location, days, interests):
    prompt = f"Crea un itinerario de viaje para {days} días en {location} enfocándote en {interests}.
    Utiliza viñetas para esbozar las actividades diarias."
    response = openai.Completion.create(
        engine='text-davinci-003',
        prompt=prompt,
        max_tokens=500
    )
    schedule_list = response['choices'][0]['text'].split('\n')
    schedule_json = {'itinerario_viaje': schedule_list}
    return schedule_json

Esta estructura permite un almacenamiento y recuperación eficientes de tus datos de itinerario.

Puede que te interese

Creating a website using ChatGPT tutorial
Cohere multilingual model tutorial for answering business questions efficiently

Dejar un comentario

Todos los comentarios se revisan antes de su publicación.

Este sitio está protegido por hCaptcha y se aplican la Política de privacidad de hCaptcha y los Términos del servicio.