feat: initialize full-stack architecture with backend routes, database schema, and glassmorphic frontend UI
This commit is contained in:
65
backend/utils/ai_utils.py
Normal file
65
backend/utils/ai_utils.py
Normal file
@@ -0,0 +1,65 @@
|
||||
import os
|
||||
import google.generativeai as genai
|
||||
|
||||
def generate_complaint_text(platform, violator_article, my_article=None):
|
||||
"""Генерирует текст претензии с помощью Google Gemini."""
|
||||
api_key = os.getenv('GEMINI_API_KEY')
|
||||
if not api_key:
|
||||
return "Ошибка: API ключ для Gemini не настроен в .env"
|
||||
|
||||
genai.configure(api_key=api_key)
|
||||
model = genai.GenerativeModel('gemini-1.5-flash')
|
||||
|
||||
prompt = f"""
|
||||
Ты - профессиональный юрист в сфере интеллектуальной собственности и e-commerce.
|
||||
Напиши официальную и убедительную претензию для маркетплейса {platform}.
|
||||
|
||||
Суть нарушения: продавец с артикулом {violator_article} незаконно использует мой контент или нарушает правила ценообразования.
|
||||
Мой оригинальный артикул для сравнения: {my_article if my_article else 'не указан'}.
|
||||
|
||||
Требования:
|
||||
1. Текст должен быть на русском языке.
|
||||
2. Стиль официально-деловой.
|
||||
3. Упомяни о необходимости защиты прав правообладателя.
|
||||
4. Текст должен быть лаконичным (до 500 знаков).
|
||||
|
||||
Ответ дай сразу в виде текста претензии, без лишних вступлений.
|
||||
"""
|
||||
|
||||
try:
|
||||
response = model.generate_content(prompt)
|
||||
return response.text.strip()
|
||||
except Exception as e:
|
||||
return f"Ошибка при генерации текста ИИ: {str(e)}"
|
||||
|
||||
def generate_review_reply(review_text, rating):
|
||||
"""Генерирует ответ на отзыв покупателя."""
|
||||
api_key = os.getenv('GEMINI_API_KEY')
|
||||
if not api_key:
|
||||
return "Ошибка: API ключ не настроен."
|
||||
|
||||
genai.configure(api_key=api_key)
|
||||
model = genai.GenerativeModel('gemini-1.5-flash')
|
||||
|
||||
prompt = f"""
|
||||
Ты - менеджер по работе с клиентами в магазине на маркетплейсе.
|
||||
Твоя задача: вежливо и профессионально ответить на отзыв покупателя.
|
||||
|
||||
Оценка покупателя: {rating} звезд(ы).
|
||||
Текст отзыва: "{review_text}"
|
||||
|
||||
Правила:
|
||||
1. Если оценка 4-5 звезд: поблагодари за покупку, вырази радость, предложи посмотреть другие товары нашего бренда.
|
||||
2. Если оценка 1-3 звезды: извинись за неудобства, уточни, что мы работаем над качеством, и предложи обратиться в поддержку, если это уместно.
|
||||
3. Стиль: дружелюбный, но деловой. Не используй слишком много восклицательных знаков.
|
||||
4. Длина: 2-4 предложения.
|
||||
5. Не используй шаблоны "Уважаемый покупатель", начни более естественно.
|
||||
|
||||
Ответ дай сразу в виде готового текста.
|
||||
"""
|
||||
|
||||
try:
|
||||
response = model.generate_content(prompt)
|
||||
return response.text.strip()
|
||||
except Exception as e:
|
||||
return f"Ошибка ИИ: {str(e)}"
|
||||
Reference in New Issue
Block a user