Y.E.CAN
 

Yaşar Enis Can

AI Engineering Student · LLM evaluation · RAG pipelines · AI for finance

Artificial Intelligence Engineering student at Bahçeşehir University and Microsoft AI Innovators intern, building on-device LLM systems and measuring them rigorously: bilingual (English/Turkish) RAG evaluation with confidence intervals, and a credit-analysis assistant that reads Turkish company filings with verified, source-linked outputs. Seeking an AI/ML Engineering internship, with a particular interest in AI for banking and finance.

01

Education & Certifications

Bahçeşehir University (BAU) — Istanbul, Turkey

Aug 2023 – Present
B.Sc. in Artificial Intelligence Engineering (100% English)
Relevant coursework: Linear Algebra, Statistics & Probability, Principles of AI, Calculus, Data Structures, Introduction to Optimization.

75. Yıl Fen Lisesi — Akdeniz, Mersin

Graduated
Science High School Diploma · 92/100 GPA

CS50x: Introduction to Computer Science — Harvard University

in progress

Machine Learning Specialization — DeepLearning.AI, Andrew Ng

in progress
02

Experience

AI Intern — AI Innovators Internship Program

Microsoft · Remote · Summer 2026

Project-based internship program (certificate of completion). Built Local RAG Assistant: a fully offline Q&A assistant on Microsoft Foundry Local — no cloud, no API keys, no data leaving the machine. github.com/eniscan17/local-rag-assistant

pipeline — click to trace a query
document→ chunking→ embedding→ cosine retrieval→ relevance guardrail→ answer
Example query: "What does the guide say about installation?"
click "run pipeline" to see it answer that query, step by step.
32
automated eval cases
0%
false refusals
100%
out-of-scope refused
  • Designed the full pipeline: chunking → embedding → SQLite vector retrieval → local chat model, with a Streamlit UI.
  • Fixed a model-faithfulness failure (small models answering from general knowledge) with a deterministic relevance-threshold guardrail, verified by a 32-case automated eval harness.
03

Projects

01

Credit Analysis Assistant (Turkish filings, KAP)

github.com/eniscan17/credit-analysis-assistant

The first steps of a bank's corporate credit analysis, automated on public filings of 10 BIST companies (112 reports). Numbers come from code, never from a language model: ratios from XBRL statements, with inflation-accounting restatement and trailing-12-month figures. A local LLM reads only the narrative notes (lawsuits, fines), and every claim it makes is checked against the cited PDF page.

early-warning flags, latest filing (H1 2026) — pick a company
select a company above to see its flags.
4/4
material legal matters, held-out year
9/10
FX position, held-out year
112
reports processed
  • Ratios (net debt/EBITDA, interest coverage, liquidity, refinancing risk) validated against the companies' published figures; threshold breaches become early-warning flags.
  • Net FX position read from the notes by layout-aware rules: 9/10 on a held-out year, where the LLM alone scored 7/10 by picking last year's column.
  • Lawsuits and regulatory fines extracted by qwen2.5-7b and kept only if the quote and its figures appear on the cited page. On FY2024 reports labelled before the run, it found 4/4 material matters, including a 1.3 bn TL competition fine disclosed as a subsequent event.
  • Generates a one-page Turkish credit summary per company, every figure linked to its KAP source page.
02

Bilingual RAG Evaluation (EN/TR)

github.com/eniscan17/local-rag-assistant

Independent follow-up to the internship project. On XQuAD — 1,190 Wikipedia questions professionally translated into both English and Turkish — the same questions are asked in both languages, so any gap comes from language alone. Every stage is measured separately, with 95% bootstrap confidence intervals.

turkish answer quality (F1) — same 300 questions, app's retriever
0
phi-3.5-mini
(before)
0
qwen2.5-7b
(now default)
The finding: fixing Turkish retrieval did not improve Turkish answers — even given the correct passage, the small model scored 51 F1 in Turkish vs 77 in English. The bottleneck had moved to the generator. A stronger on-device model closed most of the gap.
74.5→89.5%
turkish top-1 retrieval
+25 F1
turkish answers
26→10
EN/TR gap (F1 pts)
  • Turkish-aware hybrid retrieval (multilingual-e5 + stemmed BM25, rank fusion) raised Turkish top-1 retrieval from 74.5% to 89.5% with a 5x smaller embedding model.
  • End-to-end answer evaluation (EM/F1) under four conditions — no context, gold passage only, new and old retriever — separated retrieval errors from generation errors.
  • Switching to qwen2.5-7b raised Turkish answer F1 by 25 points (43.6 → 68.7); verified on the app's own test set (0% false refusals) before making it the default.
03

On-Device AI Agents

tool-calling-agent data-insights-agent

Two Foundry Local agents: a tool-calling agent that chains a calculator, Wikipedia, date/time and a local knowledge base, and a data-analysis agent that runs real pandas/matplotlib tools on uploaded CSVs instead of guessing numbers.

routing logic — try a query (simulated)
select a query above to see the router's decision.
  • Found that small on-device models labelled tool-capable often skip tool calls silently; fixed it with deterministic pre-routing and context injection.
  • Shipped with Streamlit UIs, pytest suites and CI; findings and edge cases documented on GitHub.
04

LSTM/GRU Stock Price Prediction

honest negative result github.com/eniscan17/lstm-stock-prediction

A from-scratch PyTorch time-series pipeline predicting next-day stock returns — then, instead of stopping at "the model beats a baseline," I tested whether it would actually make money as a real trading strategy. It doesn't, and this section shows that on purpose: catching an overclaim before it ships is the point.

total return, test period — strategy vs. buy & hold
The result that matters most: a small, statistically real RMSE edge over the naive baseline did not survive being turned into an actual trading strategy. After transaction costs, both models lost to simply buying and holding — verified across 5 random seeds, not one lucky run.
0%
Buy & Hold
0%
LSTM strategy
0%
GRU strategy
  • Fixed a modeling bug across 3 iterations: predicting raw price lost to the naive baseline by 6-7x; predicting returns instead closed the gap.
  • Backtested it as real trades with transaction costs: both models consistently lost to buy-and-hold — a validated negative result that changed the project's real conclusion, before any real capital was involved.
04

Skills & Traits

Programming Languages

PythonCC++

AI / LLM Systems

RAG pipelines Hybrid retrieval (BM25 + dense) LLM evaluation (EM/F1, bootstrap CIs) Agentic tool-calling Embeddings & vector search Prompt engineering LLM reliability guardrails

Data & ML

NumPyPandasPyTorchsentence-transformersXBRL financial statementsCredit ratiosPDF table & text extraction

Platforms & Tools

Microsoft Foundry Local SQLite Streamlit Git / GitHub PyCharm Jupyter Notebook VS Code

Languages

English — B2 (Upper-Intermediate)Turkish — Native
Self-driven builder
Continued my internship project independently into a full evaluation study; every project is open source and documented.
Measure, don't assume
I report negative results too: the stock model lost to buy-and-hold, and better retrieval alone did not fix Turkish answers.
05

Contact

email
yasarenis.can@bahcesehir.edu.tr
phone
+90 535 354 36 87
↗ linkedin.com/in/yasar-enis-can ↗ github.com/eniscan17