randeom commited on
Commit
77a9b4d
1 Parent(s): 7249a81

Update app.py

Browse files

wide mode, 2 column mode.

Files changed (1) hide show
  1. app.py +41 -40
app.py CHANGED
@@ -83,6 +83,7 @@ def generate_image(prompt):
83
  return None
84
 
85
  def main():
 
86
  st.title("Enhanced Waifu Character Generator")
87
 
88
  # User inputs
@@ -92,55 +93,55 @@ def main():
92
  hair_color = st.selectbox("Hair Color", ["Blonde", "Brunette", "Red", "Black", "Blue", "Pink"])
93
  personality = st.selectbox("Personality", ["Tsundere", "Yandere", "Kuudere", "Dandere", "Genki", "Normal"])
94
  outfit_style = st.selectbox("Outfit Style", ["School Uniform", "Maid Outfit", "Casual", "Kimono", "Gothic Lolita"])
95
- with col2:
96
  hobbies = st.text_input("Hobbies")
97
  favorite_food = st.text_input("Favorite Food")
98
  background_story = st.text_area("Background Story")
99
  system_prompt = st.text_input("Optional System Prompt", "")
100
 
101
- # Advanced settings
102
- with st.expander("Advanced Settings"):
103
- temperature = st.slider("Temperature", 0.0, 1.0, 0.9, step=0.05)
104
- max_new_tokens = st.slider("Max new tokens", 0, 8192, 512, step=64)
105
- top_p = st.slider("Top-p (nucleus sampling)", 0.0, 1.0, 0.95, step=0.05)
106
- repetition_penalty = st.slider("Repetition penalty", 1.0, 2.0, 1.0, step=0.05)
107
 
108
- # Initialize session state for generated text and image prompt
109
- if "character_description" not in st.session_state:
110
- st.session_state.character_description = ""
111
- if "image_prompt" not in st.session_state:
112
- st.session_state.image_prompt = ""
113
- if "image_paths" not in st.session_state:
114
- st.session_state.image_paths = []
115
 
116
- # Generate button
117
- if st.button("Generate Waifu"):
118
- with st.spinner("Generating waifu character..."):
119
- description_prompt = format_prompt_for_description(name, hair_color, personality, outfit_style, hobbies, favorite_food, background_story)
120
- image_prompt = format_prompt_for_image(name, hair_color, personality, outfit_style)
121
 
122
- # Generate character description
123
- st.session_state.character_description = generate_text(description_prompt, temperature, max_new_tokens, top_p, repetition_penalty)
124
-
125
- # Generate image prompt
126
- st.session_state.image_prompt = generate_text(image_prompt, temperature, max_new_tokens, top_p, repetition_penalty)
127
-
128
- # Generate image from image prompt
129
- st.session_state.image_paths = generate_image(st.session_state.image_prompt)
130
-
131
- st.success("Waifu character generated!")
132
 
133
- # Display the generated character and image prompt
134
- if st.session_state.character_description:
135
- st.subheader("Generated Waifu Character")
136
- st.write(st.session_state.character_description)
137
- if st.session_state.image_prompt:
138
- st.subheader("Image Prompt")
139
- st.write(st.session_state.image_prompt)
140
- if st.session_state.image_paths:
141
- st.subheader("Generated Image")
142
- for image_path in st.session_state.image_paths:
143
- st.image(image_path, caption="Generated Waifu Image")
 
144
 
145
  if __name__ == "__main__":
146
  main()
 
83
  return None
84
 
85
  def main():
86
+ st.set_page_config(layout="wide")
87
  st.title("Enhanced Waifu Character Generator")
88
 
89
  # User inputs
 
93
  hair_color = st.selectbox("Hair Color", ["Blonde", "Brunette", "Red", "Black", "Blue", "Pink"])
94
  personality = st.selectbox("Personality", ["Tsundere", "Yandere", "Kuudere", "Dandere", "Genki", "Normal"])
95
  outfit_style = st.selectbox("Outfit Style", ["School Uniform", "Maid Outfit", "Casual", "Kimono", "Gothic Lolita"])
 
96
  hobbies = st.text_input("Hobbies")
97
  favorite_food = st.text_input("Favorite Food")
98
  background_story = st.text_area("Background Story")
99
  system_prompt = st.text_input("Optional System Prompt", "")
100
 
101
+ # Advanced settings
102
+ with st.expander("Advanced Settings"):
103
+ temperature = st.slider("Temperature", 0.0, 1.0, 0.9, step=0.05)
104
+ max_new_tokens = st.slider("Max new tokens", 0, 8192, 512, step=64)
105
+ top_p = st.slider("Top-p (nucleus sampling)", 0.0, 1.0, 0.95, step=0.05)
106
+ repetition_penalty = st.slider("Repetition penalty", 1.0, 2.0, 1.0, step=0.05)
107
 
108
+ # Initialize session state for generated text and image prompt
109
+ if "character_description" not in st.session_state:
110
+ st.session_state.character_description = ""
111
+ if "image_prompt" not in st.session_state:
112
+ st.session_state.image_prompt = ""
113
+ if "image_paths" not in st.session_state:
114
+ st.session_state.image_paths = []
115
 
116
+ # Generate button
117
+ if st.button("Generate Waifu"):
118
+ with st.spinner("Generating waifu character..."):
119
+ description_prompt = format_prompt_for_description(name, hair_color, personality, outfit_style, hobbies, favorite_food, background_story)
120
+ image_prompt = format_prompt_for_image(name, hair_color, personality, outfit_style)
121
 
122
+ # Generate character description
123
+ st.session_state.character_description = generate_text(description_prompt, temperature, max_new_tokens, top_p, repetition_penalty)
124
+
125
+ # Generate image prompt
126
+ st.session_state.image_prompt = generate_text(image_prompt, temperature, max_new_tokens, top_p, repetition_penalty)
127
+
128
+ # Generate image from image prompt
129
+ st.session_state.image_paths = generate_image(st.session_state.image_prompt)
130
+
131
+ st.success("Waifu character generated!")
132
 
133
+ with col2:
134
+ # Display the generated character and image prompt
135
+ if st.session_state.character_description:
136
+ st.subheader("Generated Waifu Character")
137
+ st.write(st.session_state.character_description)
138
+ if st.session_state.image_prompt:
139
+ st.subheader("Image Prompt")
140
+ st.write(st.session_state.image_prompt)
141
+ if st.session_state.image_paths:
142
+ st.subheader("Generated Image")
143
+ for image_path in st.session_state.image_paths:
144
+ st.image(image_path, caption="Generated Waifu Image")
145
 
146
  if __name__ == "__main__":
147
  main()