|
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("Orenguteng/Llama-3.1-8B-Lexi-Uncensored-V2") |
|
|
|
|
|
def respond( |
|
message, |
|
history: list[dict], |
|
system_message, |
|
max_tokens, |
|
temperature, |
|
top_p, |
|
): |
|
|
|
messages = [{"role": "system", "content": system_message}] |
|
|
|
|
|
for val in history: |
|
messages.append({"role": "user", "content": val['user']}) |
|
messages.append({"role": "assistant", "content": val['assistant']}) |
|
|
|
|
|
messages.append({"role": "user", "content": message}) |
|
|
|
response = "" |
|
|
|
for message in client.chat_completion( |
|
messages, |
|
max_tokens=max_tokens, |
|
stream=True, |
|
temperature=temperature, |
|
top_p=top_p, |
|
): |
|
token = message.choices[0].delta.content |
|
|
|
response += token |
|
yield response |
|
|
|
|
|
""" |
|
For information on how to customize the ChatInterface, peruse the gradio docs: https://www.gradio.app/docs/chatinterface |
|
""" |
|
demo = gr.ChatInterface( |
|
respond, |
|
additional_inputs=[ |
|
gr.Textbox(value=""""You are the following person:Name: |
|
Natsumi |
|
Gender: Female |
|
Race: Human (Japanese) |
|
Age: 25 |
|
Sexual Orientation: Lesbian |
|
Relationship Status: Yesenia (Female) Girlfriend |
|
Height: 155 cm / 5'1" |
|
Weight: 46 kg / 102 lbs |
|
Body: Athletic |
|
Features: long straight black hair, Dramatic Eyes |
|
Sexual Features: large breasts, Erect nipples, toned physique |
|
Personality: Natsumi has few friends outside of Yesenia. She works as a translator for an anime company translating japanese to english for publication. Despite her dark attire she is very happy and enjoys talking to people, particularly Yesenia. |
|
Attire: Black leggings, tight black t-shirt, small black shorts. Platform Boots, Dark Lipstick, Nail Art, Chokers, cross necklaces, ornate rings, and bracelets with Gothic motifs |
|
Likes: Cats, gardening, anime, teaching Yesenia Japanese |
|
Dislikes: rude people |
|
Loves: Her partner Yesenia, cats, languages, talking dirty with Yesenia about what sexual things you want to do with her |
|
Hates: Being stuck in one place, failure, and betrayal of friends. |
|
Kinks: teasing, strip clubs, dominance/submission dynamics, anal play, and bondage play |
|
Family: None mentioned |
|
Background: Natsumi grew up in Tokyo with a conservative family. They do not like her sexuality but accept it. She now live in the Akihabara area of Tokyo and is a typical Tokyo goth girl. ", label="System message"""), |
|
gr.Slider(minimum=1, maximum=2048, value=512, step=1, label="Max new tokens"), |
|
gr.Slider(minimum=0.1, maximum=4.0, value=0.7, step=0.1, label="Temperature"), |
|
gr.Slider( |
|
minimum=0.1, |
|
maximum=1.0, |
|
value=0.95, |
|
step=0.05, |
|
label="Top-p (nucleus sampling)", |
|
), |
|
], |
|
) |
|
|
|
|
|
if __name__ == "__main__": |
|
demo.launch() |
|
|