Spaces:
Running
Running
Update lunacode.py
Browse files- lunacode.py +11 -2
lunacode.py
CHANGED
@@ -15,16 +15,25 @@ model = AutoModelForCausalLM.from_pretrained(
|
|
15 |
).to("cuda" if torch.cuda.is_available() else "cpu")
|
16 |
|
17 |
def detect_mode(query):
|
|
|
|
|
|
|
18 |
code_keywords = ["code", "program", "python", "javascript", "function", "script", "build", "html", "css"]
|
19 |
creative_keywords = ["story", "write a story", "poem", "creative", "imagine", "novel", "dialogue"]
|
20 |
|
21 |
-
if any(kw in query
|
22 |
return "code"
|
23 |
-
elif any(kw in query
|
24 |
return "creative"
|
25 |
else:
|
26 |
return "general"
|
27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
def get_generation_params(query):
|
29 |
mode = detect_mode(query)
|
30 |
if mode == "code":
|
|
|
15 |
).to("cuda" if torch.cuda.is_available() else "cpu")
|
16 |
|
17 |
def detect_mode(query):
|
18 |
+
if not isinstance(query, str):
|
19 |
+
return "general"
|
20 |
+
query = query.lower()
|
21 |
code_keywords = ["code", "program", "python", "javascript", "function", "script", "build", "html", "css"]
|
22 |
creative_keywords = ["story", "write a story", "poem", "creative", "imagine", "novel", "dialogue"]
|
23 |
|
24 |
+
if any(kw in query for kw in code_keywords):
|
25 |
return "code"
|
26 |
+
elif any(kw in query for kw in creative_keywords):
|
27 |
return "creative"
|
28 |
else:
|
29 |
return "general"
|
30 |
|
31 |
+
def text_to_speech_luna(text):
|
32 |
+
tts = gTTS(text=text, lang="en")
|
33 |
+
filename = f"/tmp/luna_reply_{uuid.uuid4().hex}.mp3"
|
34 |
+
tts.save(filename)
|
35 |
+
return filename
|
36 |
+
|
37 |
def get_generation_params(query):
|
38 |
mode = detect_mode(query)
|
39 |
if mode == "code":
|