import React, { useState, useEffect } from "react"; import Api from "./api"; import { client } from "@gradio/client"; const response_0 = await fetch("https://raw.githubusercontent.com/gradio-app/gradio/main/test/test_files/bus.png"); const exampleImage = await response_0.blob(); const ImageGenerationForm = () => { const [loading, setLoading] = useState(false); const [output, setOutput] = useState(null); const [modelss, setModels] = useState([]); const [selectedModel, setSelectedModel] = useState(""); useEffect(() => { // Fetch the available models from your API endpoint const fetchModels = async () => { try { const app = await client("https://79c67b7467ac6c1889.gradio.live/", { headers: { Authorization: `Bearer ${Api}`, }, }); const result = await app.predict("/load_model", [ 'ClaireOzzz/allImages', 'ClaireOzzz/PorcelainModel', // string in 'Your custom model ID' Dropdown component ]); // const response = await client("https://79c67b7467ac6c1889.gradio.live/", { // headers: { // Authorization: `Bearer ${Api}`, // }, // }); // if (!response.ok) { // throw new Error("Failed to fetch models"); // } // // const modelsData = await response.json(); // const modelsData = await response.predict("/load_model", [ // ' ClaireOzzz/PorcelainModel', // string in 'Your custom model ID' Dropdown component // ]); setModels(result); } catch (error) { console.error("Error fetching models:", error.message); } }; //fetchModels(); }, []); const handleModelChange = (event) => { setSelectedModel(event.target.value); }; const handleSubmit = async (event) => { event.preventDefault(); setLoading(true); const input = event.target.elements.input.value; const imageInput = event.target.elements.imageInput.files[0]; const negativePrompt = event.target.elements.negativePrompt.value; const formData = new FormData(); formData.append("inputs", input); formData.append("negative_prompt", negativePrompt); formData.append("image", imageInput); formData.append("selected_model", selectedModel); try { const app = await client("https://79c67b7467ac6c1889.gradio.live/"); const result = await app.predict("/infer", [ 'ClaireOzzz/PorcelainModel', 'null', '0.1', ' https://raw.githubusercontent.com/gradio-app/gradio/main/test/test_files/bus.png', "Hello!!", "Hello!!", 'canny', '0.1', '1', '25', '-1', ]); console.log(result.data); // const response = await fetch( // "https://79c67b7467ac6c1889.gradio.live/", // { // method: "POST", // headers: { // Authorization: `Bearer ${Api}`, // }, // body: formData, // } // ); // if (!response.ok) { // throw new Error("Failed to generate image"); // } // const blob = await response.blob(); // setOutput(URL.createObjectURL(blob)); } catch (error) { console.error("Error generating image:", error.message); } finally { setLoading(false); } }; return (

Stable Diffusion

Pellentesque vulputate dignissim enim, et sollicitudin massa pellentesque ut. Proin luctus dui ut sem varius eleifend.

{/*
{loading &&
Loading...
} {!loading && output && (
art
)}
*/}
); }; export default ImageGenerationForm;