Spaces:
Sleeping
Sleeping
| # coding=utf-8 | |
| # | |
| # Copyright 2024 Toshihiko Aoki | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, software | |
| # distributed under the License is distributed on an "AS IS" BASIS, | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| # See the License for the specific language governing permissions and | |
| # limitations under the License. | |
| import torch | |
| from diffusers import AutoPipelineForText2Image, LCMScheduler | |
| from llama_cpp import Llama | |
| import gradio as gr | |
| width = 512 | |
| height = 512 | |
| num_inference_steps = 4 | |
| guidance_scale = 1.0 | |
| from openvino_pipe import LatentConsistencyEngine | |
| pipe = LatentConsistencyEngine( | |
| "sd-1.5-lcm-openvino" | |
| ) | |
| llm = Llama( | |
| model_path="llm-jp-1.3b-v1.0_staircaptions-FT_Q2_K.gguf", | |
| ) | |
| def ja2prompt(ja_prompt): | |
| response = llm(f"### Instruction:\n{ja_prompt}\n### Response:\n", max_tokens=128) | |
| return response['choices'][0]['text'] | |
| def prompt2img(sd_prompt): | |
| return pipe( | |
| sd_prompt, | |
| num_inference_steps=num_inference_steps, | |
| guidance_scale=1.0, | |
| ).images[0] | |
| with gr.Blocks(title="tiny sd web-ui") as demo: | |
| gr.Markdown(f"## Japanese translation and hallucinations for Stable Diffusion") | |
| with gr.Row(): | |
| with gr.Column(scale=3): | |
| ja = gr.Text(label="ζ₯ζ¬θͺ") | |
| translate = gr.Button("ε€ζ") | |
| prompt = gr.Text(label="γγγ³γγ") | |
| with gr.Column(scale=2): | |
| result = gr.Image() | |
| t2i = gr.Button("ηζ") | |
| translate.click(ja2prompt, ja, prompt) | |
| t2i.click(prompt2img, prompt, result) | |
| demo.launch() | |