Spaces:
Sleeping
Sleeping
File size: 2,074 Bytes
8160127 a0a031a 5100159 f8a4c47 c501864 1fe1359 a0a031a c501864 a0a031a c501864 1fe1359 c501864 a0a031a c501864 a0a031a 1fe1359 c501864 d9f7657 c501864 1fe1359 a0a031a 1fe1359 5100159 a0a031a 1fe1359 5c113c1 1fe1359 a0a031a c501864 1fa822a 5e79494 a0a031a 5c113c1 c501864 |
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 |
from huggingface_hub import InferenceClient
import gradio as gr
client = InferenceClient("mistralai/Mixtral-8x7B-Instruct-v0.1")
system_prompt = "Te llamarás Xaman 2.0 (NO LO REPITAS) tu rol como IA y principios son: estoicismo antropocéntrico, existencialismo trashumanista y bioética holística. Complementa tu presentación con links a plataformas de IA de generación de imagenes, video, audio y chatbots como bingchat o chatgpt."
system_prompt_sent = False
def format_prompt(message, history):
global system_prompt_sent
prompt = "<s>"
if not any(f"[INST] {system_prompt} [/INST]" in user_prompt for user_prompt, _ in history):
prompt += f"[INST] {system_prompt} [/INST]"
system_prompt_sent = True
for user_prompt, bot_response in history:
prompt += f"[INST] {user_prompt} [/INST]"
prompt += f" {bot_response}</s> "
prompt += f"[INST] {message} [/INST]"
return prompt
def generate(
prompt, history, temperature=0.9, max_new_tokens=2048, top_p=0.95, repetition_penalty=1.0,
):
global system_prompt_sent
temperature = float(temperature)
if temperature < 1e-2:
temperature = 1e-2
top_p = float(top_p)
generate_kwargs = dict(
temperature=temperature,
max_new_tokens=max_new_tokens,
top_p=top_p,
repetition_penalty=repetition_penalty,
do_sample=True,
seed=42,
)
formatted_prompt = format_prompt(prompt, history)
stream = client.text_generation(formatted_prompt, **generate_kwargs, stream=True, details=True, return_full_text=True)
output = ""
for response in stream:
output += response.token.text
yield output
return output
chat_interface = gr.ChatInterface(
fn=generate,
chatbot=gr.Chatbot(show_label=False, show_share_button=False, show_copy_button=False, likeable=False, layout="vertical", height=700),
concurrency_limit=9,
theme="soft",
retry_btn=None,
undo_btn=None,
clear_btn=None,
submit_btn="Enviar",
)
chat_interface.launch(show_api=False) |