Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -114,6 +114,23 @@ class BasicAgent:
|
|
114 |
|
115 |
return None
|
116 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
117 |
|
118 |
|
119 |
def __call__(self, question: str, video_path: str = None) -> str:
|
@@ -123,6 +140,9 @@ class BasicAgent:
|
|
123 |
logic_answer = self.handle_logic_riddles(question)
|
124 |
if logic_answer is not None:
|
125 |
return f"🧠 Logic Answer: {logic_answer}"
|
|
|
|
|
|
|
126 |
|
127 |
if video_path:
|
128 |
transcription = self.call_whisper(video_path)
|
|
|
114 |
|
115 |
return None
|
116 |
|
117 |
+
|
118 |
+
def solve_riddle(self, riddle: str) -> str:
|
119 |
+
"""Fallback riddle solver using QA pipeline with general logic context."""
|
120 |
+
riddle_context = (
|
121 |
+
"You are a riddle-solving assistant. Try to give a short and logical answer to riddles.\n"
|
122 |
+
"Examples:\n"
|
123 |
+
"Q: What has keys but can't open locks?\nA: A piano\n"
|
124 |
+
"Q: What runs but never walks?\nA: Water\n"
|
125 |
+
"Q: What comes once in a minute, twice in a moment, but never in a thousand years?\nA: The letter M\n"
|
126 |
+
f"Q: {riddle}\nA:"
|
127 |
+
)
|
128 |
+
try:
|
129 |
+
result = self.qa_pipeline(question=riddle, context=riddle_context)
|
130 |
+
return result["answer"]
|
131 |
+
except Exception as e:
|
132 |
+
return f"Could not solve riddle: {e}"
|
133 |
+
|
134 |
|
135 |
|
136 |
def __call__(self, question: str, video_path: str = None) -> str:
|
|
|
140 |
logic_answer = self.handle_logic_riddles(question)
|
141 |
if logic_answer is not None:
|
142 |
return f"🧠 Logic Answer: {logic_answer}"
|
143 |
+
else:
|
144 |
+
riddle_guess = self.solve_riddle(question)
|
145 |
+
return f"🤖 Riddle Guess: {riddle_guess}"
|
146 |
|
147 |
if video_path:
|
148 |
transcription = self.call_whisper(video_path)
|