-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlaptop.ini
231 lines (185 loc) · 6.01 KB
/
laptop.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
[main]
# ---------------
# HTML DOWNLOADER
# ---------------
# Digunakan crawler.py. Jika tidak ditetapkan maka akan dibuat direktori "tmp"
# di home.
;base_download_dir = /home/sugiana/tmp
# Digunakan downloader.py berisi daftar tautan produk sesuai kategori. Jika di
# antaranya memuat produk lain seperti plastik bubble atau kotak kayu maka akan
# ditetapkan oleh AI sebagai kategori "lainnya". Jadi tidak masalah tercampur.
# Sifatnya wajib.
url =
https://www.tokopedia.com/nvidiageforcelt/product
https://www.tokopedia.com/nvidiageforce/product
https://www.tokopedia.com/lenovojakarta/product
https://www.tokopedia.com/dell-premium-official/product
https://www.tokopedia.com/dellflagship/product
https://www.tokopedia.com/asus/product
https://macstore.id/product-category/macbook
https://www.tokopedia.com/msi-official/product
https://www.tokopedia.com/hp/etalase/semua-laptop
https://www.tokopedia.com/acer-jakarta/product
https://www.tokopedia.com/axioo-indonesia/product
https://www.tokopedia.com/zyrex/product
https://www.tokopedia.com/glorycomputerr/product
# ------------
# AKAL IMITASI
# ------------
# Hal AI digunakan oleh to_category.py.
# Ini adalah "system prompt" yang mengawali "user prompt". Tujuannya untuk
# mendapatkan jawaban yang lebih tepat. Saat ini hanya digunakan oleh Ollama.
# Sifatnya tidak wajib.
;role =
; Kamu adalah seorang yang pendiam. Jawabanmu selalu singkat dan tanpa
; asesoris kata seperti tambahan 2 karakter bintang ( ** ) untuk menebalkan,
; dan sejenisnya
# - AI: Ollama -
# Digunakan to_category.py, berisi tautan web service Ollama.
# Sifatnya tidak wajib jika gemini_url aktif.
ollama_url = http://localhost:11434
# Model Ollama yang digunakan. Daftarnya bisa lihat dengan perintah "ollama list".
# Sifatnya wajib jika ollama_url aktif.
ollama_model = gemma2
# - AI: Gemini -
# Tautan web service Gemini. Jika ini aktif maka ollama_url diabaikan.
;gemini_url = https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=YOUR-API-KEY
;gemini_url = https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp:generateContent?key=YOUR-API-KEY
;gemini_url = https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-thinking-exp-01-21:generateContent?key=YOUR-API-KEY
# - Prompt -
# Digunakan to_category.py untuk menetapkan prompt_template di bawah sebagai
# kategori apa. Jika pertanyaan terkait field category dijawab "tidak" maka
# category diisi dengan "lainnya".
# Sifatnya wajib.
category = laptop
# Hanya tanya ke AI bila sesuai filter. Selain itu akan ditetapkan ke kategori
# "lainnya". Filter ini digunakan oleh DataFrame.query().
# Bila di filter ditemukan "stock > 0" maka downloader.py hanya akan membaca
# yang ada stoknya saja.
# Sifatnya tidak wajib.
filter = stock > 0
# {desc} akan diganti dengan gabungan field title dan description.
# Sifatnya wajib.
prompt_template =
Berikut ini diduga spesifikasi laptop.
{desc}
Jawab pertanyaan berikut dalam bentuk JSON dictionary sesuai nomor urut.
1. Apakah ini sebuah laptop ? Jawab "ya" atau "bukan".
Jika "ya" maka lanjut jawab ini:
2. Apa mereknya ? Satu kata saja.
3. Kalimat mana yang menunjukkan processor ? Singkat saja.
4. Apa brand prosesornya ? Satu kata saja.
5. Kalimat mana yang menunjukkan graphic adapter ? Singkat saja.
6. Memori graphic adapter berapa gigabyte ? Tampilkan angka saja.
7. Apa brand graphic adaptor-nya ? Satu kata saja.
8. Kalimat mana yang menunjukkan kapasitas memori ? Singkat saja.
9. Memori berapa gigabyte ? Tampilkan angka saja.
10. Kalimat mana yang menunjukkan kapasitas storage ? Singkat saja.
11. Storage berapa gigabyte ? Tampilkan angka saja.
12. Kalimat mana yang menunjukkan ukuran monitor ? Singkat saja.
13. Monitornya berapa inchi ? Tampilkan angka saja.
14. Kalimat mana yang menunjukkan berat ? Singkat saja.
15. Beratnya berapa kilogram ? Sebut angka saja.
# Urutan kolom sesuai prompt_template.
# Sifatnya wajib.
columns =
category
brand_name
processor
processor_name
graphic
graphic_gb
graphic_name
memory
memory_gb
storage
storage_gb
monitor
monitor_inch
weight
weight_kg
# ---------
# repair.py
# ---------
# Sebuah laptop wajib ada informasi processor. Jika tidak ada maka akan
# ditetapkan sebagai kategori "lainnya".
# Sifatnya tidak wajib.
not_null_columns =
processor
# - Numeric -
# Jika nama kolom berakhiran underscore ( _ ) ditambah numeric unit (contoh:
# memory_gb) maka nilainya akan diuji dengan fungsi float(). Jika gagal maka
# diganti dengan None.
# Sifatnya tidak wajib.
numeric_units =
gb
inch
kg
# Jika nilainya di luar batas maka akan dikosongkan
range_values =
monitor_inch:7,20
graphic_gb:1,32
weight_kg:0.5,10
# --------
# check.py
# --------
# Menjalankannya tidaklah wajib. Ini membantu kita memeriksa kebenaran data.
# Daftar kolom yang akan dihitung jumlah produknya:
# SELECT column, count(*) FROM ... GROUP BY 1
count_columns =
brand_name
processor_name
graphic_name
memory_gb
storage_gb
graphic_gb
monitor_inch
# Daftar kolom yang akan dihitung nilai minimum dan maksimumnya:
# SELECT column, min(column), max(column) FROM ... GROUP BY 1
min_max_columns =
weight_kg
price
# - Name -
# Nama kolom yang berakhiran "_name" nilainya akan dicek berdasarkan daftar
# ini. Misalkan AI menetapkan brand_name = MacBook maka repair.py mengubahnya
# menjadi Apple. Ia juga peduli huruf kecil dan besar. Jadi bila AI bilang
# brand_name = LENOVO maka akan diubah menjadi Lenovo. Untuk ASUS tidak berubah
# sesuai yang terdaftar.
[brand_name]
Apple =
MacBook
ASUS =
Dell =
Latitude
Lenovo =
Zyrex =
Maveric
[processor_name]
AMD =
Ryzen
Apple =
M2
M2 PRO
M3
M3 PRO
M4
Qualcomm =
Snapdragon
[graphic_name]
AMD =
Vega
Radeon
Apple =
M2
M3
Intel =
HD
Integrated
IRIS
UHD
UMA
NVIDIA =
GeForce
RTX
Qualcomm =
Adreno