Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -21,7 +21,7 @@ MODEL_OPTIONS = [
|
|
21 |
"liquid/lfm-40b:free"
|
22 |
]
|
23 |
|
24 |
-
def generate_text(input_text, selected_model):
|
25 |
response = requests.post(
|
26 |
url="https://openrouter.ai/api/v1/chat/completions",
|
27 |
headers={
|
@@ -42,14 +42,19 @@ def generate_text(input_text, selected_model):
|
|
42 |
|
43 |
# Handle errors
|
44 |
if response.status_code != 200:
|
45 |
-
return f"Error: {response.status_code}, {response.text}"
|
46 |
|
47 |
# Parse and return the content of the response
|
48 |
try:
|
49 |
response_json = response.json()
|
50 |
-
|
51 |
except json.JSONDecodeError:
|
52 |
-
|
|
|
|
|
|
|
|
|
|
|
53 |
|
54 |
# Define the Gradio layout using Blocks
|
55 |
with gr.Blocks() as iface:
|
@@ -73,7 +78,7 @@ with gr.Blocks() as iface:
|
|
73 |
|
74 |
# Trigger the function when the user inputs text
|
75 |
generate_button = gr.Button("Generate")
|
76 |
-
generate_button.click(generate_text, inputs=[input_text, selected_model], outputs=[output_response, output_history])
|
77 |
|
78 |
# Launch the interface
|
79 |
iface.launch()
|
|
|
21 |
"liquid/lfm-40b:free"
|
22 |
]
|
23 |
|
24 |
+
def generate_text(input_text, selected_model, history):
|
25 |
response = requests.post(
|
26 |
url="https://openrouter.ai/api/v1/chat/completions",
|
27 |
headers={
|
|
|
42 |
|
43 |
# Handle errors
|
44 |
if response.status_code != 200:
|
45 |
+
return f"Error: {response.status_code}, {response.text}", history
|
46 |
|
47 |
# Parse and return the content of the response
|
48 |
try:
|
49 |
response_json = response.json()
|
50 |
+
generated_response = response_json.get("choices", [{}])[0].get("message", {}).get("content", "No content returned.")
|
51 |
except json.JSONDecodeError:
|
52 |
+
generated_response = "Error: Unable to parse response."
|
53 |
+
|
54 |
+
# Append the new interaction to the history
|
55 |
+
history += f"User: {input_text}\nResponse: {generated_response}\n"
|
56 |
+
|
57 |
+
return generated_response, history
|
58 |
|
59 |
# Define the Gradio layout using Blocks
|
60 |
with gr.Blocks() as iface:
|
|
|
78 |
|
79 |
# Trigger the function when the user inputs text
|
80 |
generate_button = gr.Button("Generate")
|
81 |
+
generate_button.click(generate_text, inputs=[input_text, selected_model, gr.State()], outputs=[output_response, output_history])
|
82 |
|
83 |
# Launch the interface
|
84 |
iface.launch()
|