from flask import Blueprint, request, jsonify from ..middleware import token_required from ..utils.ai_utils import generate_complaint_text ai_blueprint = Blueprint('ai', __name__) @ai_blueprint.route('/ai/generate-complaint', methods=['POST']) @token_required def ai_generate_complaint(current_user_id): """ Генерация текста претензии с помощью ИИ --- tags: - AI security: - APIKeyHeader: [] parameters: - name: body in: body required: true schema: type: object properties: platform: type: string violator_article: type: string my_article: type: string responses: 200: description: Сгенерированный текст """ data = request.json platform = data.get('platform', 'ozon') v_art = data.get('violator_article', '') my_art = data.get('my_article', '') if not v_art: return jsonify({"error": "Артикул нарушителя обязателен"}), 400 text = generate_complaint_text(platform, v_art, my_art) return jsonify({"text": text}) @ai_blueprint.route('/ai/generate-reply', methods=['POST']) @token_required def ai_generate_reply(current_user_id): """ Генерация ответа на отзыв покупателя --- tags: - AI security: - APIKeyHeader: [] parameters: - name: body in: body required: true schema: type: object properties: review_text: type: string rating: type: integer responses: 200: description: Сгенерированный ответ """ data = request.json review_text = data.get('review_text', '') rating = data.get('rating', 5) if not review_text: return jsonify({"error": "Текст отзыва обязателен"}), 400 from ..utils.ai_utils import generate_review_reply text = generate_review_reply(review_text, rating) return jsonify({"text": text}) @ai_blueprint.route('/ai/generate-card', methods=['POST']) @token_required def ai_generate_card(current_user_id): """ Генерация полной карточки товара """ data = request.json title = data.get('title') if not title: return jsonify({"error": "Название товара обязательно"}), 400 from ..utils.ai_utils import generate_product_card card_data = generate_product_card(title) return jsonify(card_data)