Spaces:
Sleeping
Sleeping
| from flask import Flask, render_template, request, jsonify | |
| import google.generativeai as genai | |
| import os | |
| from PIL import Image | |
| import tempfile | |
| app = Flask(__name__) | |
| # Configuration Gemini | |
| token = os.environ.get("TOKEN") | |
| genai.configure(api_key=token) | |
| safety_settings = [ | |
| {"category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_NONE"}, | |
| {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_NONE"}, | |
| {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_NONE"}, | |
| {"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_NONE"}, | |
| ] | |
| mm = """ resous cet exercice. tu répondras en détaillant au maximum ton procédé de calcul.En français stp et sachant qu'il s'agit d'un devoir niveau terminal s je veux donc une présentation type de cela. Réponds donc en me donnant directement le devoir et rien d'autre. write you answer in french with rendering Latex""" | |
| model = genai.GenerativeModel( | |
| model_name="gemini-exp-1206", | |
| safety_settings=safety_settings | |
| ) | |
| def home(): | |
| return render_template('index.html') | |
| def generate(): | |
| if 'image' not in request.files: | |
| return jsonify({'error': 'No image uploaded'}), 400 | |
| image_file = request.files['image'] | |
| # Sauvegarder temporairement l'image | |
| with tempfile.NamedTemporaryFile(delete=False) as temp_file: | |
| image_file.save(temp_file.name) | |
| try: | |
| image = Image.open(temp_file.name) | |
| # Générer le contenu | |
| response = model.generate_content([mm, image]) | |
| result = response.text | |
| return jsonify({"result": result}) | |
| except Exception as e: | |
| return jsonify({'error': str(e)}), 500 | |
| finally: | |
| # Nettoyer le fichier temporaire | |
| os.unlink(temp_file.name) | |
| if __name__ == '__main__': | |
| app.run(debug=True) |