Breaking

viernes, 5 de enero de 2024

¿Cómo programar inteligencia artificial?

Cómo programar un chatbot ? una guía paso a paso


Streamlit y google-generativeai

Para programar esta aplicación debemos tener instalado preferiblemente Python versión 3.11.3, Windows 10 o superior y Visual Studio Code vamos a seguir los siguientes pasos:
1. Creamos una clave en Google Cloud nos dirigimos a Google Api Key
2. Abrimos una terminal de DOS Creamos nuestra Carpeta de Trabajo en C o en su unidad de preferencia.
C:\MKDIR CHATBOT
Programacion de inteligencia artificial
3. Ingresamos a la carpeta creada
4. Creamos el siguiente entorno virtual
C:\CHATBOT\>python -m venv mi_entorno
5. Ingresamos a la carpeta Scripts y activamos el entorno virtual
C:\CHATBOT\>cd mi_entorno\Scripts
C:\CHATBOT\mi_entorno\Scripts\>activate
6. Creamos un archivo llamado chat.py en la carpeta CHATBOT
7. Descargamos el archivo requirements.txt y guardamos en la carpeta CHATBOT
8. Instalamos las librerías necesarias para correr el Chatbot
pip install -r streamlit google-generativeai python-dotenv python-decouple

import streamlit as st import google.generativeai as genai from decouple import config from PIL import Image # Configuración de la página st.set_page_config(page_title="Tecnología infinita", page_icon="♾") # Slider y cálculo del cuadrado x = st.slider('Seleccione un valor') st.write(x, 'El cuadrado es:', x * x) # Configuración de la API de Google google_api_key = config('GOOGLE_API_KEY') genai.configure(api_key=google_api_key) # Título y bienvenida st.title("Programa de Inteligencia Artificial usando google-generativeai ") st.write("Bienvenido a Tecnología infinita. Usted puede preguntar al ChatBoot") # Sidebar para elegir modelo with st.sidebar: option = st.selectbox('Escoja su Modelo', ('gemini-pro', 'gemini-pro-vision')) if 'model' not in st.session_state or st.session_state.model != option: st.session_state.chat = genai.GenerativeModel(option).start_chat(history=[]) st.session_state.model = option # Parámetros de generación st.write("Ajuste sus parametros aqui:") temperature = st.number_input("Temperatura", min_value=0.0, max_value=1.0, value=0.5, step=0.01) max_token = st.number_input("Maxima Salida Token", min_value=0, value=100) gen_config = genai.types.GenerationConfig(max_output_tokens=max_token, temperature=temperature) # Enlaces de contacto st.markdown("""Contacteme""",unsafe_allow_html=True) "[Linkedin](https://www.linkedin.com/in/osmer-eduardo-ruiz-mateus-8a3965203/)" "[GitHub](https://github.com/osmergit)" st.divider() # Carga de imagen y limpieza del chat upload_image = st.file_uploader("Suba una imagen aqui", accept_multiple_files=False, type=['jpg', 'png']) if upload_image: image = Image.open(upload_image) st.divider() if st.button("Limpiar Chat"): st.session_state.messages.clear() st.session_state["messages"] = [{"role": "assistant", "content": "Hola en que puedo Ayudarlo digite su pregunta por favor?"}] if "messages" not in st.session_state: st.session_state["messages"] = [{"role": "assistant", "content": "Hola en que puedo Ayudarlo digite su pregunta por favor?"}] for msg in st.session_state.messages: st.write(msg)


10. Ejecutamos el código en una terminal de DOS
11. Ingresamos a la consola de google cloud y consultamos nuestro proyecto
12. Cerramos la aplicación y la volvemos a abrir para verificar su funcionamiento
Corremos la aplicación con el siguiente comando y listo pueden abrir su explorador preferido y mirar su programa de Chatbot corriendo. Si te funcionó, regálame un like y déjame un comentario.

Este es el link de mi aplicación ya corriendo CHATBOT.

También pueden subir una foto y hacer preguntas respecto a la foto que suban. Deben cambiar en el menú el modelo parte izquierda superior y escogen el modelo gemini-pro-vision para las imágenes; el otro modelo gemini-pro es para solo texto.

Generador de imagenes con Google-generativeai

Google-generativeai

13. Listo ya tenemos nuestro chatbot funcionando

Conclusión:

La programación de un chatbot puede parecer compleja, pero con los pasos adecuados y las herramientas correctas, como Streamlit y google-generativeai, podemos crear un chatbot funcional para diversos propósitos.

No hay comentarios: