import gradio as gr
import urllib.request
import json
def respond(message, history):
messages = [{"role": "system", "content": "Ti si Neca-AI, koristan i pametan asistent koji uvek odgovara na srpskom jeziku."}]
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})
url = "https://api-inference.huggingface.co/models/Qwen/Qwen2.5-Coder-32B-Instruct/v1/chat/completions"
data = json.dumps({"messages": messages, "max_tokens": 512}).encode("utf-8")
req = urllib.request.Request(url, data=data, headers={"Content-Type": "application/json"})
try:
with urllib.request.urlopen(req) as response:
res = json.loads(response.read().decode("utf-8"))
return res["choices"][0]["message"]["content"]
except Exception as e:
return f"Greška: {str(e)}"
gr.ChatInterface(respond, title="Neca-AI").launch()