Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -46,6 +46,10 @@ if selected_brand != "Select":
|
|
46 |
watch_data = next((item for item in data if item["sku"] == selected_sku), None)
|
47 |
|
48 |
if watch_data:
|
|
|
|
|
|
|
|
|
49 |
# Generate description based on attributes
|
50 |
if st.button("Generate Description"):
|
51 |
attributes = {
|
@@ -57,11 +61,30 @@ if selected_brand != "Select":
|
|
57 |
"movement": watch_data.get("movement", "Unknown Movement"),
|
58 |
"gender": watch_data.get("gender", "Unknown Gender"),
|
59 |
}
|
60 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
|
62 |
# Tokenize input and generate description
|
63 |
inputs = tokenizer(input_text, return_tensors="pt", max_length=512, truncation=True)
|
64 |
-
outputs = model.generate(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
|
66 |
# Decode generated text
|
67 |
description = tokenizer.decode(outputs[0], skip_special_tokens=True)
|
@@ -73,6 +96,10 @@ if selected_brand != "Select":
|
|
73 |
# Display watch details
|
74 |
st.write("### Watch Details")
|
75 |
st.json(json.dumps(watch_data, indent=2))
|
|
|
|
|
|
|
|
|
76 |
else:
|
77 |
st.warning("Please select a brand.")
|
78 |
|
@@ -99,7 +126,7 @@ st.markdown(
|
|
99 |
}
|
100 |
</style>
|
101 |
<div class="footer">
|
102 |
-
<p>Developed with ❤️ by
|
103 |
</div>
|
104 |
""",
|
105 |
unsafe_allow_html=True
|
|
|
46 |
watch_data = next((item for item in data if item["sku"] == selected_sku), None)
|
47 |
|
48 |
if watch_data:
|
49 |
+
# Generation parameters
|
50 |
+
max_length = st.slider("Max Length", min_value=50, max_value=300, value=150)
|
51 |
+
temperature = st.slider("Temperature", min_value=0.1, max_value=1.0, value=0.7, step=0.1)
|
52 |
+
|
53 |
# Generate description based on attributes
|
54 |
if st.button("Generate Description"):
|
55 |
attributes = {
|
|
|
61 |
"movement": watch_data.get("movement", "Unknown Movement"),
|
62 |
"gender": watch_data.get("gender", "Unknown Gender"),
|
63 |
}
|
64 |
+
|
65 |
+
# Format input similar to training data (adjust this based on your training data format)
|
66 |
+
input_text = f"""Generate a detailed description for the following watch:
|
67 |
+
Brand: {attributes['brand']}
|
68 |
+
Name: {attributes['name']}
|
69 |
+
SKU: {attributes['sku']}
|
70 |
+
Features: {attributes['features']}
|
71 |
+
Case Size: {attributes['casesize']}
|
72 |
+
Movement: {attributes['movement']}
|
73 |
+
Gender: {attributes['gender']}
|
74 |
+
|
75 |
+
Description:"""
|
76 |
|
77 |
# Tokenize input and generate description
|
78 |
inputs = tokenizer(input_text, return_tensors="pt", max_length=512, truncation=True)
|
79 |
+
outputs = model.generate(
|
80 |
+
**inputs,
|
81 |
+
max_length=max_length,
|
82 |
+
num_return_sequences=1,
|
83 |
+
temperature=temperature,
|
84 |
+
top_k=50,
|
85 |
+
top_p=0.95,
|
86 |
+
do_sample=True
|
87 |
+
)
|
88 |
|
89 |
# Decode generated text
|
90 |
description = tokenizer.decode(outputs[0], skip_special_tokens=True)
|
|
|
96 |
# Display watch details
|
97 |
st.write("### Watch Details")
|
98 |
st.json(json.dumps(watch_data, indent=2))
|
99 |
+
|
100 |
+
# Display input text for debugging
|
101 |
+
st.write("### Input Text (for debugging)")
|
102 |
+
st.text(input_text)
|
103 |
else:
|
104 |
st.warning("Please select a brand.")
|
105 |
|
|
|
126 |
}
|
127 |
</style>
|
128 |
<div class="footer">
|
129 |
+
<p>Developed with ❤️ by Shreyansh Jha</p>
|
130 |
</div>
|
131 |
""",
|
132 |
unsafe_allow_html=True
|