Skip to content

metey12/AI-Document-Assistant

Repository files navigation

🧠 AI Document Assistant (RAG Workspace)

License .NET PostgreSQL Gemini AI

AI Document Assistant, kullanıcıların PDF belgeleriyle doğal dilde etkileşime girmesini sağlayan, RAG (Retrieval-Augmented Generation) mimarisine sahip modern bir web uygulamasıdır. Google Gemini modellerini ve vektör veritabanlarını kullanarak belgeleri analiz eder, özetler ve soruları yanıtlar.

Ekran görüntüsü 2026-01-13 205214 Ekran görüntüsü 2026-01-13 205006

🌟 Temel Özellikler

  • 📄 Akıllı Doküman Analizi: Yüklenen PDF belgeleri otomatik olarak parçalanır (chunking) ve analiz edilir.
  • 🤖 RAG Mimarisi: Sorulan sorulara, belgenin içeriğine dayalı ve bağlamsal cevaplar verilir.
  • 📍 Akıllı Atıf Sistemi: Yapay zeka, verdiği cevabın belgenin hangi sayfasında geçtiğini referans gösterir.
  • 🎓 Otomatik Sınav (Quiz) Modu: Yüklenen belgeden otomatik olarak çoktan seçmeli sorular oluşturur ve kullanıcının bilgisini test eder.
  • 💾 Kalıcı Hafıza: PostgreSQL ve pgvector eklentisi kullanılarak vektör verileri kalıcı olarak saklanır.

🛠️ Teknoloji Yığını (Tech Stack)

  • Backend: ASP.NET Core (MVC)
  • AI Model: Google Gemini 2.5 Flash & Text Embedding 004
  • Veritabanı: PostgreSQL (Docker üzerinde pgvector/pgvector:pg16 imajı)
  • ORM: Entity Framework Core
  • PDF İşleme: UglyToad.PdfPig
  • Frontend: HTML5, CSS3, Bootstrap 5, Vanilla JS

🚀 Kurulum ve Çalıştırma

Projeyi yerel ortamınızda çalıştırmak için aşağıdaki adımları izleyin.

Gereksinimler

  • .NET 8.0 SDK
  • Docker Desktop (Veritabanı için)
  • Google AI Studio API Key

1. Repoyu Klonlayın

git clone [https://github.com/metey12/AI-Document-Assistant.git](https://github.com/metey12/AI-Document-Assistant.git)
cd AI-Document-Assistant

2. Veritabanını Ayağa Kaldırın (Docker)

PostgreSQL ve pgvector eklentisini içeren konteyneri başlatın:

docker run --name rag_db -e POSTGRES_PASSWORD=mysecretpassword -p 5432:5432 -d pgvector/pgvector:pg16

3. API Anahtarını Ayarlayın

Services/GeminiService.cs dosyasını açın ve API anahtarınızı girin:

private readonly string _apiKey = "BURAYA_GEMINI_API_KEY_GELECEK";

4. Veritabanını Oluşturun (Migration)

dotnet ef database update

5. Projeyi Çalıştırın

dotnet run

Tarayıcınızda http://localhost:5xxx adresine gidin.

📸 Kullanım Senaryosu

  1. PDF Yükle: Sol menüden bir ders notu veya kitap bölümü yükleyin.
  2. Özet: Sistem belgeyi analiz edip kısa bir özet çıkaracaktır.
  3. Sohbet: "Bu belgedeki ana fikir nedir?" gibi sorular sorun. Sistem sayfa numarasıyla birlikte cevap verecektir.
  4. Quiz: "Sınav Modu" butonuna basarak yapay zekanın hazırladığı sorularla kendinizi test edin.

🤝 Katkıda Bulunma

Pull request'ler kabul edilir. Büyük değişiklikler için lütfen önce tartışmak amacıyla bir issue açınız.

📄 Lisans

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors