File size: 1,655 Bytes
1b7e88c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
from enum import Enum
from typing import Any, Dict, List, Optional

from pydantic import BaseModel


class CodeEnum(int, Enum):
    SUCCESS = 0


class ContentItem(BaseModel):
    type: str
    resource_id: Optional[str]
    data: str


class InputMessage(BaseModel):
    role: str
    content: List[ContentItem]


class ChatRequest(BaseModel):
    agent_id: str
    messages: List[InputMessage]
    kwargs: Dict[str, Any] = {}


class CallbackMessage(BaseModel):
    role: str
    type: str
    content: str


class Usage(BaseModel):
    prompt_tokens: int
    output_tokens: int


class ContentStatus(str, Enum):
    INCOMPLETE = "incomplete"  # the conversation content is not yet complete
    END_BLOCK = "end_block"  # a single conversation has ended, but the overall result is not finished
    END_ANSWER = "end_answer"  # the overall return is complete


class ChatResponse(BaseModel):
    agent_id: str
    code: int
    error_info: str
    took: int
    content_status: ContentStatus
    message: CallbackMessage
    usage: Usage


class RunningInfo(BaseModel):
    agent_id: str
    progress: str
    message: Optional[str]


class DataMemorize(BaseModel):
    content: List[ContentItem]


class ContentStatus(str, Enum):
    INCOMPLETE = "incomplete"  # the conversation content is not yet complete
    END_BLOCK = "end_block"  # a single conversation has ended, but the overall result is not finished
    END_ANSWER = "end_answer"  # the overall return is complete


class InteractionType(int, Enum):
    DEFAULT = 0
    INPUT = 1


class MessageType(str, Enum):
    TEXT = "text"
    IMAGE_URL = "image_url"
    IMAGE_BASE64 = "image_base64"