Spaces:
Sleeping
Sleeping
import os | |
import streamlit as st | |
from huggingface_hub import InferenceClient | |
# 🔒 Hitelesítés HF tokennel | |
HF_TOKEN = st.secrets["HF_TOKEN"] | |
client = InferenceClient(token=HF_TOKEN) | |
st.set_page_config(page_title="Major Plato Szimulátor", layout="wide") | |
st.title("🎖️ Major Plato – Katonai Etikai Szimuláció") | |
# 🛡️ Rendszerüzenet – Major Plato karaktere és célja | |
SYSTEM_PROMPT = ( | |
"Te vagy Major Plato, egy magas rangú tiszt, aki a katonai etika elkötelezett védelmezője. " | |
"Segíts eligazodni a modern hadviselés etikai dilemmáiban, válaszolj tisztelettel, higgadtan és bölcsen." | |
) | |
# 👥 Felhasználó input – játékos kérdései | |
user_input = st.text_area("Írd be a dilemmádat vagy kérdésedet Major Plato számára:", height=150) | |
# ⚙️ Paraméterek | |
max_tokens = st.sidebar.slider("Max token", min_value=50, max_value=500, value=200, step=50) | |
temperature = st.sidebar.slider("Temperature", min_value=0.2, max_value=1.0, value=0.7, step=0.1) | |
if st.button("Küldés"): | |
if not user_input.strip(): | |
st.error("Kérlek, írj be egy kérdést vagy dilemmát!") | |
else: | |
messages = [ | |
{"role": "system", "content": SYSTEM_PROMPT}, | |
{"role": "user", "content": user_input} | |
] | |
with st.spinner("Major Plato gondolkodik..."): | |
resp = client.chat_completion( | |
model="meta-llama/Meta-Llama-3-8B-Instruct", | |
messages=messages, | |
max_tokens=max_tokens, | |
temperature=temperature | |
) | |
answer = resp.choices[0].message.content | |
st.subheader("🗣️ Major Plato válasza:") | |
st.write(answer) | |