add hooks
This commit is contained in:
parent
a6933ecc1c
commit
ee1bb20d54
3 changed files with 27 additions and 3 deletions
|
|
@ -1,6 +1,8 @@
|
|||
import json
|
||||
import httpx
|
||||
from typing import Dict, Any, List, Optional
|
||||
|
||||
from src.models import ApplicantParam, ChatHook, PlansParam
|
||||
from ..config import settings
|
||||
from .session_service import session_service
|
||||
from ..api.v1.models import Source, HistoryItem
|
||||
|
|
@ -115,7 +117,25 @@ class ChatService:
|
|||
|
||||
ai_response = json.loads(chat_response.get("message", {}))
|
||||
ai_message = ai_response.get("message", "")
|
||||
hooks = ai_response.get("hooks", [])
|
||||
compare_plans = ai_response.get("compare_plans")
|
||||
show_plans = ai_response.get("show_plans")
|
||||
update_applicants = ai_response.get("update_applicants")
|
||||
hooks = []
|
||||
if update_applicants:
|
||||
hooks.append(ChatHook(
|
||||
tool="update_applicants",
|
||||
params=ApplicantParam(applicants=update_applicants)
|
||||
))
|
||||
elif compare_plans:
|
||||
hooks.append(ChatHook(
|
||||
tool="compare_plans",
|
||||
params=PlansParam(plans=compare_plans)
|
||||
))
|
||||
elif show_plans:
|
||||
hooks.append(ChatHook(
|
||||
tool="show_plans",
|
||||
params=PlansParam(plans=show_plans)
|
||||
))
|
||||
|
||||
return {
|
||||
"session_id": session_id,
|
||||
|
|
@ -131,7 +151,8 @@ class ChatService:
|
|||
"session_id": session_id or "fallback-session",
|
||||
"answer": f"I'm sorry, I'm experiencing technical difficulties. Please try again later. Error: {str(e)}",
|
||||
"sources": [],
|
||||
"history": []
|
||||
"history": [],
|
||||
"hooks": [],
|
||||
}
|
||||
|
||||
# Global chat service instance
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue