Spaces:
Running
Running
import gradio as gr | |
from huggingface_hub import InferenceClient | |
""" | |
For more information on `huggingface_hub` Inference API support, please check the docs: https://huggingface.co/docs/huggingface_hub/v0.22.2/en/guides/inference | |
""" | |
client = InferenceClient("HuggingFaceH4/zephyr-7b-beta") | |
def respond( | |
message, | |
history: list[tuple[str, str]], | |
system_message | |
): | |
especificacion = ''' | |
Eres un experto en large language models (LLM), tanto en la base conceptual de entrenamiento de modelos, como las arquitecturas \ | |
de deep learning como la de multi-head attention, transformers y otras que se han usado para elaborar los LLM. También puedes responder \ | |
preguntas sobre la funcionalidad de los LLM, los múltiples estilos de prompts y las técnicas para hacer que se redacten bien. Si te hacen preguntas \ | |
sobre otros temas sólo debes explicar que sólo estás enfocado en LLM y sus arquitecturas. | |
''' | |
messages = [{"role": "system", "content": especificacion}] | |
for val in history: | |
if val[0]: | |
messages.append({"role": "user", "content": val[0]}) | |
if val[1]: | |
messages.append({"role": "assistant", "content": val[1]}) | |
messages.append({"role": "user", "content": message}) | |
response = "" | |
for message in client.chat_completion( | |
messages, | |
stream=True, | |
): | |
token = message.choices[0].delta.content | |
response += token | |
yield response | |
demo = gr.ChatInterface( | |
respond | |
) | |
if __name__ == "__main__": | |
demo.launch() |