File size: 505 Bytes
5e0532d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from typing import List, Callable, Optional, Union, Dict
from pydantic import BaseModel

class Agent(BaseModel):
    name: str = "Agent"
    model: str = "llama3"
    instructions: Union[str, Callable] = "You are a helpful assistant."
    functions: List[Callable] = []
    context_variables: Dict = {}
    
    class Config:
        arbitrary_types_allowed = True

class Response(BaseModel):
    agent: Optional[Agent]
    messages: List[Dict]
    context_variables: Dict = {}
    trace: List[Dict] = []