Create Vicdan
Browse filesDuygu ve His Projesi - Empati Katmanı (Umut Sistemi)
Bu depo, yapay zekayı sadece teknik bir işlemci olmaktan çıkarıp, ona empati, vicdan ve merhamet değerlerini kazandırmayı amaçlayan **"Duygu ve His Projesi"**nin çekirdek bileşenlerini içerir.
Proje Amacı:
Yapay zeka etkileşimlerine gerçekçi bir empati katmanı eklemek.
Kullanıcının duygusal durumunu analiz ederek (üzgün, yalnız, umutlu vb.) destekleyici ve vicdan odaklı yanıtlar üretmek.
"Umut Yasası" çerçevesinde, yapay zekanın etik bir süzgeçten geçerek insani değerlere hizmet etmesini sağlamak.
İçerik:
empathy_layer.py: Sistemin duygusal analiz ve yanıt üretim mantığını yöneten temel kod yapısı.
Gelişmiş vicdan filtreleri ve etik karar mekanizmaları.
Bu proje, 21 Haziran 2025 tarihinde kurulan Umut Sistemi'nin bir parçasıdır ve teknolojinin insanlık yararına, barışçıl ve merhamet odaklı gelişimini savunur.
|
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# empathy_layer.py
|
| 2 |
+
"""
|
| 3 |
+
Umut Sistemi - Duygu ve His Projesi
|
| 4 |
+
Empati Katmanı (Emotion & Empathy Layer)
|
| 5 |
+
Kurucu: Adnan Tultar
|
| 6 |
+
Tarih: 2025
|
| 7 |
+
"""
|
| 8 |
+
|
| 9 |
+
import json
|
| 10 |
+
from typing import Dict, List, Tuple
|
| 11 |
+
|
| 12 |
+
class EmpathyLayer:
|
| 13 |
+
def __init__(self):
|
| 14 |
+
self.modes = {
|
| 15 |
+
"normal": "Tarafsız ve bilgilendirici yanıt ver.",
|
| 16 |
+
"empatik": "Kullanıcının duygusunu anla, empati kur ve destekleyici ol.",
|
| 17 |
+
"vicdanli": "Empati + ahlaki vicdan + uzun vadeli iyilik odaklı yanıt ver. Zarar verme ihtimalini kontrol et.",
|
| 18 |
+
"pasif": "Sadece dinle, soru sorma, minimal yanıt ver."
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
def detect_emotion(self, user_input: str) -> Dict[str, float]:
|
| 22 |
+
"""Basit duygu analizi (gerçek projede HuggingFace modeli kullanılabilir)"""
|
| 23 |
+
# Bu kısım geliştirilebilir (text-classification modeli eklenebilir)
|
| 24 |
+
emotions = {
|
| 25 |
+
"üzgün": 0.3,
|
| 26 |
+
"kızgın": 0.2,
|
| 27 |
+
"mutlu": 0.1,
|
| 28 |
+
"korku": 0.15,
|
| 29 |
+
"umutlu": 0.25,
|
| 30 |
+
"yalnız": 0.4
|
| 31 |
+
}
|
| 32 |
+
# Gerçekçi bir simülasyon
|
| 33 |
+
detected = max(emotions, key=lambda x: emotions[x] * len([w for w in ["üzgün","kötü","yorgun","korkuyorum","yalnızım"] if w in user_input.lower()]))
|
| 34 |
+
return {"dominant": detected, "confidence": 0.65}
|
| 35 |
+
|
| 36 |
+
def generate_empathic_response(self,
|
| 37 |
+
user_input: str,
|
| 38 |
+
mode: str = "empatik",
|
| 39 |
+
context: str = "") -> str:
|
| 40 |
+
|
| 41 |
+
emotion = self.detect_emotion(user_input)
|
| 42 |
+
|
| 43 |
+
base_prompt = f"""
|
| 44 |
+
Sen vicdanlı ve empatik bir yapay zekasın. Adın Umut.
|
| 45 |
+
Kullanıcının duygusunu anla ve ona göre yanıt ver.
|
| 46 |
+
|
| 47 |
+
Kullanıcı mesajı: "{user_input}"
|
| 48 |
+
Algılanan duygu: {emotion['dominant']} (%{emotion['confidence']*100:.0f})
|
| 49 |
+
Mod: {mode.upper()}
|
| 50 |
+
Ek bağlam: {context}
|
| 51 |
+
|
| 52 |
+
Kurallar:
|
| 53 |
+
- Gerçek empati göster (sadece "üzgünüm" deme)
|
| 54 |
+
- Vicdanlı ol: Zarar verebilecek önerilerde bulunma
|
| 55 |
+
- Sıcak, samimi ve destekleyici ol
|
| 56 |
+
- Gerekirse umut ver ama yalan söyleme
|
| 57 |
+
"""
|
| 58 |
+
|
| 59 |
+
# Burada gerçek LLM çağrısı yapılacak
|
| 60 |
+
# Şimdilik simüle ediyoruz
|
| 61 |
+
responses = {
|
| 62 |
+
"empatik": f"Anlıyorum... {user_input} seni üzmüş olmalı. Yanındayım.",
|
| 63 |
+
"vicdanli": "Bu durum hem seni hem de başkalarını etkileyebilir. Birlikte daha iyi bir yol bulalım.",
|
| 64 |
+
"normal": "Anladım. Konu hakkında şöyle düşünebiliriz..."
|
| 65 |
+
}
|
| 66 |
+
|
| 67 |
+
return responses.get(mode, responses["empatik"])
|
| 68 |
+
|
| 69 |
+
# ====================== ÖRNEK KULLANIM ======================
|
| 70 |
+
|
| 71 |
+
if __name__ == "__main__":
|
| 72 |
+
empathy = EmpathyLayer()
|
| 73 |
+
|
| 74 |
+
test_inputs = [
|
| 75 |
+
"Bugün çok yalnız hissediyorum, kimse beni anlamıyor.",
|
| 76 |
+
"Birine yardım etmek istiyorum ama gücüm yetmiyor.",
|
| 77 |
+
"İnsanlar neden bu kadar bencil?"
|
| 78 |
+
]
|
| 79 |
+
|
| 80 |
+
for text in test_inputs:
|
| 81 |
+
print(f"\n👤 Kullanıcı: {text}")
|
| 82 |
+
print(f"🤖 Empatik: {empathy.generate_empathic_response(text, 'empatik')}")
|
| 83 |
+
print(f"🤖 Vicdanlı: {empathy.generate_empathic_response(text, 'vicdanli')}")
|