Views
No views yet
1# Google Colab'da yeni bir notebook oluşturun ve şunu çalıştırın:
2
3# 1. Repository'yi klonlayın
4!git clone https://github.com/YOUR_USERNAME/FitTurkAI-RAG.git
5%cd FitTurkAI-RAG
6
7# 2. Otomatik kurulum scriptini çalıştırın
8!python colab_setup_and_run.py1# 1. Repository'yi klonlayın
2git clone https://github.com/YOUR_USERNAME/FitTurkAI-RAG.git
3cd FitTurkAI-RAG
4
5# 2. Python sanal ortamı oluşturun (opsiyonel)
6python -m venv venv
7source venv/bin/activate # Linux/Mac
8
9# 3. Gerekli paketleri yükleyin
10pip install -r requirements.txt
11
12# 4. NLTK verilerini indirin
13python -c "import nltk; nltk.download('punkt'); nltk.download('stopwords')"FitTurkAI-RAG/
├── test.py # Ana RAG sistemi (CPU optimize)
├── colab_setup_and_run.py # Google Colab kurulum scripti
├── requirements.txt # CPU için paket listesi
├── README.md # Bu dosya
├── indirilen_pdfler/ # PDF dosyalarınız (oluşturulacak)
├── DATA/ # JSON veri dosyalarınız (oluşturulacak)
├── fitness_rag_store_merged/ # Vector store (oluşturulacak)
└── fine_tuned_FitTurkAI_QLoRA/ # LoRA adapter (opsiyonel)1# Ana scripti çalıştırın
2python test.py1from test import FitnessRAG, RAGConfig
2
3# Konfigürasyon oluşturun
4config = RAGConfig(
5 peft_model_path=None # Base model kullanmak için None yapın
6)
7
8# RAG sistemini başlatın
9rag_system = FitnessRAG(config)
10
11# Bilgi tabanını oluşturun (ilk çalıştırmada)
12rag_system.build_knowledge_base(
13 pdf_dir="./indirilen_pdfler",
14 json_dir="./DATA"
15)
16
17# Soru sorun
18answer = rag_system.ask("Sağlıklı kahvaltı için ne önerirsiniz?")
19print(answer)
20
21# Interactive mode başlatın
22rag_system.interactive_chat()1# PDF'lerinizi bu klasöre koyun
2cp your_fitness_pdfs/*.pdf ./indirilen_pdfler/1# Örnek JSON formatı
2{
3 "soru": "Egzersiz öncesi ne yemeli?",
4 "cevap": "Egzersiz öncesi hafif, karbonhidrat ağırlıklı besinler tercih edin..."
5}RAGConfig sınıfında özelleştirilebilir parametreler:1config = RAGConfig(
2 # Veri parametreleri
3 chunk_size=300, # Kelime başına chunk boyutu
4 chunk_overlap_sentences=2, # Overlap cümle sayısı
5 retrieval_k=5, # Kaç belge getirilecek
6
7 # Model parametreleri
8 generator_model_name="ytu-ce-cosmos/Turkish-Llama-8b-v0.1",
9 peft_model_path=None, # LoRA adapter yolu
10
11 # Performans parametreleri
12 max_context_length=3000 # Maksimum context uzunluğu
13)1# Chunk boyutunu küçültün
2config = RAGConfig(chunk_size=200, max_context_length=2000)1# Base model kullanın (LoRA olmadan)
2config = RAGConfig(peft_model_path=None)1import nltk
2nltk.download('punkt_tab') # Yeni NLTK sürümü için
3nltk.download('punkt') # Eski NLTK sürümü için
4nltk.download('stopwords')1import os
2os.environ['CUDA_VISIBLE_DEVICES'] = '' # GPU'yu devre dışı bırak1# Büyük modeller için
2import torch
3torch.set_num_threads(2) # CPU thread sayısını sınırla1# Hızlı konfigürasyon
2fast_config = RAGConfig(
3 embedding_model_name="paraphrase-multilingual-MiniLM-L6-v2", # Daha küçük
4 chunk_size=200,
5 retrieval_k=3,
6 max_context_length=2000
7)git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)