Spaces:
Sleeping
Sleeping
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"
|