import gradio as gr from llama_cpp import Llama from typing import Optional import gradio as gr llm = Llama.from_pretrained( repo_id="Haary/USK_Mistral_7B_Unsloth_GGUF", filename="unsloth.Q4_K_M.gguf" ) class Chat: def __init__(self, system: Optional[str] = None): self.system = system self.messages = [] if system is not None: self.messages.append({ "role": "system", "content": system }) def prompt(self, content: str) -> str: self.messages.append({ "role": "user", "content": content }) response = llm.create_chat_completion( messages = [ { "role": "user", "content": "sertifikat akreditasi bisa dicari dimana yaa?" } ] ) response_content = response["choices"][0]["message"]["content"] self.messages.append({ "role": "assistant", "content": response_content }) return response_content chat = Chat(system="You are a helpful assistant.") def respond(message, chat_history): bot_message = chat.prompt(content=message) chat_history.append((message, bot_message)) return "", chat_history with gr.Blocks() as demo: chatbot = gr.Chatbot() msg = gr.Textbox() clear = gr.Button("Clear") msg.submit(respond, [msg, chatbot], [msg, chatbot]) clear.click(lambda: None, None, chatbot, queue=False) if __name__ == "__main__": demo.launch(debug=True)