zelk12 commited on
Commit
ef3c725
·
verified ·
1 Parent(s): 7e7b73d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +58 -31
app.py CHANGED
@@ -25,48 +25,75 @@ print("\nEnd import library\n=========")
25
  print("=========\nBegin definition Backend Logic\n")
26
 
27
  print("Create default API settings")
28
- google_API_key=os.getenv("GEMINI_API_KEY")
29
 
30
  client = genai.Client(
31
- api_key=google_API_key,
32
  http_options=genai.types.HttpOptions(api_version='v1alpha'),
33
  )
34
  print("Set default model")
35
  used_model = "gemini-2.5-flash-preview-04-17"
36
 
37
- print("Define test response work")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
38
  def model_response(message, history):
39
  print(f"\n=========\nUser message\n{message}\n")
40
 
41
- print("Format history")
42
- gemini_history = []
43
-
44
- for message_to_check in history:
45
- #print(f"t1 {message}")
46
- # Skip thinking messages (messages with metadata)
47
- #if not (message.get("role") == "assistant" and "metadata" in message):
48
- # print(f"t2 {message}")
49
- # formatted_history.append({
50
- # "role": "user" if message.get("role") == "user" else "assistant",
51
- # "parts": [message.get("content", "")]
52
- # })
53
-
54
- #print(f"t2 {message}")
55
-
56
- if message_to_check.get("role") == "user" :
57
- gemini_history.append({
58
- "role": "user",
59
- "parts": [{"text": message_to_check.get("content", "")}]
60
- })
61
- elif message_to_check.get("role") == "assistant" :
62
- gemini_history.append({
63
- "role": "model",
64
- "parts": [{"text": message_to_check.get("content", "")}]
65
- })
66
-
67
- print(f"his: {gemini_history}")
68
  print("Create chat")
69
- chat = client.chats.create(model=used_model, history=gemini_history)
70
 
71
  print("Start response")
72
  response = chat.send_message(message["text"])
 
25
  print("=========\nBegin definition Backend Logic\n")
26
 
27
  print("Create default API settings")
28
+ gemini_API_key=os.getenv("GEMINI_API_KEY")
29
 
30
  client = genai.Client(
31
+ api_key=gemini_API_key,
32
  http_options=genai.types.HttpOptions(api_version='v1alpha'),
33
  )
34
  print("Set default model")
35
  used_model = "gemini-2.5-flash-preview-04-17"
36
 
37
+ print("define class format_history")
38
+ class format_history:
39
+ @staticmethod
40
+ def format_for_gemini(history):
41
+ print("Format history")
42
+ gemini_history = []
43
+
44
+ for message_to_check in history:
45
+ if message_to_check.get("role") == "user" :
46
+ gemini_history.append({
47
+ "role": "user",
48
+ "parts": [{"text": message_to_check.get("content", "")}]
49
+ })
50
+ elif message_to_check.get("role") == "assistant" :
51
+ gemini_history.append({
52
+ "role": "model",
53
+ "parts": [{"text": message_to_check.get("content", "")}]
54
+ })
55
+ return gemini_history
56
+
57
+ print("define class gemini api actions")
58
+ class gemini_API_actions:
59
+ apy_key = ""
60
+ used_model = ""
61
+
62
+ @staticmethod
63
+ def set_used_model(new_model: str):
64
+ used_model = new_model
65
+ return
66
+
67
+ @staticmethod
68
+ def set_API_key(new_api_key: str):
69
+ apy_key = new_api_key
70
+ return
71
+
72
+ @staticmethod
73
+ def response_to_model(user_message, history):
74
+ print(f"\n=========\nUser message\n{user_message}\n")
75
+
76
+ formated_history = format_history.format_for_gemini(history)
77
+
78
+ print(f"his: {formated_history}")
79
+ print("Create chat")
80
+ chat = client.chats.create(model=this.used_model, history=formated_history)
81
+
82
+ print("Start response")
83
+ response = chat.send_message(message["text"])
84
+ print(f"\nResponse\n{response}=========\n")
85
+
86
+ return response.text
87
+
88
+ print("Define response work body")
89
  def model_response(message, history):
90
  print(f"\n=========\nUser message\n{message}\n")
91
 
92
+ formated_history = format_history.format_for_gemini(history)
93
+
94
+ print(f"his: {formated_history}")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
95
  print("Create chat")
96
+ chat = client.chats.create(model=used_model, history=formated_history)
97
 
98
  print("Start response")
99
  response = chat.send_message(message["text"])