File size: 3,000 Bytes
435fc15 17cff41 435fc15 17cff41 435fc15 17cff41 435fc15 17cff41 435fc15 17cff41 435fc15 17cff41 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# Descripción del Código:
1. Importación de Bibliotecas:
from huggingface_hub import InferenceClient
import gradio as gr
* InferenceClient: Se utiliza para realizar inferencias (generación de texto en este caso) con modelos alojados en Hugging Face Hub.
* gr (Gradio): Es una biblioteca que facilita la creación de interfaces de usuario para modelos de aprendizaje automático.
2. Inicialización del Cliente de Inferencia:
client = InferenceClient("mistralai/Mistral-7B-Instruct-v0.2")
* Se crea un cliente de inferencia para el modelo específico "Mistral-7B-Instruct-v0.2" alojado en Hugging Face Hub.
3. Función para Formatear el Prompt:
def format_prompt(message, history):
... (ver código para detalles)
* Esta función toma un mensaje, junto con la historia de conversación, y lo formatea adecuadamente para el modelo.
4. Función para Generar Texto:
def generate(prompt, history, system_prompt, temperature=0.9, max_new_tokens=256, top_p=0.95, repetition_penalty=1.0):
... (ver código para detalles)
* La función principal para generar texto. Toma varios parámetros, incluyendo el prompt del usuario, historial de conversación, temperatura, etc.
5. Definición de Inputs Adicionales:
additional_inputs = [
... (ver código para detalles)
]
* Se definen inputs adicionales para la interfaz Gradio. Estos permiten al usuario ajustar configuraciones como la temperatura, la longitud máxima del texto generado, etc.
6. Ejemplos para la Interfaz Gradio:
examples = [
... (ver código para detalles)
]
* Se proporcionan ejemplos que serán mostrados en la interfaz Gradio para ayudar a los usuarios a comenzar.
7. Creación de la Interfaz Gradio:
gr.ChatInterface(
fn=generate,
chatbot=gr.Chatbot(show_label=False, show_share_button=False, show_copy_button=True, likeable=True, layout="panel"),
additional_inputs=additional_inputs,
title="Mixtral 46.7B Fines didácticos",
description='Autor: ... (ver código para detalles)',
examples=examples,
concurrency_limit=20,
).launch(show_api=False)
* Se crea la interfaz Gradio para la función de generación de texto. Incluye la entrada del usuario, las inputs adicionales configuradas y otros elementos visuales.
# Inputs Adicionales en la Interfaz Gradio:
* System Prompt (Entrada de Texto): Permite al usuario ingresar un prompt del sistema para contextualizar la conversación.
* Temperature (Control Deslizante): Ajusta la "temperatura" del modelo, afectando la diversidad de las respuestas.
* Max New Tokens (Control Deslizante): Controla la longitud máxima del texto generado.
* Top-p (Nucleus Sampling) (Control Deslizante): Regula el muestreo de tokens basado en la probabilidad acumulativa.
* Repetition Penalty (Control Deslizante): Penaliza la repetición de tokens en el texto generado.
Estas inputs adicionales permiten a los usuarios personalizar la generación de texto según sus preferencias y necesidades. |