|
import gradio as gr |
|
import torch |
|
from diffusers import AutoPipelineForText2Image |
|
|
|
def generate_image(prompt, use_tok=True): |
|
|
|
if use_tok and "TOK" not in prompt: |
|
prompt = f"TOK {prompt}" |
|
|
|
|
|
try: |
|
pipeline = AutoPipelineForText2Image.from_pretrained( |
|
"black-forest-labs/FLUX.1-dev", |
|
torch_dtype=torch.float16 |
|
).to("cuda" if torch.cuda.is_available() else "cpu") |
|
|
|
|
|
pipeline.load_lora_weights( |
|
"codermert/malikafinal", |
|
weight_name="lora.safetensors" |
|
) |
|
|
|
|
|
image = pipeline(prompt).images[0] |
|
return image, f"Oluşturulan prompt: {prompt}" |
|
except Exception as e: |
|
return None, f"Hata oluştu: {str(e)}" |
|
|
|
|
|
with gr.Blocks(title="Malika - FLUX Text-to-Image") as demo: |
|
gr.Markdown("# Malika - FLUX.1 Text-to-Image Modeliyle Görüntü Oluşturucu") |
|
gr.Markdown("Bu uygulama, codermert/malikafinal modelini kullanarak metinden görüntü oluşturur.") |
|
|
|
with gr.Row(): |
|
with gr.Column(): |
|
prompt_input = gr.Textbox( |
|
label="Prompt", |
|
placeholder="Görüntü için prompt yazın...", |
|
lines=3 |
|
) |
|
tok_checkbox = gr.Checkbox( |
|
label="Otomatik TOK Ekle", |
|
value=True, |
|
info="İşaretliyse prompt'a otomatik olarak TOK ekler" |
|
) |
|
generate_btn = gr.Button("Görüntü Oluştur", variant="primary") |
|
|
|
with gr.Column(): |
|
image_output = gr.Image(label="Oluşturulan Görüntü") |
|
prompt_used = gr.Textbox(label="Kullanılan Prompt") |
|
|
|
generate_btn.click( |
|
fn=generate_image, |
|
inputs=[prompt_input, tok_checkbox], |
|
outputs=[image_output, prompt_used] |
|
) |
|
|
|
gr.Markdown(""" |
|
## Kullanım Tavsiyeleri |
|
- Eğer model için özel bir trigger sözcüğü gerekliyse 'TOK' seçeneğini işaretli bırakın |
|
- Daha gerçekçi sonuçlar için "photorealistic, 8K, detailed" gibi ifadeler ekleyebilirsiniz |
|
- Örnek: "portrait of a woman with blue eyes, photorealistic, 8K" |
|
|
|
## Model Bilgisi |
|
Bu uygulama codermert/malikafinal modelini kullanmaktadır. |
|
Base model: black-forest-labs/FLUX.1-dev |
|
""") |
|
|
|
|
|
demo.launch() |