Spaces:
Runtime error
Runtime error
Beamlnwza
commited on
Commit
·
7965157
1
Parent(s):
1016037
start reformat generate endpoint
Browse files- src/endpoints/generate.py +22 -0
- src/libs/__init__.py +0 -0
- src/libs/model.py +16 -0
- src/libs/s3.py +26 -0
- src/models/generate.py +14 -0
- src/models/main.py +13 -0
src/endpoints/generate.py
CHANGED
@@ -1,4 +1,7 @@
|
|
1 |
from fastapi import APIRouter
|
|
|
|
|
|
|
2 |
|
3 |
router = APIRouter(
|
4 |
prefix="/generate",
|
@@ -6,6 +9,8 @@ router = APIRouter(
|
|
6 |
responses={404: {"description": "Not found"}},
|
7 |
)
|
8 |
|
|
|
|
|
9 |
|
10 |
@router.get("/")
|
11 |
async def info():
|
@@ -15,3 +20,20 @@ async def info():
|
|
15 |
@router.get("/status")
|
16 |
async def status():
|
17 |
return {"status": "OK"}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
from fastapi import APIRouter
|
2 |
+
from src.libs.model import CganCols
|
3 |
+
from src.models.main import User, Method
|
4 |
+
from src.models.generate import GenerateResult, ImageResult
|
5 |
|
6 |
router = APIRouter(
|
7 |
prefix="/generate",
|
|
|
9 |
responses={404: {"description": "Not found"}},
|
10 |
)
|
11 |
|
12 |
+
model = CganCols()
|
13 |
+
|
14 |
|
15 |
@router.get("/")
|
16 |
async def info():
|
|
|
20 |
@router.get("/status")
|
21 |
async def status():
|
22 |
return {"status": "OK"}
|
23 |
+
|
24 |
+
|
25 |
+
@router.post("/")
|
26 |
+
async def generate(user: User, index: int | None = None) -> GenerateResult:
|
27 |
+
if index:
|
28 |
+
result: GenerateResult = await generate_index(user, index)
|
29 |
+
return result
|
30 |
+
|
31 |
+
return await generate_all(user)
|
32 |
+
|
33 |
+
|
34 |
+
async def generate_index(user: User, index: int) -> GenerateResult:
|
35 |
+
pass
|
36 |
+
|
37 |
+
|
38 |
+
async def generate_all(user: User) -> GenerateResult:
|
39 |
+
pass
|
src/libs/__init__.py
ADDED
File without changes
|
src/libs/model.py
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from huggingface_hub import from_pretrained_keras
|
2 |
+
|
3 |
+
|
4 |
+
class CganCols:
|
5 |
+
def __init__(self):
|
6 |
+
self.model_0 = from_pretrained_keras('SupawitMarayat/pimthaigans-cgan-0010')
|
7 |
+
self.model_1 = from_pretrained_keras('SupawitMarayat/pimthaigans-cgan-1121')
|
8 |
+
self.model_2 = from_pretrained_keras('SupawitMarayat/pimthaigans-cgan-2232')
|
9 |
+
self.model_3 = from_pretrained_keras('SupawitMarayat/pimthaigans-cgan-3343')
|
10 |
+
self.model_4 = from_pretrained_keras('SupawitMarayat/pimthaigans-cgan-4454')
|
11 |
+
self.model_5 = from_pretrained_keras('SupawitMarayat/pimthaigans-cgan-5565')
|
12 |
+
self.model_6 = from_pretrained_keras('SupawitMarayat/pimthaigans-cgan-6676')
|
13 |
+
self.model_7 = from_pretrained_keras('SupawitMarayat/pimthaigans-cgan-7787')
|
14 |
+
|
15 |
+
self.model_cols = [self.model_0, self.model_1, self.model_2, self.model_3, self.model_4, self.model_5,
|
16 |
+
self.model_6, self.model_7]
|
src/libs/s3.py
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
from dotenv import load_dotenv
|
3 |
+
import boto3
|
4 |
+
|
5 |
+
load_dotenv(dotenv_path=".env")
|
6 |
+
|
7 |
+
|
8 |
+
def s3session():
|
9 |
+
session = boto3.session.Session(
|
10 |
+
aws_access_key_id=os.environ.get("ACCESS_KEY_ID"),
|
11 |
+
aws_secret_access_key=os.environ.get("SECRET_ACCESS_KEY"),
|
12 |
+
)
|
13 |
+
|
14 |
+
return session
|
15 |
+
|
16 |
+
|
17 |
+
def s3client():
|
18 |
+
session = s3session()
|
19 |
+
s3_client = session.client("s3")
|
20 |
+
return s3_client
|
21 |
+
|
22 |
+
|
23 |
+
def s3resource():
|
24 |
+
session = s3session()
|
25 |
+
s3_resource = session.resource("s3")
|
26 |
+
return s3_resource
|
src/models/generate.py
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from typing import List
|
2 |
+
from pydantic import BaseModel
|
3 |
+
from src.models.main import User, Method
|
4 |
+
|
5 |
+
|
6 |
+
class ImageResult(BaseModel):
|
7 |
+
index: int
|
8 |
+
image_url: str
|
9 |
+
|
10 |
+
|
11 |
+
class GenerateResult(BaseModel):
|
12 |
+
user: User
|
13 |
+
method: Method
|
14 |
+
result: List[ImageResult]
|
src/models/main.py
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"""Main schema for the Api"""
|
2 |
+
from pydantic import BaseModel
|
3 |
+
from uuid import UUID
|
4 |
+
from enum import Enum
|
5 |
+
|
6 |
+
|
7 |
+
class User(BaseModel):
|
8 |
+
uuid: UUID
|
9 |
+
|
10 |
+
|
11 |
+
class Method(str, Enum):
|
12 |
+
all = "all"
|
13 |
+
index = "index"
|