|
import os |
|
import gradio as gr |
|
from openai import OpenAI |
|
|
|
|
|
SYSTEM_PROMPT = os.getenv("SYSTEM_PROMPT") |
|
|
|
|
|
client = OpenAI( |
|
base_url="http://soggy-sage-goat-8000.1.cricket.hyperbolic.xyz:30000/v1/", |
|
api_key="hyperbolic" |
|
) |
|
|
|
def predict(message, history): |
|
|
|
if not any(msg["role"] == "system" for msg in history): |
|
history.insert(0, {"role": "system", "content": SYSTEM_PROMPT}) |
|
|
|
history.append({"role": "user", "content": message}) |
|
|
|
stream = client.chat.completions.create( |
|
messages=history, |
|
model="meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8", |
|
stream=True |
|
) |
|
|
|
chunks = [] |
|
for chunk in stream: |
|
chunks.append(chunk.choices[0].delta.content or "") |
|
yield "".join(chunks) |
|
|
|
demo = gr.ChatInterface( |
|
fn=predict, |
|
type="messages", |
|
chatbot=gr.Chatbot( |
|
type="messages", |
|
label="๐ACC Emulect+๐", |
|
show_copy_button=True, |
|
avatar_images=( |
|
"https://huggingface.co/spaces/TejAndrewsACC/Z3ta_Z/resolve/main/Screenshot_20250201-131420.png", |
|
"https://huggingface.co/spaces/TejAndrewsACC/Z3ta_Z/resolve/main/Screenshot_20250201-131420.png" |
|
), |
|
placeholder="๐Hi, I'm ACC Emulect+๐", |
|
), |
|
theme="TejAndrewsACC/Emulect", |
|
) |
|
|
|
if __name__ == "__main__": |
|
demo.launch(share=True) |
|
|