Tecnhotron commited on
Commit
334257b
·
1 Parent(s): c444311
Files changed (1) hide show
  1. api.py +18 -1
api.py CHANGED
@@ -468,6 +468,23 @@ If you cannot find the reload button, respond with "No reload button found".
468
  )
469
  full_response_text = "".join(chunk.text for chunk in response_stream)
470
  logger.info(f"Gemini response for reload button: {full_response_text}")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
471
  return full_response_text
472
  except Exception as e:
473
  logger.error(f"Error generating reload button location: {e}", exc_info=True)
@@ -694,7 +711,7 @@ async def list_models():
694
  logger.error(f"Screenshot base64 after captcha solve: {b64}")
695
  except Exception as captcha_err:
696
  logger.error(f"Failed captcha solve/screenshot in models endpoint: {captcha_err}", exc_info=True)
697
- raise HTTPException(status_code=500, detail=f"An unexpected error occurred while fetching models: {str(e)}")
698
 
699
  @app.post("/chat/completions", response_model=ChatCompletionResponse)
700
  async def chat_completions(request: ChatCompletionRequest):
 
468
  )
469
  full_response_text = "".join(chunk.text for chunk in response_stream)
470
  logger.info(f"Gemini response for reload button: {full_response_text}")
471
+ # If AI couldn't find the reload button, simulate manual F5 and FN+F5 keystrokes (without .refresh()), take screenshot and log base64
472
+ if "No reload button found" in full_response_text:
473
+ logger.info("AI did not find reload button, performing manual F5 and FN+F5 reloads.")
474
+ try:
475
+ body = driver.find_element(By.TAG_NAME, 'body')
476
+ # F5 reload simulation
477
+ body.send_keys(Keys.F5)
478
+ time.sleep(0.5)
479
+ # FN+F5 simulation as F5
480
+ body.send_keys(Keys.F5)
481
+ time.sleep(0.5)
482
+ # Capture screenshot after manual reload
483
+ png2 = driver.get_screenshot_as_png()
484
+ b64_2 = base64.b64encode(png2).decode('utf-8')
485
+ logger.info(f"Screenshot base64 after manual reload: {b64_2}")
486
+ except Exception as manu_err:
487
+ logger.error(f"Manual reload simulation failed: {manu_err}", exc_info=True)
488
  return full_response_text
489
  except Exception as e:
490
  logger.error(f"Error generating reload button location: {e}", exc_info=True)
 
711
  logger.error(f"Screenshot base64 after captcha solve: {b64}")
712
  except Exception as captcha_err:
713
  logger.error(f"Failed captcha solve/screenshot in models endpoint: {captcha_err}", exc_info=True)
714
+ raise HTTPException(status_code=500, detail="An unexpected error occurred while fetching models: {str(e)}")
715
 
716
  @app.post("/chat/completions", response_model=ChatCompletionResponse)
717
  async def chat_completions(request: ChatCompletionRequest):