Back to projects

IFS Türkiye R&D internship project2026Backend and AI application development

AI Summarization Platform

A bilingual LLM platform that turns summarization into a complete product flow with language/output validation, user history, PDF export, text-to-speech, feedback, and controlled access.

  • Turkish/English summaries with language validation
  • PDF export, TTS, and history
  • JWT and rate limiting
TextLanguage checkSummaryPDF / TTS
Flow from text through validation to summary and PDF/TTS output. Text request → Summarization → Output checks → Consumption.
Role

Backend and AI application development

Context

IFS Türkiye R&D internship project · 2026

Core stack

Python · Django REST · LLM · JWT

Scale

TR/EN validation · PDF · TTS · feedback

Overview

The platform does not stop at a single model call; it turns summarization into a product flow completed by language/output checks, export, text-to-speech, and feedback.

Problem and goal

Producing a usable summary in the requested language requires more than sending a generation prompt. User history, feedback, and access boundaries also need management.

My role

  • Developed Django REST summarization and user flows.
  • Integrated TR/EN language/output checks, PDF export, and text-to-speech.
  • Implemented JWT/refresh token, rate limiting, recent summaries, and feedback flows.

Solution

  • Request and language checks ran before generation; output checks ran afterward.
  • Summaries were retained in user history and made available through PDF and TTS formats.
  • Helpful/not-helpful feedback was captured as a separate record flow.

Architecture

The system’s main components and data/decision flow are separated as follows.

System overview
01Text requestIdentity, limit, and language checks
02SummarizationLLM service layer
03Output checksLanguage and format validation
04ConsumptionHistory · PDF · TTS · feedback

Tech stack

Django REST Framework

API, user, and history flows

LLM

Turkish and English summary generation

JWT · rate limiting

Access and resource boundaries

PDF · TTS

Alternative output channels

Implementation decisions

  • Decouple the model provider from the application contract.
  • Apply rate limiting and identity flows around the AI call.
  • Design language and output validation as separate stages.

Results and evaluation

  • Built an application flow combining summarization, validation, export, TTS, history, and feedback.

Challenges and solutions

  • Output consistency → add language and format checks to the generation pipeline.
  • Resource use → bound calls through identity and rate limiting.

What I learned

The work reinforced that productizing an LLM feature also means designing validation, access, feedback, and output channels around the model response.

Next projectAI-Powered Predictive Maintenance & ERP Decision Support