mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-09 08:08:32 +00:00
WIP need to fix encoder
This commit is contained in:
22
src/crewai/utilities/crew_json_encoder.py
Normal file
22
src/crewai/utilities/crew_json_encoder.py
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
import json
|
||||||
|
from datetime import datetime
|
||||||
|
from uuid import UUID
|
||||||
|
|
||||||
|
from openai import BaseModel
|
||||||
|
|
||||||
|
|
||||||
|
class CrewJSONEncoder(json.JSONEncoder):
|
||||||
|
"""
|
||||||
|
Custom JSON Encoder for Crew related objects.
|
||||||
|
"""
|
||||||
|
|
||||||
|
def default(self, obj):
|
||||||
|
if isinstance(obj, datetime):
|
||||||
|
return obj.isoformat()
|
||||||
|
if isinstance(obj, UUID):
|
||||||
|
return str(obj)
|
||||||
|
if isinstance(obj, BaseModel):
|
||||||
|
return obj.model_dump()
|
||||||
|
if isinstance(obj, set):
|
||||||
|
return list(obj)
|
||||||
|
return super().default(obj)
|
||||||
Reference in New Issue
Block a user