TahaFawzyElshrif commited on
Commit
94b75a9
·
1 Parent(s): 33fd638
Files changed (1) hide show
  1. app.py +26 -8
app.py CHANGED
@@ -10,7 +10,7 @@ from pydantic import BaseModel
10
  from agent.agent_graph.StateTasks import ProblemState
11
  import subprocess
12
  from Queue_Producer import send_message
13
-
14
  ##################################################
15
  # START CONSUMERS in a separate process
16
  ##################################################
@@ -21,12 +21,22 @@ for i in range(1,4): # Start 3 consumers
21
  ##################################################
22
  # START API
23
  ##################################################
24
-
 
 
 
 
 
 
 
 
 
 
 
25
  # Create app instance
26
  app = FastAPI()
27
  print("Starting API Server...")
28
 
29
-
30
  class RequestModel(BaseModel):
31
  prompt: str
32
  ht_token : str
@@ -35,6 +45,10 @@ class RequestModel(BaseModel):
35
  memory: list[str]
36
  last_state : str
37
 
 
 
 
 
38
 
39
  ##################################################
40
  # ROUTES
@@ -65,12 +79,16 @@ def old_call(request: RequestModel):
65
  return {"Data": answer}
66
  """
67
 
68
- @app.post("/call/")
69
- def call(request: RequestModel):
70
-
71
-
72
-
73
  return send_message(json.dumps(request.model_dump()))
74
 
 
 
 
 
 
 
 
75
  if __name__ == "__main__":
76
  uvicorn.run(app, host="0.0.0.0", port=7860)
 
10
  from agent.agent_graph.StateTasks import ProblemState
11
  import subprocess
12
  from Queue_Producer import send_message
13
+ import redis
14
  ##################################################
15
  # START CONSUMERS in a separate process
16
  ##################################################
 
21
  ##################################################
22
  # START API
23
  ##################################################
24
+ redis_host = os.environ["REDIS_HOST"]
25
+ redis_port = os.environ["REDIS_PORT"]
26
+ redis_password = os.environ["REDIS_PASSWORD"]
27
+
28
+ # Create Redis connection (global to make the get very light)
29
+ redis_conn = redis.Redis(
30
+ host=redis_host,
31
+ port=redis_port,
32
+ decode_responses=True,
33
+ username="default",
34
+ password=redis_password,
35
+ )
36
  # Create app instance
37
  app = FastAPI()
38
  print("Starting API Server...")
39
 
 
40
  class RequestModel(BaseModel):
41
  prompt: str
42
  ht_token : str
 
45
  memory: list[str]
46
  last_state : str
47
 
48
+ class RequestAnswer(BaseModel):
49
+ user_id: str
50
+ msg_id:str
51
+
52
 
53
  ##################################################
54
  # ROUTES
 
79
  return {"Data": answer}
80
  """
81
 
82
+ @app.post("/Message/Send/")
83
+ def call(request: RequestModel):
 
 
 
84
  return send_message(json.dumps(request.model_dump()))
85
 
86
+
87
+ @app.get("/Message/Answer/")
88
+ def call(request: RequestAnswer):
89
+ return redis_conn.get(f'ANSWER_FOR_USER_ID{request.user_id}_OF_{request.msg_id}',default="No ANSWER YET")
90
+
91
+
92
+
93
  if __name__ == "__main__":
94
  uvicorn.run(app, host="0.0.0.0", port=7860)