Fixes: generate image and search icons

This commit is contained in:
sauravniraula 2025-05-13 00:19:38 +05:45
parent edb76598a9
commit 2e4c21c560
No known key found for this signature in database
GPG key ID: 60FCC1B5A5E83326
7 changed files with 24 additions and 10 deletions

View file

@ -13,7 +13,7 @@ export async function startFastApiServer(
// Start FastAPI server
const startCommand = isDev ? [
".venv/bin/python",
["server.py", "--port", port.toString()],
["server_autoreload.py", "--port", port.toString()],
] : [
"./fastapi", ["--port", port.toString()],
];

View file

@ -1,3 +1,4 @@
import os
import uuid
from api.models import LogMetadata
from api.routers.presentation.models import (
@ -27,7 +28,7 @@ class GenerateImageHandler:
extra=log_metadata.model_dump(),
)
image_path = temp_file_service.create_temp_file_path(
image_path = os.path.join(
self.presentation_dir, "generated_images", str(uuid.uuid4()) + ".jpg"
)
await generate_image(self.data.prompt, image_path)

View file

@ -57,6 +57,7 @@ from api.routers.presentation.models import (
GeneratePresentationRequirementsRequest,
GenerateResearchReportRequest,
PresentationAndPath,
PresentationAndPaths,
PresentationAndSlides,
GenerateTitleRequest,
PresentationAndUrl,
@ -254,7 +255,7 @@ async def update_slide_models(data: PresentationUpdateRequest):
)
@presentation_router.post("/image/generate", response_model=PresentationAndUrls)
@presentation_router.post("/image/generate", response_model=PresentationAndPaths)
async def generate_image(data: GenerateImageRequest):
request_utils = RequestUtils("/ppt/image/generate")
logging_service, log_metadata = await request_utils.initialize_logger(
@ -276,7 +277,7 @@ async def search_image(data: SearchImageRequest):
)
@presentation_router.post("/icon/search", response_model=PresentationAndUrls)
@presentation_router.post("/icon/search", response_model=PresentationAndPaths)
async def search_icon(data: SearchIconRequest):
request_utils = RequestUtils("/ppt/icon/search")
logging_service, log_metadata = await request_utils.initialize_logger(

View file

@ -43,9 +43,7 @@ async def get_icons(
icon_names = [result.page_content for result in results]
icon_paths = [
get_resource(f"assets/icons/bold/{each}-bold.png") for each in icon_names
]
icon_paths = [get_resource(f"assets/icons/bold/{each}.png") for each in icon_names]
icon_temp_paths = []

View file

@ -0,0 +1,14 @@
import uvicorn
import argparse
if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Run the FastAPI server")
parser.add_argument(
"--port", type=int, required=True, help="Port number to run the server on"
)
args = parser.parse_args()
uvicorn.run(
"api.main:app", host="0.0.0.0", port=args.port, log_level="info", reload=True
)

View file

@ -76,7 +76,7 @@ const IconsEditor = ({
page: 1,
limit: 40,
});
setIcons(data.urls);
setIcons(data.paths);
} catch (error) {
console.error("Error fetching icons:", error);
setIcons([]);
@ -195,7 +195,7 @@ const IconsEditor = ({
className="w-12 h-12 cursor-pointer group relative rounded-lg overflow-hidden hover:bg-gray-100 p-2"
>
<img
src={iconSrc}
src={`file://${iconSrc}`}
alt={`Icon ${idx + 1}`}
className="w-full h-full object-contain "
/>

View file

@ -221,7 +221,7 @@ const ImageEditor = ({
},
});
setPreviewImages(response.urls);
setPreviewImages(response.paths);
} catch (err) {
setError("Failed to generate image. Please try again.");
} finally {