Update app.py
Browse files
app.py
CHANGED
|
@@ -8,6 +8,7 @@ import tempfile
|
|
| 8 |
import ffmpeg
|
| 9 |
from datetime import datetime
|
| 10 |
from flask import Flask, request, jsonify, render_template, send_from_directory, send_file, after_this_request, Response
|
|
|
|
| 11 |
|
| 12 |
app = Flask(__name__)
|
| 13 |
|
|
@@ -646,7 +647,7 @@ if not prompt:
|
|
| 646 |
else:
|
| 647 |
prompt = f'{prompt}, cinematic motion, smooth animation, high quality'
|
| 648 |
|
| 649 |
-
negative_prompt = '色调艳丽, 过曝, 静态, 细节模糊不清, 字幕, 风格, 作品, 画作, 画面, 静止, 整体发灰, 最差质量, 低质量, JPEG压缩残留, 丑陋의, 残缺의, 多余的手指, 画得不好的手部, 画得不好的脸部, 畸形
|
| 650 |
|
| 651 |
image_url = os.environ.get('IMAGE_URL', '')
|
| 652 |
run_id = os.environ.get('RUN_ID')
|
|
@@ -1133,8 +1134,11 @@ def generate():
|
|
| 1133 |
return jsonify({"status": "error", "message": "متن ورودی شامل کلمات نامناسب است."}), 400
|
| 1134 |
|
| 1135 |
try:
|
| 1136 |
-
|
| 1137 |
-
|
|
|
|
|
|
|
|
|
|
| 1138 |
english_prompt = persian_prompt
|
| 1139 |
|
| 1140 |
run_id = str(uuid.uuid4())
|
|
@@ -1170,8 +1174,12 @@ def edit_image():
|
|
| 1170 |
if has_forbidden_words(persian_prompt):
|
| 1171 |
return jsonify({"status": "error", "message": "متن ورودی شامل کلمات نامناسب است."}), 400
|
| 1172 |
|
| 1173 |
-
try:
|
| 1174 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1175 |
|
| 1176 |
run_id = str(uuid.uuid4())
|
| 1177 |
|
|
@@ -1202,8 +1210,10 @@ def generate_flux2():
|
|
| 1202 |
return jsonify({"status": "error", "message": "متن ورودی شامل کلمات نامناسب است."}), 400
|
| 1203 |
|
| 1204 |
try:
|
| 1205 |
-
english_prompt = GoogleTranslator(source='
|
| 1206 |
-
|
|
|
|
|
|
|
| 1207 |
english_prompt = persian_prompt
|
| 1208 |
|
| 1209 |
run_id = str(uuid.uuid4())
|
|
@@ -1391,7 +1401,6 @@ def chat_api():
|
|
| 1391 |
file_obj.save(f"static/images/{filename}")
|
| 1392 |
file_url = f"{SPACE_URL}/static/images/{filename}"
|
| 1393 |
|
| 1394 |
-
# ارسال مستقیم کار به گیتهاب اکشن جهت تسریع پردازش پاسخ چتبات
|
| 1395 |
client_payload = {
|
| 1396 |
"prompt": text_prompt,
|
| 1397 |
"file_url": file_url,
|
|
|
|
| 8 |
import ffmpeg
|
| 9 |
from datetime import datetime
|
| 10 |
from flask import Flask, request, jsonify, render_template, send_from_directory, send_file, after_this_request, Response
|
| 11 |
+
from deep_translator import GoogleTranslator
|
| 12 |
|
| 13 |
app = Flask(__name__)
|
| 14 |
|
|
|
|
| 647 |
else:
|
| 648 |
prompt = f'{prompt}, cinematic motion, smooth animation, high quality'
|
| 649 |
|
| 650 |
+
negative_prompt = '色调艳丽, 过曝, 静态, 细节模糊不清, 字幕, 风格, 作品, 画作, 画面, 静止, 整体发灰, 最差质量, 低质量, JPEG压缩残留, 丑陋의, 残缺의, 多余的手指, 画得不好的手部, 画得不好的脸部, 畸形の, 毁容의, 形态畸形的肢体, 手指融合, 静止不动的画面, 杂乱의 背景, 三条腿, 背景人很多, 倒着走'
|
| 651 |
|
| 652 |
image_url = os.environ.get('IMAGE_URL', '')
|
| 653 |
run_id = os.environ.get('RUN_ID')
|
|
|
|
| 1134 |
return jsonify({"status": "error", "message": "متن ورودی شامل کلمات نامناسب است."}), 400
|
| 1135 |
|
| 1136 |
try:
|
| 1137 |
+
# تغییر مبدا به auto جهت پایداری بالا در پردازش حروف ترکیبی فارسی-انگلیسی
|
| 1138 |
+
english_prompt = GoogleTranslator(source='auto', target='en').translate(persian_prompt)
|
| 1139 |
+
print(f"[GOOGLE TRANSLATE SUCCESS] Original: {persian_prompt} -> Translated: {english_prompt}")
|
| 1140 |
+
except Exception as e:
|
| 1141 |
+
print(f"[GOOGLE TRANSLATE FAILED] Error: {e}")
|
| 1142 |
english_prompt = persian_prompt
|
| 1143 |
|
| 1144 |
run_id = str(uuid.uuid4())
|
|
|
|
| 1174 |
if has_forbidden_words(persian_prompt):
|
| 1175 |
return jsonify({"status": "error", "message": "متن ورودی شامل کلمات نامناسب است."}), 400
|
| 1176 |
|
| 1177 |
+
try:
|
| 1178 |
+
english_prompt = GoogleTranslator(source='auto', target='en').translate(persian_prompt)
|
| 1179 |
+
print(f"[GOOGLE TRANSLATE SUCCESS - EDIT] Original: {persian_prompt} -> Translated: {english_prompt}")
|
| 1180 |
+
except Exception as e:
|
| 1181 |
+
print(f"[GOOGLE TRANSLATE FAILED - EDIT] Error: {e}")
|
| 1182 |
+
english_prompt = persian_prompt
|
| 1183 |
|
| 1184 |
run_id = str(uuid.uuid4())
|
| 1185 |
|
|
|
|
| 1210 |
return jsonify({"status": "error", "message": "متن ورودی شامل کلمات نامناسب است."}), 400
|
| 1211 |
|
| 1212 |
try:
|
| 1213 |
+
english_prompt = GoogleTranslator(source='auto', target='en').translate(persian_prompt)
|
| 1214 |
+
print(f"[GOOGLE TRANSLATE SUCCESS - FLUX2] Original: {persian_prompt} -> Translated: {english_prompt}")
|
| 1215 |
+
except Exception as e:
|
| 1216 |
+
print(f"[GOOGLE TRANSLATE FAILED - FLUX2] Error: {e}")
|
| 1217 |
english_prompt = persian_prompt
|
| 1218 |
|
| 1219 |
run_id = str(uuid.uuid4())
|
|
|
|
| 1401 |
file_obj.save(f"static/images/{filename}")
|
| 1402 |
file_url = f"{SPACE_URL}/static/images/{filename}"
|
| 1403 |
|
|
|
|
| 1404 |
client_payload = {
|
| 1405 |
"prompt": text_prompt,
|
| 1406 |
"file_url": file_url,
|