Spaces:
Paused
Paused
from flask import Flask, jsonify, request | |
import os | |
# from "./emotion_recognition/ai_model_photo" import ai | |
# from emotion_recognition import ai_model_photo | |
# from palm_response import getResponse, init_connect | |
from flask_mysqldb import MySQL | |
import base64 | |
import google.generativeai as genai | |
app = Flask(__name__) | |
def hello(): | |
return {"hello":"The deploy run"} | |
# app.config['MYSQL_HOST'] = 'localhost' | |
# app.config['MYSQL_USER'] = 'root' | |
# app.config['MYSQL_PASSWORD'] = '' | |
# app.config['MYSQL_DB'] = 'wanees_app' | |
# mysql = MySQL(app) | |
# def add_padding(base64_str): | |
# missing_padding = len(base64_str) % 4 | |
# if missing_padding != 0: | |
# base64_str += '=' * (4 - missing_padding) | |
# return base64_str | |
# @app.route('/api/chat/gemini', methods=['POST']) | |
# def receive_chat(): | |
# try: | |
# data = request.get_json() | |
# prompt = data['message'] | |
# print(data) | |
# print('promp is : ',prompt) | |
# genai.configure(api_key="AIzaSyB7bKpGzkT_f32d-Xv4tb9zIBtb8vJUCCs") | |
# model = genai.GenerativeModel('gemini-pro') | |
# response = model.generate_content(prompt) | |
# print(response.text) | |
# generated_text = response.text | |
# print('generated_text: ',generated_text) | |
# return jsonify({"response": generated_text}), 200 | |
# except Exception as e: | |
# print('the catch is:',str(e)) | |
# return jsonify({"error": str(e)}) | |
# # openai.api_key = "sk-proj-QtkCbMdxHjgMAyughGjgT3BlbkFJuoyNuhK2zO3uKm1Zc5S6" | |
# # @backoff.on_exception(backoff.expo, RateLimitError, max_tries=8) | |
# # def completions_with_backoff(client, messages): | |
# # response = client.chat.completions.create( | |
# # model="gpt-3.5-turbo", | |
# # messages=messages, | |
# # temperature=0, | |
# # ) | |
# # return response | |
# # @app.route('/api/chat/gpt', methods=['POST']) | |
# # def receive_message(): | |
# # try: | |
# # data = request.get_json() | |
# # prompt = data.get('prompt', 'Hello') | |
# # print(data) | |
# # print('promp is : ',prompt) | |
# # # client = OpenAI() | |
# # messages = [{"role": "user", "content": prompt}] | |
# # client = OpenAI( | |
# # # This is the default and can be omitted | |
# # api_key="sk-proj-EPQes2YgSJEx1e6EwDarT3BlbkFJrEtY36IDssJKi6VkVP7v" | |
# # ) | |
# # # | |
# # response = client.chat.completions.create( | |
# # model="gpt-3.5-turbo", | |
# # messages=messages, | |
# # temperature=0, | |
# # ) | |
# # # response = openai.Completion.create( | |
# # # engine="text-davinci-003", | |
# # # prompt=prompt, | |
# # # max_tokens=251, | |
# # # temperature=0, | |
# # # top_p=1 | |
# # # ) | |
# # print('response is: ',response.choices[0].message["content"]) | |
# # generated_text = response.choices[0].message["content"] | |
# # print('generated_text: ',generated_text) | |
# # return jsonify({"response": generated_text}), 200 | |
# # except Exception as e: | |
# # print('the catch is:',str(e)) | |
# # return jsonify({"error": str(e)}) | |
# @app.route('/api/photo', methods=['POST']) | |
# def receive_photo(): | |
# global photo_path | |
# photo_data = request.files['photo'] | |
# photo_path = os.path.join('.', photo_data.filename) | |
# photo_data.save(photo_path) | |
# res = ai_model_photo.ai(photo_path) | |
# print(photo_path) | |
# return jsonify({'message': res}), 200 | |
# # return Response(status=200, mimetype='application/json') | |
# @app.route('/api/facedetect', methods=['POST']) | |
# def AddPhoto(): | |
# name = request.json['name'] | |
# email = request.json['email'] | |
# # mobile = request.json['mobile'] | |
# img64 = request.json['image'] | |
# img64_padded = add_padding(img64) | |
# imageBinary = base64.b64decode(img64_padded) | |
# imgdetect = request.json['imagedetect'] | |
# imgdetect_padded = add_padding(imgdetect) | |
# imageBinarydetect = base64.b64decode(imgdetect_padded) | |
# photo_path = os.path.join('.', imageBinarydetect.filename) | |
# imageBinary.save(photo_path) | |
# res = ai_model_photo.ai(photo_path) | |
# print(photo_path) | |
# def receive_photo(): | |
# global photo_path | |
# photo_data = request.files['photo'] | |
# photo_path = os.path.join('.', photo_data.filename) | |
# photo_data.save(photo_path) | |
# res = ai_model_photo.ai(photo_path) | |
# print(photo_path) | |
# return jsonify({'message': res}), 200 | |
# @app.route('/api/chat/palm', methods=['POST']) | |
# def receive_message(): | |
# message ={ | |
# "message" : request.json['message'] | |
# } | |
# response_palm = getResponse(message["message"]) | |
# print("res palm =====", response_palm) | |
# return jsonify({'message': response_palm}), 200 | |
# @app.route('/add', methods=['POST']) | |
# def Add(): | |
# name = request.json['name'] | |
# email = request.json['email'] | |
# mobile = request.json['mobile'] | |
# mobile_emergency = request.json['mobile_emergency'] | |
# age = request.json['age'] | |
# gender = request.json['gender'] | |
# location = request.json['location'] | |
# img64 = request.json['image'] | |
# user_disease = request.json['user_disease'] | |
# user_medicine = request.json['user_medicine'] | |
# img64_padded = add_padding(img64) | |
# imageBinary = base64.b64decode(img64_padded) | |
# cur = mysql.connection.cursor() | |
# cur.execute(""" | |
# INSERT INTO users | |
# (name, email ,mobile, mobile_emergency, age, gender, location, image) | |
# VALUES (%s,%s,%s,%s,%s,%s,%s,%s) | |
# """, (name, email, mobile, mobile_emergency, age, gender, location, imageBinary)) | |
# mysql.connection.commit() | |
# cur.execute(""" | |
# SELECT * FROM users | |
# WHERE name=%s AND email=%s | |
# """, (name, email)) | |
# data = cur.fetchall() | |
# id = data[0][0] | |
# for disease in user_disease: | |
# print(disease) | |
# cur.execute("""INSERT INTO user_disease | |
# (user_id, disease_name) | |
# VALUES (%s, %s) | |
# """, (id, disease)) | |
# for medicine in user_medicine: | |
# img64 = medicine['medicine_image'] | |
# img64_padded = add_padding(img64) | |
# imageBinary = base64.b64decode(img64_padded) | |
# cur.execute("""INSERT INTO user_medicine | |
# (user_id, medicine_name,medicine_dose ,medicine_image) | |
# VALUES (%s, %s, %s, %s) | |
# """, (id, medicine['medicine_name'], medicine['medicine_dose'], medicine['medicine_image'])) | |
# mysql.connection.commit() | |
# cur.close() | |
# return jsonify({"message": "done"}), 200 | |
# @app.route('/delete/<string:email>', methods=['DELETE']) | |
# def Delete(email): | |
# cur = mysql.connection.cursor() | |
# cur.execute(""" | |
# SELECT id FROM users | |
# WHERE email=%s | |
# """, (email, )) | |
# data = cur.fetchall() | |
# id = data[0][0] | |
# cur.execute("DELETE FROM user_disease WHERE user_id=%s", (id,)) | |
# cur.execute("DELETE FROM user_medicine WHERE user_id=%s", (id,)) | |
# cur.execute("DELETE FROM users WHERE id=%s", (id,)) | |
# mysql.connection.commit() | |
# return jsonify({"message": "done"}), 200 | |
# @app.route('/update/<int:id>', methods=['PUT']) | |
# def Update(id): | |
# name = request.json['name'] | |
# email = request.json['email'] | |
# mobile = request.json['mobile'] | |
# mobile_emergency = request.json['mobile_emergency'] | |
# age = request.json['age'] | |
# gender = request.json['gender'] | |
# location = request.json['location'] | |
# img64 = request.json['image'] | |
# user_disease = request.json['user_disease'] | |
# user_medicine = request.json['user_medicine'] | |
# img64_padded = add_padding(img64) | |
# imageBinary = base64.b64decode(img64_padded) | |
# cur = mysql.connection.cursor() | |
# cur.execute(""" | |
# UPDATE users | |
# SET name=%s,email=%s, mobile=%s ,mobile_emergency=%s ,age=%s ,gender=%s ,location=%s ,image=%s | |
# WHERE id=%s | |
# """, (name, email, mobile, mobile_emergency, age, gender, location, imageBinary, id)) | |
# cur.execute("DELETE FROM user_disease WHERE user_id=%s", (id,)) | |
# cur.execute("DELETE FROM user_medicine WHERE user_id=%s", (id,)) | |
# for disease in user_disease: | |
# cur.execute("""INSERT INTO user_disease | |
# (user_id, disease_name) | |
# VALUES (%s, %s) | |
# """, (id, disease['disease_name'])) | |
# for medicine in user_medicine: | |
# cur.execute("""INSERT INTO user_medicine | |
# (user_id, medicine_name, medicine_image) | |
# VALUES (%s, %s, %s) | |
# """, (id, medicine['medicine_name'], medicine['medicine_image'])) | |
# mysql.connection.commit() | |
# return jsonify({"message": "done"}), 200 | |
# @app.route('/select/<int:id>', methods=['GET']) | |
# def Select(id): | |
# cur = mysql.connection.cursor() | |
# cur.execute("SELECT * FROM users WHERE id=%s", (id,)) | |
# table1 = cur.fetchall() | |
# cur.execute("SELECT * FROM user_disease WHERE user_id=%s", (id,)) | |
# table2 = cur.fetchall() | |
# cur.execute("SELECT * FROM user_medicine WHERE user_id=%s", (id,)) | |
# table3 = cur.fetchall() | |
# cur.close() | |
# user_data = { | |
# "name": table1[0][1], | |
# "email": table1[0][2], | |
# "mobile": table1[0][3], | |
# "mobile_emergency": table1[0][4], | |
# "age": table1[0][5], | |
# "gender": table1[0][6], | |
# "location": table1[0][7], | |
# "image": base64.b64encode(table1[0][8]).decode('utf-8'), | |
# "user_disease": [{"disease_name": disease[1]} for disease in table2], | |
# "user_medicine": [{"medicine_name": medicine[1], "medicine_image": base64.b64encode(medicine[3]).decode('utf-8')} for medicine in table3] | |
# } | |
# return jsonify(user_data), 200 | |
# if __name__ == '__main__': | |
# app.run(host='0.0.0.0', port=7860, debug=True) | |
# init_connect() | |
# app.run(host='192.168.137.241', port=5000, debug=True) # 192.168.1.114 http://192.168.137.241:5000 192.168.1.122 | |