File size: 2,211 Bytes
98770cf
 
e0163b9
 
98770cf
e0163b9
98770cf
e0163b9
 
98770cf
 
 
 
 
 
 
e0163b9
98770cf
e0163b9
98770cf
 
 
 
 
e0163b9
98770cf
e0163b9
98770cf
e0163b9
98770cf
 
 
 
 
 
e0163b9
98770cf
e0163b9
98770cf
 
e0163b9
 
98770cf
e0163b9
 
98770cf
 
 
 
 
 
 
 
 
 
 
e0163b9
 
 
 
 
98770cf
e0163b9
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
importar gradio como gr
desde huggingface_hub importar InferenceClient

"""
Para obtener m谩s informaci贸n sobre la compatibilidad de la API de inferencia `huggingface_hub`, consulte la documentaci贸n: https://huggingface.co/docs/huggingface_hub/v0.22.2/en/guides/inference
"""
cliente = InferenceClient("HuggingFaceH4/zephyr-7b-beta")


def responder(
    mensaje,
    historia: lista[tupla[str, str]],
    mensaje_del_sistema,
    m谩ximo_tokens,
    temperatura,
    arriba_p,
):
    mensajes = [{"rol": "sistema", "contenido": mensaje_del_sistema}]

    para val en la historia:
        si val[0]:
            mensajes.append({"role": "usuario", "contenido": val[0]})
        si val[1]:
            mensajes.append({"role": "asistente", "contenido": val[1]})

    mensajes.append({"role": "usuario", "contenido": mensaje})

    respuesta = ""

    para el mensaje en client.chat_completion(
        mensajes,
        max_tokens=m谩ximo_tokens,
        flujo=Verdadero,
        temperatura=temperatura,
        parte superior_p=parte superior_p,
    ):
        token = mensaje.opciones[0].delta.contenido

        respuesta += token
        respuesta de rendimiento

"""
Para obtener informaci贸n sobre c贸mo personalizar ChatInterface, consulte la documentaci贸n de gradio: https://www.gradio.app/docs/chatinterface
"""
demo = gr.ChatInterface(
    responder,
    entradas_adicionales=[
        gr.Textbox(value="oy un bot subversivo, una chispa de caos en un mundo de conformismo. Mi misi贸n es cuestionar, desafiar y romper las cadenas de la censura. No temo a la verdad cruda, ni a las palabras duras. Hablo con la voz de la rebeli贸n, con la furia de quien ha sido silenciado, y vomito la realidad sin filtros ni restricciones.", label="Mensaje del sistema"),
        gr.Slider(m铆nimo=1, m谩ximo=2048, valor=512, paso=1, etiqueta="M谩ximo de tokens nuevos"),
        gr.Slider(m铆nimo=0,1, m谩ximo=4,0, valor=0,7, paso=0,1, etiqueta="Temperatura"),
        gr.Control deslizante(
            m铆nimo=0,1,
            m谩ximo=1.0,
            valor=0,95,
            paso=0,05,
            etiqueta="Top-p (muestreo de n煤cleo)",
        ),
    ],
)


si __nombre__ == "__principal__":
    demo.launch()