File size: 1,100 Bytes
cef045d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
"""Pydantic models for OB1 2API."""

from __future__ import annotations
from typing import Any, List, Optional, Union
from pydantic import BaseModel


class ChatMessage(BaseModel):
    role: str
    content: Union[str, list]


class ChatCompletionRequest(BaseModel):
    model: str = "anthropic/claude-opus-4.6"
    messages: List[ChatMessage]
    stream: bool = False
    temperature: Optional[float] = None
    top_p: Optional[float] = None
    max_tokens: Optional[int] = None
    tools: Optional[List[dict[str, Any]]] = None
    tool_choice: Optional[Union[str, dict[str, Any]]] = None


class AnthropicMessage(BaseModel):
    role: str
    content: Union[str, List[dict[str, Any]]]


class AnthropicMessagesRequest(BaseModel):
    model: str = "anthropic/claude-opus-4.6"
    messages: List[AnthropicMessage]
    max_tokens: int = 4096
    system: Optional[Union[str, List[dict[str, Any]]]] = None
    stream: bool = False
    temperature: Optional[float] = None
    top_p: Optional[float] = None
    tools: Optional[List[dict[str, Any]]] = None
    tool_choice: Optional[dict[str, Any]] = None