forked from anomalyco/opencode-sdk-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathassistant_message.py
More file actions
82 lines (45 loc) · 1.55 KB
/
Copy pathassistant_message.py
File metadata and controls
82 lines (45 loc) · 1.55 KB
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
81
82
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
from typing import List, Union, Optional
from typing_extensions import Literal, Annotated, TypeAlias
from pydantic import Field as FieldInfo
from .._utils import PropertyInfo
from .._models import BaseModel
from .shared.unknown_error import UnknownError
from .shared.provider_auth_error import ProviderAuthError
from .shared.message_aborted_error import MessageAbortedError
__all__ = ["AssistantMessage", "Path", "Time", "Tokens", "TokensCache", "Error", "ErrorMessageOutputLengthError"]
class Path(BaseModel):
cwd: str
root: str
class Time(BaseModel):
created: float
completed: Optional[float] = None
class TokensCache(BaseModel):
read: float
write: float
class Tokens(BaseModel):
cache: TokensCache
input: float
output: float
reasoning: float
class ErrorMessageOutputLengthError(BaseModel):
data: object
name: Literal["MessageOutputLengthError"]
Error: TypeAlias = Annotated[
Union[ProviderAuthError, UnknownError, ErrorMessageOutputLengthError, MessageAbortedError],
PropertyInfo(discriminator="name"),
]
class AssistantMessage(BaseModel):
id: str
cost: float
mode: str
api_model_id: str = FieldInfo(alias="modelID")
path: Path
provider_id: str = FieldInfo(alias="providerID")
role: Literal["assistant"]
session_id: str = FieldInfo(alias="sessionID")
system: List[str]
time: Time
tokens: Tokens
error: Optional[Error] = None
summary: Optional[bool] = None