Spaces:
Paused
Paused
Fix detect language, use gpt-4o
Browse files
app.py
CHANGED
|
@@ -486,45 +486,6 @@ def detect_features(image_paths, garment_type, language="English"):
|
|
| 486 |
base64_images = [encode_image(image_path[0]) for image_path in image_paths]
|
| 487 |
if garment_type == "" or garment_type == "all":
|
| 488 |
garment_type = "garment"
|
| 489 |
-
|
| 490 |
-
# headers = {
|
| 491 |
-
# "Content-Type": "application/json",
|
| 492 |
-
# "Authorization": f"Bearer {openai.api_key}"
|
| 493 |
-
# }
|
| 494 |
-
|
| 495 |
-
# payload = {
|
| 496 |
-
# "model": "gpt-4o",
|
| 497 |
-
# "messages": [
|
| 498 |
-
# {
|
| 499 |
-
# "role": "user",
|
| 500 |
-
# "content": [
|
| 501 |
-
# {
|
| 502 |
-
# "type": "text",
|
| 503 |
-
# "text": f"""Describe the features of the {garment_type} in the photos.
|
| 504 |
-
# Return the result in in the following JSON format without any preceding or trailing text:
|
| 505 |
-
|
| 506 |
-
# {{
|
| 507 |
-
# "features": [list of comma separated features],
|
| 508 |
-
# "intended_use": [list of comma separated intended uses],
|
| 509 |
-
# "alt_text": [list of alt text for image 1, alt text for image 2]
|
| 510 |
-
# }}"""
|
| 511 |
-
# },
|
| 512 |
-
# ] + [{
|
| 513 |
-
# "type": "image_url",
|
| 514 |
-
# "detail": "low",
|
| 515 |
-
# "image_url": {
|
| 516 |
-
# "url": f"data:image/jpeg;base64,{base64_image}"
|
| 517 |
-
# }
|
| 518 |
-
# } for base64_image in base64_images]
|
| 519 |
-
# }
|
| 520 |
-
# ],
|
| 521 |
-
# "temperature": 0.0,
|
| 522 |
-
# "max_tokens": 300
|
| 523 |
-
# }
|
| 524 |
-
|
| 525 |
-
# response = requests.post("https://api.openai.com/v1/chat/completions", headers=headers, json=payload)
|
| 526 |
-
|
| 527 |
-
# print(response)
|
| 528 |
|
| 529 |
chat = get_model("gpt-4o", temperature=0.0)
|
| 530 |
|
|
@@ -557,7 +518,11 @@ def detect_features(image_paths, garment_type, language="English"):
|
|
| 557 |
jresponse["intended_use"] = jresponse.get("intended_use", []) + jresponse_i.get("intended_use", [])
|
| 558 |
jresponse["alt_text"] = jresponse.get("alt_text", []) + [jresponse_i.get("alt_text", "")]
|
| 559 |
|
| 560 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 561 |
|
| 562 |
return jresponse, base64_images
|
| 563 |
except Exception as e:
|
|
@@ -587,6 +552,8 @@ def parse_structure(struct_ref):
|
|
| 587 |
def detect_language(texts, model):
|
| 588 |
langs = ["_"] * len(texts)
|
| 589 |
|
|
|
|
|
|
|
| 590 |
try:
|
| 591 |
messages = []
|
| 592 |
lang_map = {}
|
|
|
|
| 486 |
base64_images = [encode_image(image_path[0]) for image_path in image_paths]
|
| 487 |
if garment_type == "" or garment_type == "all":
|
| 488 |
garment_type = "garment"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 489 |
|
| 490 |
chat = get_model("gpt-4o", temperature=0.0)
|
| 491 |
|
|
|
|
| 518 |
jresponse["intended_use"] = jresponse.get("intended_use", []) + jresponse_i.get("intended_use", [])
|
| 519 |
jresponse["alt_text"] = jresponse.get("alt_text", []) + [jresponse_i.get("alt_text", "")]
|
| 520 |
|
| 521 |
+
feature_set = set(jresponse["features"])
|
| 522 |
+
intended_use_set = set(jresponse["intended_use"])
|
| 523 |
+
jresponse["features"] = list(feature_set)
|
| 524 |
+
jresponse["intended_use"] = list(intended_use_set)
|
| 525 |
+
print(jresponse)
|
| 526 |
|
| 527 |
return jresponse, base64_images
|
| 528 |
except Exception as e:
|
|
|
|
| 552 |
def detect_language(texts, model):
|
| 553 |
langs = ["_"] * len(texts)
|
| 554 |
|
| 555 |
+
model = get_model("gpt-4o", temperature=0.0)
|
| 556 |
+
|
| 557 |
try:
|
| 558 |
messages = []
|
| 559 |
lang_map = {}
|