SAAHMATHWORKS commited on
Commit
cff0952
·
1 Parent(s): e932545

Revert "Update generate_legal_chat_responses"

Browse files

This reverts commit e932545e890f4a06702734e49cff051130cb6bb8.

Files changed (1) hide show
  1. api/main.py +5 -3
api/main.py CHANGED
@@ -260,7 +260,8 @@ async def generate_legal_chat_responses(message: str, session_id: Optional[str]
260
  try:
261
  if isinstance(state, MultiCountryLegalState):
262
  final_state = state
263
- state_dict = state.model_dump(exclude_unset=True) if hasattr(state, "model_dump") else state.dict(exclude_unset=True)
 
264
  if "messages" in state_dict and isinstance(state_dict["messages"], list):
265
  state_dict["messages"] = [
266
  msg if isinstance(msg, dict) else {"role": "unknown", "content": str(msg), "meta": {}}
@@ -278,7 +279,8 @@ async def generate_legal_chat_responses(message: str, session_id: Optional[str]
278
  # Yield final state if captured
279
  if final_state and isinstance(final_state, MultiCountryLegalState):
280
  try:
281
- final_state_dict = final_state.model_dump(exclude_unset=True) if hasattr(final_state, "model_dump") else final_state.dict(exclude_unset=True)
 
282
  if "messages" in final_state_dict and isinstance(final_state_dict["messages"], list):
283
  final_state_dict["messages"] = [
284
  msg if isinstance(msg, dict) else {"role": "unknown", "content": str(msg), "meta": {}}
@@ -290,7 +292,7 @@ async def generate_legal_chat_responses(message: str, session_id: Optional[str]
290
  yield f"data: {json.dumps({'type': 'error', 'message': 'An internal error occurred'})}\n\n"
291
 
292
  yield f"data: {json.dumps({'type': 'end'})}\n\n"
293
-
294
  @app.get("/chat")
295
  async def chat_stream(
296
  message: str = Query(..., description="User message"),
 
260
  try:
261
  if isinstance(state, MultiCountryLegalState):
262
  final_state = state
263
+ # Use model_dump_json for Pydantic v2 compatibility
264
+ state_dict = json.loads(state.model_dump_json(exclude_unset=True)) if hasattr(state, "model_dump_json") else state.dict(exclude_unset=True)
265
  if "messages" in state_dict and isinstance(state_dict["messages"], list):
266
  state_dict["messages"] = [
267
  msg if isinstance(msg, dict) else {"role": "unknown", "content": str(msg), "meta": {}}
 
279
  # Yield final state if captured
280
  if final_state and isinstance(final_state, MultiCountryLegalState):
281
  try:
282
+ # Use model_dump_json for Pydantic v2 compatibility
283
+ final_state_dict = json.loads(final_state.model_dump_json(exclude_unset=True)) if hasattr(final_state, "model_dump_json") else final_state.dict(exclude_unset=True)
284
  if "messages" in final_state_dict and isinstance(final_state_dict["messages"], list):
285
  final_state_dict["messages"] = [
286
  msg if isinstance(msg, dict) else {"role": "unknown", "content": str(msg), "meta": {}}
 
292
  yield f"data: {json.dumps({'type': 'error', 'message': 'An internal error occurred'})}\n\n"
293
 
294
  yield f"data: {json.dumps({'type': 'end'})}\n\n"
295
+
296
  @app.get("/chat")
297
  async def chat_stream(
298
  message: str = Query(..., description="User message"),