File size: 1,656 Bytes
d20ef33
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
718cc5a
 
 
 
 
d20ef33
 
 
 
 
718cc5a
 
d20ef33
 
 
 
 
 
 
 
 
 
 
 
718cc5a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# -*- coding:utf-8 -*-

from datetime import datetime
from typing import Any, List, Optional, Union

from pydantic import BaseModel, Field


class Response(BaseModel):
    code: Optional[int] = 0
    msg: Optional[str] = "success"
    data: Optional[Any] = None


class CustomModeGenerateParam(BaseModel):
    """Generate with Custom Mode"""

    prompt: str = Field(..., description="lyrics")
    mv: str = Field(
        ...,
        description="model version, default: chirp-v3-0",
        examples=["chirp-v3-0"],
    )
    title: str = Field(..., description="song title")
    tags: str = Field(..., description="style of music")
    continue_at: Optional[int] = Field(
        default=None,
        description="continue a new clip from a previous song, format number",
        examples=[120],
    )
    continue_clip_id: Optional[str] = None

    generation_type: str = "TEXT"
    negative_tags:list = []
    infill_start_s:Optional[int] = None
    infill_end_s:Optional[int] = None
    task:Optional[str] = ""


class DescriptionModeGenerateParam(BaseModel):
    """Generate with Song Description"""

    gpt_description_prompt:str = Field( max_length=200)
    make_instrumental: bool = False # True纯音乐,False有歌词
    mv: str = Field(
        default='chirp-v3-0',
        description="model version, default: chirp-v3-0",
        examples=["chirp-v3-0"],
    )
    
    prompt: str = Field(
        default="",
        description="Placeholder, keep it as an empty string, do not modify it",
    )

    generation_type: str = "TEXT"
    user_uploaded_images_b64:List[str] = []