Skip to content

MrEon50/NeuroNote

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

NeuroNote

Prototyp systemu treningu modeli językowych z metrykami PKI (Punkt Koherencji Informacyjnej) i pamięcią kontekstową.

Opis

NeuroNote implementuje eksperymentalną architekturę łączącą:

  • PKI-DRM: Metryki koherencji informacyjnej z dynamicznymi regułami optymalizacji
  • Memory-Enhanced: System pamięci kontekstowej z logicznym rozumowaniem
  • Polski GPT-2: Bazuje na flax-community/papuGaPT2

Struktura projektu

NeuroNote/
├── main.py                     # CLI aplikacja (5 opcji menu)
├── pki_drm_trainer.py         # PKI + DRM implementacja
├── memory_enhanced_trainer.py # System pamięci i rozumowania
├── improved_pki_calculator.py # Kalkulacje metryk PKI
├── trainer.py                 # Standardowy trainer
├── chat_engine.py             # Silnik konwersacji
├── config.py                  # Konfiguracja RTX
├── utils.py                   # Funkcje pomocnicze
├── settings.txt               # Parametry treningu
├── semantics.txt              # Instrukcje dla modelu
├── requirements.txt           # Zależności
└── example_data/              # Przykładowe dane

Wymagania

Sprzęt

  • GPU: NVIDIA RTX (zalecane 8GB+ VRAM)
  • RAM: 16GB+
  • Dysk: 2GB wolnego miejsca

Oprogramowanie

pip install -r requirements.txt

Główne zależności:

  • torch>=2.0.0
  • transformers>=4.30.0
  • numpy>=1.21.0

Instalacja

  1. Sklonuj/pobierz projekt
  2. Zainstaluj zależności: pip install -r requirements.txt
  3. Uruchom: python main.py

Użycie

Menu główne

python main.py

Opcje:

  1. Trenuj model - PKI-DRM training z metrykami koherencji
  2. Zapisz model - Eksport wytrenowanego modelu
  3. Wczytaj model - Import zapisanego modelu
  4. Chat - Konwersacja z Memory-Enhanced
  5. Wyjście

Przykład treningu

1. Wybierz opcję 1
2. Podaj folder z danymi (np. "example_data")
3. Obserwuj metryki PKI w czasie rzeczywistym
4. Model zapisuje się automatycznie jako universal_trained_model.pt

Przykład chatu

1. Wczytaj model (opcja 3)
2. Wybierz opcja 4 (Chat)
3. Zadawaj pytania:
   - "5+3" → "5+3=8"
   - "co to jest ptak" → "Ptak to zwierzę mające pióra..."

Architektura

PKI (Punkt Koherencji Informacyjnej)

  • Formula: P = C^α × S^β
  • C (Coherence): Cosine similarity między wektorami reprezentacji
  • S (Selection): Koncentracja rozkładu posterior (entropia)
  • Zakres: C ∈ [0.02, 0.8], S ∈ [0, 1]

DRM (Dynamic Rule Matrix)

Adaptacyjne reguły learning rate:

  • PKI > 0.5: LR × 1.0 (kontynuuj)
  • PKI 0.2-0.5: LR × 0.8 (stabilizuj)
  • PKI < 0.2: LR × 1.5 (zwiększ)
  • Stagnacja: LR × 2.0 (diversyfikuj)

Memory-Enhanced

[INPUT] → [MEMORY] → [REASONING] → [MODEL] → [CLEAN] → [OUTPUT]

Komponenty:

  • MemoryCell: 100 komórek kontekstu z importance decay
  • LogicalReasoner: Matematyka, definicje, Q&A patterns
  • Response Cleaner: Scoring zdań, usuwanie artefaktów

Konfiguracja

settings.txt

[TRAINING]
learning_rate = 1e-5
batch_size = 1
max_steps = 500
gradient_clip = 1.0

[PKI]
alpha = 1.0
beta = 1.0
coherence_threshold = 0.3

semantics.txt

Zawiera instrukcje i przykłady dla modelu (matematyka, definicje, konwersacja).

Pliki wyjściowe

  • universal_trained_model.pt - Model po treningu PKI-DRM
  • pki_drm_trained_model.pt - Backup modelu
  • Własne nazwy przez opcję 2 (Zapisz model)

Struktura pliku modelu:

{
    'model_state_dict': ...,
    'training_stats': {'pki_scores': [...], 'losses': [...]},
    'model_type': 'universal_trained',
    'original_type': 'pki_drm_trained',
    'tokenizer_name': 'flax-community/papuGaPT2'
}

Ograniczenia

Techniczne

  • Skalowalność: Pairwise cosine similarity O(n²) dla wektorów
  • Pamięć: 100 komórek bez LRU/LFU, brak persistence
  • DRM: Proste reguły LR, brak integracji z gradient norms

Koncepcyjne

  • Metryki PKI: Arbitralne zakresy, wymaga kalibracji na walidacji
  • Memory: Brak embeddings index, trudna generalizacja
  • Bezpieczeństwo: Prototyp, nie dla produkcji

Bezpieczeństwo

⚠️ OSTRZEŻENIA:

  • Brak samodzielnej modyfikacji wag podczas inference
  • Wszystkie aktualizacje modelu tylko w kontrolowanym treningu
  • Walidacja metryk i parametrów wymagana
  • Nie używać w środowisku produkcyjnym bez audytu

Rozwój

Planowane ulepszenia

  • FAISS/Milvus dla memory retrieval
  • ReduceLROnPlateau zamiast prostych reguł DRM
  • Formalizacja PKI z α,β uczonymi na walidacji
  • Reward model z human-in-the-loop

Znane problemy

  • Coherence może być zafałszowana przez clamp [0.02, 0.8]
  • Clean_response może obcinać poprawne odpowiedzi
  • Brak obsługi długich sesji (memory overflow)

Licencja

Projekt eksperymentalny. Użycie na własną odpowiedzialność.

Kontakt

Projekt badawczy - implementacja teorii PKI-DRM z Memory-Enhanced architecture.

About

eksperymentalna architektura dla modeli językowych trenująca na plikach tekstowych txt

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published