@@ -80,21 +80,27 @@ class Agent:
8080 def __init__ (
8181 self ,
8282 name : str ,
83- model_name : str ,
84- skills : List [Skill ],
85- params : dict ,
8683 created_at : datetime .datetime ,
8784 updated_at : datetime .datetime ,
85+ model_name : str = None ,
86+ skills : List [Skill ] = [],
8887 provider : str = None ,
88+ data : dict = {},
89+ model : dict = {},
90+ prompt_template : str = None ,
91+ params : dict = {},
8992 collection : CollectionBase = None
9093 ):
9194 self .name = name
95+ self .created_at = created_at
96+ self .updated_at = updated_at
9297 self .model_name = model_name
93- self .provider = provider
9498 self .skills = skills
99+ self .provider = provider
100+ self .data = data
101+ self .model = model
102+ self .prompt_template = prompt_template
95103 self .params = params
96- self .created_at = created_at
97- self .updated_at = updated_at
98104 self .collection = collection
99105
100106 def completion (self , messages : List [dict ]) -> AgentCompletion :
@@ -197,14 +203,21 @@ def __eq__(self, other):
197203
198204 @classmethod
199205 def from_json (cls , json : dict , collection : CollectionBase ):
206+ skills = []
207+ if json .get ('skills' ):
208+ skills = [Skill .from_json (skill ) for skill in json ['skills' ]]
209+
200210 return cls (
201211 json ['name' ],
202- json ['model_name' ],
203- [Skill .from_json (skill ) for skill in json ['skills' ]],
204- json ['params' ],
205212 json ['created_at' ],
206213 json ['updated_at' ],
207- json ['provider' ],
214+ json .get ('model_name' ),
215+ skills ,
216+ json .get ('provider' ),
217+ json .get ('data' , {}),
218+ json .get ('model' , {}),
219+ json .get ('prompt_template' ),
220+ json .get ('params' , {}),
208221 collection
209222 )
210223
0 commit comments