Feature Extraction
Transformers
Safetensors
Korean
English
embeddings
text-to-image-retrieval
product-search
query-encoder
distillation
int8
embeddinggemma-2
research-release
Instructions to use ThakiCloud/eg2-tiny-query-commerce-ko with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use ThakiCloud/eg2-tiny-query-commerce-ko with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("feature-extraction", model="ThakiCloud/eg2-tiny-query-commerce-ko")# pip install -U transformers accelerate # Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("ThakiCloud/eg2-tiny-query-commerce-ko", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Card: separate E0, K2-only and routed columns; note 6/200 demo names routed to E0
Browse files- MODEL_CARD.ko.md +7 -2
- README.md +7 -2
MODEL_CARD.ko.md
CHANGED
|
@@ -43,7 +43,9 @@ top10 = np.argsort(-(q @ image_vectors.T), axis=1)[:, :10]
|
|
| 43 |
|
| 44 |
**๋ชจ๋ธ ๋จ๋
R@10**
|
| 45 |
|
| 46 |
-
|
|
|
|
|
|
|
| 47 |
|---|---|---|---|---|---|---|
|
| 48 |
| Q-TITLE-ko: ํ๊ตญ์ด ์ํ๋ช
(ABO ํ๊ตญ์ด ๋ฆฌ์คํ
) | 889 | 0.368 | 0.231 | **0.645** | 0.643 | 0.682 |
|
| 49 |
| kobench: ABO ์์ฑ ๊ธฐ๋ฐ ํ๊ตญ์ด ํ
ํ๋ฆฟ ์ง์ | 173 | 0.104 | 0.069 | **0.318** | 0.318 | 0.491 |
|
|
@@ -54,11 +56,12 @@ top10 = np.argsort(-(q @ image_vectors.T), axis=1)[:, :10]
|
|
| 54 |
- **ํ๊ตญ์ด ์ํ๋ช
์์ K2 ๋ E0 ๋ณด๋ค R@10 ์ด 0.277 ๋์ต๋๋ค** [+0.243, +0.309](์ํ ์ ํ ๊ตฐ์ง 150๊ฐ). ์ด๋ฒ ๊ณต๊ฐ์ ๊ทผ๊ฑฐ๊ฐ ์ด ๊ฒฐ๊ณผ์
๋๋ค.
|
| 55 |
- kobench ์์๋ K2 โ E0 ๋ +0.214 [+0.113, +0.315] ์
๋๋ค. ๋ค๋ง ์ํ ์ ํ ๊ตฐ์ง์ด 24๊ฐ๋ฟ์ด๋ผ ํ์ ๊ธฐ์ค(30๊ฐ)์ ๋ชป ๋ฏธ์ณ "๋ถํ์ค"๋ก ๋ก๋๋ค.
|
| 56 |
- K-Fashion(ํ๊ตญ์ด ํจ์
์์ฑ, ํ์ต ๋ถํฌ ์, P@1, n = 626)์์๋ E0 0.005, ์ด์ K1 **0.403**, K2 0.289 ์
๋๋ค. **์ด ์ธํธ์์๋ K2 ๊ฐ ์ด์ ํ๊ตญ์ด ๋ชจ๋ธ๋ณด๋ค ๋ฎ์ต๋๋ค.**
|
|
|
|
| 57 |
- ์์ด ์ํ๋ช
์ ๊ทธ๋๋ก์ด๊ณ (โ0.001 [โ0.009, +0.008]), ๋ฆฌ์คํ
ํค์๋๋ ์กฐ๊ธ ๋ฎ์์ก์ต๋๋ค(โ0.018 [โ0.030, โ0.006]). ์ค์ ์ผํ ๊ฒ์์ด๋ ์คํ๋ ค ์ฌ๋์ต๋๋ค(+0.100 [+0.059, +0.140]). ๊ธฐ๋ณธ ๋ผ์ฐํ
์ ์์ด๋ฅผ E0 ๋ก ๋ณด๋ด๋ฏ๋ก ์์ด ์์น๋ E0 ์ ๊ฐ์ต๋๋ค. ์์ด ํธ๋ํฝ์ด ESCI ์ ๋น์ทํ๋ค๋ฉด `route="ko"` ๋ฅผ ๊ฒํ ํด ๋ณด์ธ์.
|
| 58 |
|
| 59 |
**BM25 ์ ๊ฒฐํฉ**(๋ ์์ 10๊ฐ ๋ชฉ๋ก์ RRF, k = 60 ์ผ๋ก ํฉ์นจ. ํ๊ตญ์ด ์ง์์ BM25 ์์ธ์ ์ํ์ ํ๊ตญ์ดยท์์ด ์ด๋ฆ)
|
| 60 |
|
| 61 |
-
| ์ง์ ์ธํธ | BM25 R@1 | BM25 R@10 | BM25 + K2 R@1 | BM25 + K2 R@10 |
|
| 62 |
|---|---|---|---|---|
|
| 63 |
| Q-TITLE-ko | 0.911 | 0.993 | 0.703 | 0.991 |
|
| 64 |
| kobench | 0.139 | 0.405 | 0.179 | 0.468 |
|
|
@@ -69,6 +72,8 @@ top10 = np.argsort(-(q @ image_vectors.T), axis=1)[:, :10]
|
|
| 69 |
- ESCI(์์ด)์์๋ K2 ๋ฅผ ๊ฒฐํฉํ๋ฉด BM25 ๋ณด๋ค R@10 ์ด +0.141 [+0.105, +0.181] ์ค๋ฆ
๋๋ค.
|
| 70 |
- ์ด ๋ชจ๋ธ์ ์ฐ์์๋ ๋ ๊ฐ์ง์
๋๋ค. ์ํ ๋ชฉ๋ก์ ๋ง๋ ํ๊ตญ์ด ํ
์คํธ๊ฐ ์์ ๋ ํ๊ตญ์ด ๊ฒ์์ด๋ก **์ํ ์ด๋ฏธ์ง**๋ฅผ ์ฐพ๋ ๊ฒ, ๊ทธ๋ฆฌ๊ณ ํค์๋ ๊ฒ์์ ์์ 10๊ฐ ํ๋ณด๋ฅผ ๋ํ๋ ๊ฒ์
๋๋ค. ์ฒซ ๊ฒฐ๊ณผ๋ฅผ ์ ํ๋ ์์ ๋ชจ๋ธ๋ก ์ฐ์ง ๋ง์ธ์.
|
| 71 |
|
|
|
|
|
|
|
| 72 |
์ง์ ๊ธธ์ด: Q-TITLE-ko ์ง์์ 27.8% ๊ฐ ์์ 64 ํ ํฐ ํ๋๋ฅผ ๋์๊ณ , 77 ํ ํฐ์ ๋๋ ์ง์๋ 10.8% ์
๋๋ค. K2 ๋ ์ด๋ฐ ์ง์์์ ์ 57 ํ ํฐ๊ณผ ๋ 20 ํ ํฐ์ ๋จ๊ธฐ๋ฏ๋ก ๋์ ๋ถ๋ ์์ยทํฌ๊ธฐยท์๋ ํํ์ด ์๋ฆฌ์ง ์์ต๋๋ค.
|
| 73 |
|
| 74 |
## ์ฃผ์ฅํ์ง ์๋ ๊ฒ
|
|
|
|
| 43 |
|
| 44 |
**๋ชจ๋ธ ๋จ๋
R@10**
|
| 45 |
|
| 46 |
+
ํธ์ถ ๋ฐฉ์ ์ธ ๊ฐ์ง๋ฅผ ๋๋ ์ ์์ต๋๋ค. ๋ชจ๋ ์ง์๋ฅผ E0 ๋ก ๋ณด๋ธ ๊ฐ, ๋ชจ๋ ์ง์๋ฅผ K2 ๋ก ๋ณด๋ธ ๊ฐ, ๊ธฐ๋ณธ ์๋ ๋ผ์ฐํ
(ํ๊ธ์ด ์์ผ๋ฉด K2, ์์ผ๋ฉด E0) ๊ฐ์
๋๋ค.
|
| 47 |
+
|
| 48 |
+
| ์ง์ ์ธํธ | n | E0 ๋ง (`route="en"`) | ์ด์ K1 | **K2 ๋ง (`route="ko"`)** | ์๋ ๋ผ์ฐํ
(๊ธฐ๋ณธ) | ๊ต์ฌ(1.5 GB) |
|
| 49 |
|---|---|---|---|---|---|---|
|
| 50 |
| Q-TITLE-ko: ํ๊ตญ์ด ์ํ๋ช
(ABO ํ๊ตญ์ด ๋ฆฌ์คํ
) | 889 | 0.368 | 0.231 | **0.645** | 0.643 | 0.682 |
|
| 51 |
| kobench: ABO ์์ฑ ๊ธฐ๋ฐ ํ๊ตญ์ด ํ
ํ๋ฆฟ ์ง์ | 173 | 0.104 | 0.069 | **0.318** | 0.318 | 0.491 |
|
|
|
|
| 56 |
- **ํ๊ตญ์ด ์ํ๋ช
์์ K2 ๋ E0 ๋ณด๋ค R@10 ์ด 0.277 ๋์ต๋๋ค** [+0.243, +0.309](์ํ ์ ํ ๊ตฐ์ง 150๊ฐ). ์ด๋ฒ ๊ณต๊ฐ์ ๊ทผ๊ฑฐ๊ฐ ์ด ๊ฒฐ๊ณผ์
๋๋ค.
|
| 57 |
- kobench ์์๋ K2 โ E0 ๋ +0.214 [+0.113, +0.315] ์
๋๋ค. ๋ค๋ง ์ํ ์ ํ ๊ตฐ์ง์ด 24๊ฐ๋ฟ์ด๋ผ ํ์ ๊ธฐ์ค(30๊ฐ)์ ๋ชป ๋ฏธ์ณ "๋ถํ์ค"๋ก ๋ก๋๋ค.
|
| 58 |
- K-Fashion(ํ๊ตญ์ด ํจ์
์์ฑ, ํ์ต ๋ถํฌ ์, P@1, n = 626)์์๋ E0 0.005, ์ด์ K1 **0.403**, K2 0.289 ์
๋๋ค. **์ด ์ธํธ์์๋ K2 ๊ฐ ์ด์ ํ๊ตญ์ด ๋ชจ๋ธ๋ณด๋ค ๋ฎ์ต๋๋ค.**
|
| 59 |
+
- Q-TITLE-ko ์์ ์๋ ๋ผ์ฐํ
(0.643)์ด K2 ๋ง ์ด ๊ฐ(0.645)๋ณด๋ค ์กฐ๊ธ ๋ฎ์ต๋๋ค. ABO ํ๊ตญ์ด ๋ฆฌ์คํ
์ด๋ฆ ๊ฐ์ด๋ฐ ์ค์ ๋ก๋ ์์ด๋ก ์ ํ ๊ฒ(ํ๊ธ ์์)์ด E0 ๋ก ๊ฐ๊ธฐ ๋๋ฌธ์
๋๋ค.
|
| 60 |
- ์์ด ์ํ๋ช
์ ๊ทธ๋๋ก์ด๊ณ (โ0.001 [โ0.009, +0.008]), ๋ฆฌ์คํ
ํค์๋๋ ์กฐ๊ธ ๋ฎ์์ก์ต๋๋ค(โ0.018 [โ0.030, โ0.006]). ์ค์ ์ผํ ๊ฒ์์ด๋ ์คํ๋ ค ์ฌ๋์ต๋๋ค(+0.100 [+0.059, +0.140]). ๊ธฐ๋ณธ ๋ผ์ฐํ
์ ์์ด๋ฅผ E0 ๋ก ๋ณด๋ด๋ฏ๋ก ์์ด ์์น๋ E0 ์ ๊ฐ์ต๋๋ค. ์์ด ํธ๋ํฝ์ด ESCI ์ ๋น์ทํ๋ค๋ฉด `route="ko"` ๋ฅผ ๊ฒํ ํด ๋ณด์ธ์.
|
| 61 |
|
| 62 |
**BM25 ์ ๊ฒฐํฉ**(๋ ์์ 10๊ฐ ๋ชฉ๋ก์ RRF, k = 60 ์ผ๋ก ํฉ์นจ. ํ๊ตญ์ด ์ง์์ BM25 ์์ธ์ ์ํ์ ํ๊ตญ์ดยท์์ด ์ด๋ฆ)
|
| 63 |
|
| 64 |
+
| ์ง์ ์ธํธ | BM25 R@1 | BM25 R@10 | BM25 + K2 ๋ง R@1 | BM25 + K2 ๋ง R@10 |
|
| 65 |
|---|---|---|---|---|
|
| 66 |
| Q-TITLE-ko | 0.911 | 0.993 | 0.703 | 0.991 |
|
| 67 |
| kobench | 0.139 | 0.405 | 0.179 | 0.468 |
|
|
|
|
| 72 |
- ESCI(์์ด)์์๋ K2 ๋ฅผ ๊ฒฐํฉํ๋ฉด BM25 ๋ณด๋ค R@10 ์ด +0.141 [+0.105, +0.181] ์ค๋ฆ
๋๋ค.
|
| 73 |
- ์ด ๋ชจ๋ธ์ ์ฐ์์๋ ๋ ๊ฐ์ง์
๋๋ค. ์ํ ๋ชฉ๋ก์ ๋ง๋ ํ๊ตญ์ด ํ
์คํธ๊ฐ ์์ ๋ ํ๊ตญ์ด ๊ฒ์์ด๋ก **์ํ ์ด๋ฏธ์ง**๋ฅผ ์ฐพ๋ ๊ฒ, ๊ทธ๋ฆฌ๊ณ ํค์๋ ๊ฒ์์ ์์ 10๊ฐ ํ๋ณด๋ฅผ ๋ํ๋ ๊ฒ์
๋๋ค. ์ฒซ ๊ฒฐ๊ณผ๋ฅผ ์ ํ๋ ์์ ๋ชจ๋ธ๋ก ์ฐ์ง ๋ง์ธ์.
|
| 74 |
|
| 75 |
+
์ค์น ํ์ธ(์ฑ๋ฅ ์งํ ์๋): ๊นจ๋ํ ํ๊ฒฝ์์ ์ด ์ ์ฅ์๋ฅผ ๋ด๋ ค๋ฐ์ ABO ๊ฐ๋ฐ ์ํ 200๊ฐ(์ํ ๊ตฐ์ง๋ง๋ค 1๊ฐ)๋ก EmbeddingGemma 2 ์์ธ์ ๋ง๋ค๊ณ , ๊ทธ ์ํ๋ค์ ํ๊ตญ์ด ์ด๋ฆ์ผ๋ก ๊ธฐ๋ณธ ๋ผ์ฐํ
๊ฒ์์ ํ์ต๋๋ค. 200๊ฐ ์ค 194๊ฐ๋ ์ด๋ฆ์ ํ๊ธ์ด ์์ด K2 ๋ก ๊ฐ๊ณ , ๋๋จธ์ง 6๊ฐ๋ ํ๊ตญ์ด ๋ฆฌ์คํ
์ด๋ฆ์ด ์์ด๋ก ์ ํ ์์ด(์: "AmazonBasics Hanging Planter, Square") E0 ๋ก ๊ฐ์ต๋๋ค. ๊ฒฐ๊ณผ๋ R@1 0.63, R@10 0.95 ์
๋๋ค. ์์ด ์ด๋ฆ(์ ๋ถ E0)์ผ๋ก๋ R@1 0.83, R@10 1.00 ์
๋๋ค. ํ์ด ์์์ ์ด ๊ฐ์ ํ์ผ์ด ์ ๋๋ก ๋ถ๋ฌ์์ง๊ณ ๊ฒ์๋๋ค๋ ํ์ธ์ผ ๋ฟ์
๋๋ค. ํ์ง์ ์ ํ๋ฅผ ๋ณด์ธ์.
|
| 76 |
+
|
| 77 |
์ง์ ๊ธธ์ด: Q-TITLE-ko ์ง์์ 27.8% ๊ฐ ์์ 64 ํ ํฐ ํ๋๋ฅผ ๋์๊ณ , 77 ํ ํฐ์ ๋๋ ์ง์๋ 10.8% ์
๋๋ค. K2 ๋ ์ด๋ฐ ์ง์์์ ์ 57 ํ ํฐ๊ณผ ๋ 20 ํ ํฐ์ ๋จ๊ธฐ๋ฏ๋ก ๋์ ๋ถ๋ ์์ยทํฌ๊ธฐยท์๋ ํํ์ด ์๋ฆฌ์ง ์์ต๋๋ค.
|
| 78 |
|
| 79 |
## ์ฃผ์ฅํ์ง ์๋ ๊ฒ
|
README.md
CHANGED
|
@@ -79,7 +79,9 @@ All numbers are from development sets. Two of them, Q-TITLE-ko and kobench, were
|
|
| 79 |
|
| 80 |
**Model alone, R@10**
|
| 81 |
|
| 82 |
-
|
|
|
|
|
|
|
| 83 |
|---|---|---|---|---|---|---|
|
| 84 |
| Q-TITLE-ko: Korean product names (ABO Korean listings) | 889 | 0.368 | 0.231 | **0.645** | 0.643 | 0.682 |
|
| 85 |
| kobench: Korean template queries over ABO attributes | 173 | 0.104 | 0.069 | **0.318** | 0.318 | 0.491 |
|
|
@@ -90,11 +92,12 @@ All numbers are from development sets. Two of them, Q-TITLE-ko and kobench, were
|
|
| 90 |
- **Korean product names: K2 โ E0 = +0.277 [+0.243, +0.309] R@10** (150 product-type clusters). This is the result the release rests on.
|
| 91 |
- kobench: K2 โ E0 = +0.214 [+0.113, +0.315], but kobench has only 24 product-type clusters, below the 30 we require for a firm call, so we label it uncertain.
|
| 92 |
- K-Fashion (Korean fashion attributes, in-distribution, P@1, n = 626): E0 0.005 ยท earlier K1 **0.403** ยท K2 0.289. **K2 is worse than the earlier Korean model here.**
|
|
|
|
| 93 |
- English: unchanged on product names (โ0.001 [โ0.009, +0.008]), lower on listing keywords (โ0.018 [โ0.030, โ0.006]), higher on real shopping queries (+0.100 [+0.059, +0.140]). The default routing sends English queries to E0, so it gives E0's English numbers. Use `route="ko"` if your English traffic looks like ESCI.
|
| 94 |
|
| 95 |
**Fused with BM25** (reciprocal rank fusion of the two top-10 lists, k = 60; BM25 over the product title text, Korean + English names for Korean queries)
|
| 96 |
|
| 97 |
-
| Query set | BM25 R@1 | BM25 R@10 | BM25 + K2 R@1 | BM25 + K2 R@10 |
|
| 98 |
|---|---|---|---|---|
|
| 99 |
| Q-TITLE-ko | 0.911 | 0.993 | 0.703 | 0.991 |
|
| 100 |
| kobench | 0.139 | 0.405 | 0.179 | 0.468 |
|
|
@@ -105,6 +108,8 @@ All numbers are from development sets. Two of them, Q-TITLE-ko and kobench, were
|
|
| 105 |
- ESCI (English): fusion with K2 adds +0.141 [+0.105, +0.181] R@10 over BM25.
|
| 106 |
- What the model is for: searching **product images** with Korean queries when the catalog lacks matching Korean text, and widening a keyword search's top 10. It is not a first-result ranker.
|
| 107 |
|
|
|
|
|
|
|
| 108 |
Query length: on Q-TITLE-ko, 27.8% of queries exceeded the old 64-token limit and 10.8% exceed 77. K2 keeps the first 57 and last 20 tokens of those, so trailing colour, size or quantity words are not cut off.
|
| 109 |
|
| 110 |
## Not claimed
|
|
|
|
| 79 |
|
| 80 |
**Model alone, R@10**
|
| 81 |
|
| 82 |
+
Three ways to call the release are reported separately: E0 for every query, K2 for every query, and the default routing (Hangul โ K2, otherwise E0).
|
| 83 |
+
|
| 84 |
+
| Query set | n | E0 only (`route="en"`) | earlier K1 | **K2 only (`route="ko"`)** | Automatic routing (default) | Teacher (1.5 GB) |
|
| 85 |
|---|---|---|---|---|---|---|
|
| 86 |
| Q-TITLE-ko: Korean product names (ABO Korean listings) | 889 | 0.368 | 0.231 | **0.645** | 0.643 | 0.682 |
|
| 87 |
| kobench: Korean template queries over ABO attributes | 173 | 0.104 | 0.069 | **0.318** | 0.318 | 0.491 |
|
|
|
|
| 92 |
- **Korean product names: K2 โ E0 = +0.277 [+0.243, +0.309] R@10** (150 product-type clusters). This is the result the release rests on.
|
| 93 |
- kobench: K2 โ E0 = +0.214 [+0.113, +0.315], but kobench has only 24 product-type clusters, below the 30 we require for a firm call, so we label it uncertain.
|
| 94 |
- K-Fashion (Korean fashion attributes, in-distribution, P@1, n = 626): E0 0.005 ยท earlier K1 **0.403** ยท K2 0.289. **K2 is worse than the earlier Korean model here.**
|
| 95 |
+
- Automatic routing on Q-TITLE-ko (0.643) is slightly below K2 only (0.645) because some ABO Korean-listing names are actually English text (no Hangul) and are sent to E0.
|
| 96 |
- English: unchanged on product names (โ0.001 [โ0.009, +0.008]), lower on listing keywords (โ0.018 [โ0.030, โ0.006]), higher on real shopping queries (+0.100 [+0.059, +0.140]). The default routing sends English queries to E0, so it gives E0's English numbers. Use `route="ko"` if your English traffic looks like ESCI.
|
| 97 |
|
| 98 |
**Fused with BM25** (reciprocal rank fusion of the two top-10 lists, k = 60; BM25 over the product title text, Korean + English names for Korean queries)
|
| 99 |
|
| 100 |
+
| Query set | BM25 R@1 | BM25 R@10 | BM25 + K2 only R@1 | BM25 + K2 only R@10 |
|
| 101 |
|---|---|---|---|---|
|
| 102 |
| Q-TITLE-ko | 0.911 | 0.993 | 0.703 | 0.991 |
|
| 103 |
| kobench | 0.139 | 0.405 | 0.179 | 0.468 |
|
|
|
|
| 108 |
- ESCI (English): fusion with K2 adds +0.141 [+0.105, +0.181] R@10 over BM25.
|
| 109 |
- What the model is for: searching **product images** with Korean queries when the catalog lacks matching Korean text, and widening a keyword search's top 10. It is not a first-result ranker.
|
| 110 |
|
| 111 |
+
Install check (not a benchmark): in a clean environment we downloaded this repository, built an EmbeddingGemma 2 index of 200 ABO development products (one per product cluster) and searched it with their Korean names using the default routing. 194 of the 200 names contain Hangul and went to K2; the other 6 Korean-listing names are English text (for example "AmazonBasics Hanging Planter, Square") and went to E0. Result: R@1 0.63, R@10 0.95. With English names (all routed to E0): R@1 0.83, R@10 1.00. The pool is tiny, so these numbers only show the files load and search correctly; use the table above for quality.
|
| 112 |
+
|
| 113 |
Query length: on Q-TITLE-ko, 27.8% of queries exceeded the old 64-token limit and 10.8% exceed 77. K2 keeps the first 57 and last 20 tokens of those, so trailing colour, size or quantity words are not cut off.
|
| 114 |
|
| 115 |
## Not claimed
|