Raiff1982 commited on
Commit
e3dc1e5
Β·
verified Β·
1 Parent(s): b44ec76

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -17
app.py CHANGED
@@ -2,6 +2,7 @@ import gradio as gr
2
  import tempfile
3
  import imageio
4
  import torch
 
5
  from transformers import pipeline
6
  from diffusers import DiffusionPipeline
7
 
@@ -75,7 +76,7 @@ def codette_terminal(prompt, model_name, generate_image, generate_video, session
75
  yield f"[Text generation error]: {e}", None, None
76
  return
77
 
78
- # Stream the output character by character
79
  response_so_far = ""
80
  for char in output:
81
  response_so_far += char
@@ -83,14 +84,12 @@ def codette_terminal(prompt, model_name, generate_image, generate_video, session
83
  temp_log.append(f"πŸ–‹οΈ You > {prompt}")
84
  temp_log.append(f"🧠 Codette > {response_so_far}")
85
  yield "\n".join(temp_log[-10:]), None, None
86
- import time
87
  time.sleep(0.01)
88
 
89
  # Finalize chat memory
90
  chat_memory[session_id].append(f"πŸ–‹οΈ You > {prompt}")
91
  chat_memory[session_id].append(f"🧠 Codette > {output}")
92
 
93
- # Image Generation
94
  imgs = None
95
  if generate_image and image_enabled:
96
  try:
@@ -99,7 +98,6 @@ def codette_terminal(prompt, model_name, generate_image, generate_video, session
99
  except Exception as e:
100
  response_so_far += f"\n[Image error]: {e}"
101
 
102
- # Video Generation
103
  vid = None
104
  if generate_video and video_enabled:
105
  try:
@@ -118,25 +116,31 @@ with gr.Blocks(title="🧬 Codette Terminal – Streamed AI Chat") as demo:
118
  gr.Markdown("## 🧬 Codette Terminal (Chat + Image + Video + Batch + NSFW OK)")
119
  gr.Markdown("Type a prompt, select your model, and configure generation options. Type `'exit'` to reset.")
120
 
121
- session_id = gr.Textbox(value="session_default", visible=False)
122
- model_dropdown = gr.Dropdown(choices=list(AVAILABLE_MODELS.keys()), value="GPT-2 (small, fast)", label="Language Model")
123
- generate_image_toggle = gr.Checkbox(label="Generate Image(s)?", value=False, interactive=image_enabled)
124
- generate_video_toggle = gr.Checkbox(label="Generate Video?", value=False, interactive=video_enabled)
125
- batch_size_slider = gr.Slider(label="Number of Images", minimum=1, maximum=4, step=1, value=1)
126
- video_steps_slider = gr.Slider(label="Video Inference Steps", minimum=10, maximum=100, step=10, value=50)
127
- fps_slider = gr.Slider(label="Video FPS", minimum=4, maximum=24, step=2, value=8)
 
 
 
 
 
 
128
  user_input = gr.Textbox(label="Your Prompt", placeholder="e.g. A robot dreaming on Mars", lines=1)
129
  output_text = gr.Textbox(label="Codette Output", lines=15, interactive=False)
130
- output_image = gr.Gallery(label="Generated Image(s)").style(grid=2)
131
  output_video = gr.Video(label="Generated Video")
132
 
133
  user_input.submit(
134
  codette_terminal,
135
- inputs=[user_input, model_dropdown, generate_image_toggle, generate_video_toggle, session_id, batch_size_slider, video_steps_slider, fps_slider],
136
- outputs=[output_text, output_image, output_video],
137
- concurrency_limit=1,
138
- queue=True,
139
- show_progress=True
140
  )
141
 
142
  # ---------- Launch ----------
 
2
  import tempfile
3
  import imageio
4
  import torch
5
+ import time
6
  from transformers import pipeline
7
  from diffusers import DiffusionPipeline
8
 
 
76
  yield f"[Text generation error]: {e}", None, None
77
  return
78
 
79
+ # Stream the output
80
  response_so_far = ""
81
  for char in output:
82
  response_so_far += char
 
84
  temp_log.append(f"πŸ–‹οΈ You > {prompt}")
85
  temp_log.append(f"🧠 Codette > {response_so_far}")
86
  yield "\n".join(temp_log[-10:]), None, None
 
87
  time.sleep(0.01)
88
 
89
  # Finalize chat memory
90
  chat_memory[session_id].append(f"πŸ–‹οΈ You > {prompt}")
91
  chat_memory[session_id].append(f"🧠 Codette > {output}")
92
 
 
93
  imgs = None
94
  if generate_image and image_enabled:
95
  try:
 
98
  except Exception as e:
99
  response_so_far += f"\n[Image error]: {e}"
100
 
 
101
  vid = None
102
  if generate_video and video_enabled:
103
  try:
 
116
  gr.Markdown("## 🧬 Codette Terminal (Chat + Image + Video + Batch + NSFW OK)")
117
  gr.Markdown("Type a prompt, select your model, and configure generation options. Type `'exit'` to reset.")
118
 
119
+ with gr.Row():
120
+ session_id = gr.Textbox(value="session_default", visible=False)
121
+ model_dropdown = gr.Dropdown(choices=list(AVAILABLE_MODELS.keys()), value="GPT-2 (small, fast)", label="Language Model")
122
+
123
+ with gr.Row():
124
+ generate_image_toggle = gr.Checkbox(label="Generate Image(s)?", value=False, interactive=image_enabled)
125
+ generate_video_toggle = gr.Checkbox(label="Generate Video?", value=False, interactive=video_enabled)
126
+
127
+ with gr.Row():
128
+ batch_size_slider = gr.Slider(label="Number of Images", minimum=1, maximum=4, step=1, value=1)
129
+ video_steps_slider = gr.Slider(label="Video Inference Steps", minimum=10, maximum=100, step=10, value=50)
130
+ fps_slider = gr.Slider(label="Video FPS", minimum=4, maximum=24, step=2, value=8)
131
+
132
  user_input = gr.Textbox(label="Your Prompt", placeholder="e.g. A robot dreaming on Mars", lines=1)
133
  output_text = gr.Textbox(label="Codette Output", lines=15, interactive=False)
134
+ output_image = gr.Gallery(label="Generated Image(s)", columns=2)
135
  output_video = gr.Video(label="Generated Video")
136
 
137
  user_input.submit(
138
  codette_terminal,
139
+ inputs=[
140
+ user_input, model_dropdown, generate_image_toggle, generate_video_toggle,
141
+ session_id, batch_size_slider, video_steps_slider, fps_slider
142
+ ],
143
+ outputs=[output_text, output_image, output_video]
144
  )
145
 
146
  # ---------- Launch ----------