Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -53,17 +53,32 @@ def refine_label_with_llm(entity_text, full_sentence, wiki_context, custom_label
|
|
| 53 |
# 2. Sistematik CoT ve Kuralların Tanımlanması
|
| 54 |
|
| 55 |
prompt = f"""
|
| 56 |
-
Sen yüksek hassasiyetli bir semantik analiz uzmanısın.
|
| 57 |
-
Görevin, '[[{entity_text}]]' varlığını aşağıdaki 4 adımlı Sistematik CoT protokolüne göre sınıflandırmaktır.
|
| 58 |
|
| 59 |
ETİKET TANIMLARI:
|
| 60 |
{label_rules}
|
| 61 |
|
| 62 |
SİSTEMATİK CoT ADIMLARI:
|
| 63 |
-
Adım 1
|
| 64 |
-
Adım 2
|
| 65 |
-
Adım 3
|
| 66 |
-
Adım 4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 67 |
|
| 68 |
GÜNCEL GÖREV:
|
| 69 |
- HEDEF VARLIK: {entity_text}
|
|
@@ -82,7 +97,6 @@ Cevap: [SADECE_ETIKET_ADI]
|
|
| 82 |
|
| 83 |
|
| 84 |
|
| 85 |
-
|
| 86 |
messages = [{"role": "user", "content": prompt}]
|
| 87 |
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
|
| 88 |
model_inputs = tokenizer([text], return_tensors="pt").to(device)
|
|
|
|
| 53 |
# 2. Sistematik CoT ve Kuralların Tanımlanması
|
| 54 |
|
| 55 |
prompt = f"""
|
| 56 |
+
Sen yüksek hassasiyetli bir semantik analiz uzmanısın. Görevin, '[[{entity_text}]]' varlığını aşağıdaki 4 adımlı Sistematik CoT protokolüne göre sınıflandırmaktır.
|
|
|
|
| 57 |
|
| 58 |
ETİKET TANIMLARI:
|
| 59 |
{label_rules}
|
| 60 |
|
| 61 |
SİSTEMATİK CoT ADIMLARI:
|
| 62 |
+
Adım 1: Wikipedia'dan gelen bilgileri ("{wiki_context}") analiz et. Varlığın temel niteliğini (kişi mi, yazılım mı, sanat eseri mi?) belirle.
|
| 63 |
+
Adım 2: Bu nitelikleri {custom_labels} listesindeki 'tanim' alanlarıyla karşılaştır. Wikipedia'daki anahtar kelimeler ile etiket tanımlarındaki anahtar kelimeleri eşleştir.
|
| 64 |
+
Adım 3: En yüksek anlamsal benzerliğe sahip etiketi RAG sonucu olarak seç. Eğer Wikipedia bilgisi yetersizse, orijinal cümledeki ("{full_sentence}") fiil ve niteleyicilere (örn: "yazdı", "kuruldu", "işletim sistemi") odaklan.
|
| 65 |
+
Adım 4: Kararını somut kanıtlara dayandır. Eğer hiçbir etiket tanımına uyum sağlanamazsa MISC değerini koru.
|
| 66 |
+
|
| 67 |
+
FEW-SHOT ÖRNEKLERİ:
|
| 68 |
+
|
| 69 |
+
ÖRNEK 1:
|
| 70 |
+
- CÜMLE: "1984, distopik bir geleceği anlatan en önemli romandır."
|
| 71 |
+
- VARLIK: 1984
|
| 72 |
+
- WIKIPEDIA: "1984 (roman), George Orwell tarafından yazılmış distopik bir kitaptır. Ayrıca 1984 bir takvim yılıdır."
|
| 73 |
+
- ANALİZ: [Adım 1: Wiki hem yıl hem kitap diyor. Adım 2: Cümlede 'roman' ve 'anlatan' geçiyor, bu BOOK tanımına uyar. Adım 3: BOOK seçildi. Adım 4: Cümledeki 'roman' ifadesi kitap türünü ifade eder.]
|
| 74 |
+
- CEVAP: BOOK
|
| 75 |
+
|
| 76 |
+
ÖRNEK 2:
|
| 77 |
+
- CÜMLE: "Sistem Windows üzerinde sorunsuz çalışıyor."
|
| 78 |
+
- VARLIK: Windows
|
| 79 |
+
- WIKIPEDIA: "Microsoft Windows, kişisel bilgisayarlar için geliştirilmiş bir işletim sistemidir."
|
| 80 |
+
- ANALİZ: [Adım 1: Wiki bunun bir işletim sistemi olduğunu doğruluyor. Adım 2: SOFTWARE tanımı 'işletim sistemleri ve dijital araçlar'ı kapsıyor. Adım 3: SOFTWARE seçildi. Adım 4: Wiki'deki 'işletim sistemi' tanımıyla tam eşleşme sağlandı.]
|
| 81 |
+
- CEVAP: SOFTWARE
|
| 82 |
|
| 83 |
GÜNCEL GÖREV:
|
| 84 |
- HEDEF VARLIK: {entity_text}
|
|
|
|
| 97 |
|
| 98 |
|
| 99 |
|
|
|
|
| 100 |
messages = [{"role": "user", "content": prompt}]
|
| 101 |
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
|
| 102 |
model_inputs = tokenizer([text], return_tensors="pt").to(device)
|