| from flask import Flask, request, jsonify |
| import numpy as np |
| import random |
|
|
| app = Flask(__name__) |
|
|
| |
| shared_data = { |
| "users": [ |
| {"id": 1, "name": "Ahmet", "score": 85}, |
| {"id": 2, "name": "Mehmet", "score": 92} |
| ], |
| "models": ["model1", "model2", "model3"] |
| } |
|
|
| |
| @app.route('/') |
| def home(): |
| return "stablediffusionapi test" |
|
|
| |
| @app.route('/users', methods=['GET']) |
| def get_users(): |
| return jsonify({"users": shared_data["users"]}) |
|
|
| @app.route('/random-model', methods=['GET']) |
| def random_model(): |
| return jsonify({"selected_model": random.choice(shared_data["models"])}) |
|
|
| @app.route('/user/<int:user_id>', methods=['GET']) |
| def get_user(user_id): |
| user = next((u for u in shared_data["users"] if u["id"] == user_id), None) |
| return jsonify(user) if user else (jsonify({"error": "User not found"}), 404) |
|
|
| |
| @app.route('/predict', methods=['POST']) |
| def predict(): |
| try: |
| if not request.json: |
| return jsonify({"error": "No data received"}), 400 |
| return jsonify({"probability_up": np.random.rand()}) |
| except Exception as e: |
| return jsonify({"error": str(e)}), 500 |
|
|
| @app.route('/add-user', methods=['POST']) |
| def add_user(): |
| try: |
| if not request.json or "name" not in request.json: |
| return jsonify({"error": "Name is required"}), 400 |
| |
| new_user = { |
| "id": len(shared_data["users"]) + 1, |
| "name": request.json["name"], |
| "score": request.json.get("score", 0) |
| } |
| shared_data["users"].append(new_user) |
| return jsonify({"message": "User added", "user": new_user}), 201 |
| except Exception as e: |
| return jsonify({"error": str(e)}), 500 |
|
|
| if __name__ == '__main__': |
| app.run(host='0.0.0.0', port=7860) |