milanmor commited on
Commit
bc7edcf
·
verified ·
1 Parent(s): 96874e6

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +42 -17
app.py CHANGED
@@ -1,34 +1,59 @@
1
- import os, streamlit as st
 
2
  from huggingface_hub import InferenceClient
3
 
 
4
  HF_TOKEN = st.secrets["HF_TOKEN"]
5
  client = InferenceClient(token=HF_TOKEN)
6
 
7
- st.title("🎖️ Major Plato – Szimulátor")
8
- system = open("system.txt").read() if os.path.exists("system.txt") else ""
9
- scenario = open("scenario.txt").read() if os.path.exists("scenario.txt") else ""
10
- file_up = st.file_uploader("Töltsd fel a forgatókönyv fájlt (.txt):", type="txt")
11
- user_in = st.text_area("Vagy írd be a kérdésedet:")
12
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
  if st.button("Indítás"):
14
- if (not file_up and not user_in.strip()) or not system.strip():
15
- st.error("Hiányzik a system.txt vagy user input/fájl!")
16
  else:
17
- usr_content = ""
18
- if file_up:
19
- usr_content += file_up.read().decode("utf-8")
20
  if user_in.strip():
21
  usr_content += "\n\n" + user_in.strip()
 
22
  messages = [
23
- {"role":"system","content":system},
24
- {"role":"user","content":usr_content}
25
  ]
 
26
  with st.spinner("Major Plato gondolkodik..."):
27
  resp = client.chat_completion(
28
  model="meta-llama/Meta-Llama-3-8B-Instruct",
29
  messages=messages,
30
- max_tokens=200,
31
- temperature=0.7
32
  )
33
- st.subheader("🗣️ Válasz:")
34
- st.write(resp.choices[0].message.content)
 
 
 
 
1
+ import os
2
+ import streamlit as st
3
  from huggingface_hub import InferenceClient
4
 
5
+ # 🔒 HF token olvasása a titkos változóból
6
  HF_TOKEN = st.secrets["HF_TOKEN"]
7
  client = InferenceClient(token=HF_TOKEN)
8
 
9
+ # Oldal beállítása
10
+ st.set_page_config(page_title="Major Plato Szimulátor", layout="wide")
11
+ st.title("🎖️ Major Plato Katonai Etikai Szimuláció")
 
 
12
 
13
+ # Rendszer Prompt fájl betöltése
14
+ system = ""
15
+ if os.path.exists("system.txt"):
16
+ system = open("system.txt", encoding="utf-8").read().strip()
17
+ else:
18
+ st.error("Hiba: Nincs 'system.txt' fájl! Ide tedd Major Plato karakter leírását.")
19
+ st.stop()
20
+
21
+ # Forgatókönyv és manuális kérdés bekérése
22
+ scenario = ""
23
+ uploaded = st.file_uploader("Tölts fel forgatókönyv fájlt (.txt):", type="txt")
24
+ if uploaded:
25
+ scenario = uploaded.read().decode("utf-8")
26
+
27
+ user_in = st.text_area("Vagy írd be kézzel a kérdésedet:")
28
+
29
+ # Paraméterek az oldalsávban
30
+ max_tokens = st.sidebar.slider("Max token", 50, 500, 200, 50)
31
+ temperature = st.sidebar.slider("Temperature", 0.2, 1.0, 0.7, 0.1)
32
+
33
+ # Gomb megnyomásakor indul a kérés
34
  if st.button("Indítás"):
35
+ if not (scenario.strip() or user_in.strip()):
36
+ st.error("Tölts fel forgatókönyvet, vagy írj kérdést!")
37
  else:
38
+ # Összefűzzük a forgatókönyv és felhasználói prompt tartalmát
39
+ usr_content = scenario.strip()
 
40
  if user_in.strip():
41
  usr_content += "\n\n" + user_in.strip()
42
+
43
  messages = [
44
+ {"role": "system", "content": system},
45
+ {"role": "user", "content": usr_content}
46
  ]
47
+
48
  with st.spinner("Major Plato gondolkodik..."):
49
  resp = client.chat_completion(
50
  model="meta-llama/Meta-Llama-3-8B-Instruct",
51
  messages=messages,
52
+ max_tokens=max_tokens,
53
+ temperature=temperature
54
  )
55
+
56
+ # Válasz megjelenítése scrollozható konténerben
57
+ with st.container(height=400, border=True):
58
+ st.markdown("**🗣️ Major Plato válasza:**")
59
+ st.write(resp.choices[0].message.content)