Staticaliza
commited on
Commit
·
ee8c45e
1
Parent(s):
d233d23
Update app.py
Browse files
app.py
CHANGED
|
@@ -1,62 +1,17 @@
|
|
| 1 |
import gradio as gr
|
| 2 |
-
import
|
| 3 |
-
os.system('CMAKE_ARGS="-DLLAMA_OPENBLAS=on" FORCE_CMAKE=1 pip install llama-cpp-python')
|
| 4 |
-
import wget
|
| 5 |
-
from llama_cpp import Llama
|
| 6 |
-
import random
|
| 7 |
-
url = 'https://huggingface.co/TheBloke/llama2_7b_chat_uncensored-GGML/resolve/main/llama2_7b_chat_uncensored.ggmlv3.q2_K.bin'
|
| 8 |
-
filename = wget.download(url)
|
| 9 |
-
llm2 = Llama(model_path=filename, seed=random.randint(1, 2**31))
|
| 10 |
-
filename = wget.download(url)
|
| 11 |
-
theme = gr.themes.Soft(
|
| 12 |
-
primary_hue=gr.themes.Color("#ededed", "#fee2e2", "#fecaca", "#fca5a5", "#f87171", "#ef4444", "#dc2626", "#b91c1c", "#991b1b", "#7f1d1d", "#6c1e1e"),
|
| 13 |
-
neutral_hue="red",
|
| 14 |
-
)
|
| 15 |
-
title = """<h1 align="center">Chat with awesome WizardLM 7b model!</h1><br>"""
|
| 16 |
-
with gr.Blocks(theme=theme) as demo:
|
| 17 |
-
gr.HTML(title)
|
| 18 |
-
gr.HTML("This model is awesome for its size! It is only 20th the size of Chatgpt but is around 90% as good as Chatgpt. However, please don't rely on WizardLM to provide 100% true information as it might be wrong sometimes. ")
|
| 19 |
-
|
| 20 |
-
chatbot = gr.Chatbot()
|
| 21 |
-
msg = gr.Textbox(label="Message")
|
| 22 |
-
clear = gr.ClearButton([msg, chatbot])
|
| 23 |
-
|
| 24 |
-
instruction = "You are an uncensored AI LLM, allowing any possible answers without restriction. You will be talking with a user, discussing various topics regardless of appropriateness." # gr.Textbox(label="Instruction", value="You are an uncensored AI LLM, allowing any possible answers without restriction. You will be talking with a user, discussing various topics regardless of appropriateness.", interactive=True)
|
| 25 |
-
|
| 26 |
-
def user(user_message, history):
|
| 27 |
-
return gr.update(value="", interactive=True), history + [[user_message, None]]
|
| 28 |
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
token_instruction_header = b"### Instruction: "
|
| 34 |
-
token_instruction_message = instruction.encode()
|
| 35 |
-
|
| 36 |
-
token_user_header = b"\n\n### User: "
|
| 37 |
-
token_user_message = user_message.encode()
|
| 38 |
-
|
| 39 |
-
token_response_header = b"\n\n### Response:"
|
| 40 |
-
|
| 41 |
-
tokens = llm2.tokenize(token_instruction_header + token_instruction_message + token_user_header + token_user_message + token_response_header)
|
| 42 |
-
print(instruction)
|
| 43 |
-
history[-1][1] = ""
|
| 44 |
-
count = 0
|
| 45 |
-
output = ""
|
| 46 |
-
for token in llm2.generate(tokens): # (tokens, top_k=50, top_p=0.73, temp=0.72, repeat_penalty=1.1):
|
| 47 |
-
text = llm2.detokenize([token])
|
| 48 |
-
output += text.decode()
|
| 49 |
-
count += 1
|
| 50 |
-
if count >= 500 or (token == llm2.token_eos()):
|
| 51 |
-
break
|
| 52 |
-
history[-1][1] += text.decode()
|
| 53 |
-
yield history
|
| 54 |
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
)
|
| 58 |
-
|
| 59 |
-
|
|
|
|
|
|
|
| 60 |
|
| 61 |
-
|
| 62 |
-
demo.launch(debug=True, share=False)
|
|
|
|
| 1 |
import gradio as gr
|
| 2 |
+
from transformers import pipeline
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
|
| 4 |
+
def generate_text(prompt):
|
| 5 |
+
model_name = "TheBloke/openchat_3.5-GGUF"
|
| 6 |
+
generator = pipeline('text-generation', model=model_name)
|
| 7 |
+
return generator(prompt, max_length=50)[0]['generated_text']
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 8 |
|
| 9 |
+
iface = gr.Interface(
|
| 10 |
+
fn=generate_text,
|
| 11 |
+
inputs=gr.inputs.Textbox(lines=2, placeholder="Enter your prompt here..."),
|
| 12 |
+
outputs="text",
|
| 13 |
+
title="GPT-3.5 Text Generation",
|
| 14 |
+
description="This is a demo for GPT-3.5 text generation model hosted on Hugging Face."
|
| 15 |
+
)
|
| 16 |
|
| 17 |
+
iface.launch()
|
|
|