Skip to content
View ysl727727's full-sized avatar

Block or report ysl727727

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please donโ€™t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
ysl727727/README.md

TIL Document Search

๐Ÿ‘‹ About

I'm working through the KANT Private LLM Engineer program, step by step from machine-learning fundamentals to RAG, AI agents, LLMOps and model serving. I learn by building the pieces LLMs need in real work โ€” document search, information extraction and API servers. ๋ถ€๋™์‚ฐํ•™ ์ „๊ณต ๊ฒฝํ—˜์„ ์‚ด๋ ค, ๋„๋ฉ”์ธ ์ง€์‹์ด ํ•„์š”ํ•œ ๋ฌธ์ œ์— LLM์„ ์—ฐ๊ฒฐํ•ด ๋ณด๋Š” ๋ฐ ๊ด€์‹ฌ์ด ๋งŽ์Šต๋‹ˆ๋‹ค.

๐Ÿ”ญ Current Focus

์ง€๊ธˆ์€ LLM์„ ์‹ค์ œ ์„œ๋น„์Šค๋กœ ์—ฐ๊ฒฐํ•˜๋Š” ๊ตฌ์กฐ์™€ ์•ˆ์ •์ ์ธ ์šด์˜ ๋ฐฉ๋ฒ•์— ์ง‘์ค‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • LLM application structure โ€” LangChain Prompt โ†’ Model โ†’ Parser, structured output and validation
  • Backends for LLMs โ€” designing document, query and Q&A APIs with FastAPI + Pydantic
  • Reliable external calls โ€” timeouts, bounded retries, backoff + jitter, fallbacks
  • Reproducible experiments โ€” baselines, train / validation / test splits, leakage checks, experiment logs
  • Deployment โ€” AWS DevOps course (๋ฐฐํฌ๊นŒ์ง€ ํ•ด๋‚ด๋Š” ๊ฐœ๋ฐœ์ž) in parallel

๐Ÿ› ๏ธ Tech Stack

Area Stack
Language Python
Data ยท ML NumPy pandas scikit-learn
Deep Learning PyTorch Hugging Face
LLM ยท Backend LangChain OpenAI API FastAPI Pydantic
Tools Git Jupyter Colab uv

๐Ÿ“Œ Featured Work

๐Ÿ—๏ธ Housing Notice Q&A Chatbot In progress

์ฒญ์•ฝํ™ˆ ์ž…์ฃผ์ž๋ชจ์ง‘๊ณต๊ณ ๋ฌธ PDF๋ฅผ ์ฝ๊ณ  ๋ถ„์–‘๊ฐ€ยท์ผ์ •ยท๋Œ€์ถœยทํŠน๋ณ„๊ณต๊ธ‰ ์กฐ๊ฑด์— ๋‹ตํ•˜๋Š” ๋กœ์ปฌ LLM ์ฑ—๋ด‡์ž…๋‹ˆ๋‹ค.

  • Collected 30 notices and built a 20-item evaluation answer set (schema design โ†’ review โ†’ audit)
  • Numbers are calculated in code, not by the LLM, and every answer cites the original sentence from the notice
  • Local serving with FastAPI + Ollama in Docker, designed so vLLM can be swapped in
  • Comparing 20 ways to read PDF tables (4 rule-based ยท 16 LLM-based)
  • ๊ณต๊ณ ๋ฌธ๋งˆ๋‹ค ํ‘œ ํ˜•์‹์ด ๋‹ฌ๋ผ์„œ, ์–ด๋–ค ๋ฐฉ๋ฒ•์ด ๊ฐ€์žฅ ์ •ํ™•ํ•œ์ง€ ์ง์ ‘ ๋น„๊ตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Keyword baseline๊ณผ TF-IDF ๊ฒ€์ƒ‰์„ ๊ตฌํ˜„ํ•˜๊ณ  Precision@3, MRR๋กœ ์„ฑ๋Šฅ์„ ๋น„๊ตํ•œ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

  • Text preprocessing and TF-IDF vectorization
  • Cosine similarity implemented with NumPy
  • Search evaluation set with Precision@3 and MRR
  • Failure-case analysis and title-weighting experiments

๋งค๋ฌผ ๊ด‘๊ณ ๊ฐ€ ๊ตญํ† ๊ตํ†ต๋ถ€ ํ‘œ์‹œยท๊ด‘๊ณ  ๊ธฐ์ค€์— ์–ด๊ธ‹๋‚˜๋Š”์ง€ ํŒ์ •ํ•˜๋Š” ์–ด์‹œ์Šคํ„ดํŠธ๋ฅผ ๊ฐ€์ •ํ•˜๊ณ , ๋งž๋Š” ๋กœ์ปฌ ๋ชจ๋ธ์„ ์‹คํ—˜์œผ๋กœ ๊ณจ๋ž์Šต๋‹ˆ๋‹ค.

  • Compared gemma3:4b and qwen3:4b-instruct at the same size (4B) and quantization (Q4_K_M)
  • 10 questions (normal ยท edge ยท out-of-scope), 40 runs in total, measuring quality and speed (RTX 5060 Laptop, 8 GB VRAM)
  • Answer accuracy: gemma3 57.0% vs qwen3 80.8% โ€” selected qwen3:4b-instruct
  • Ran the same questions against a cloud API to check whether local operation is viable

KANT ๊ณผ์ •์—์„œ ๋ฐฐ์šฐ๊ณ  ์ง์ ‘ ๊ฒ€์ฆํ•œ ๋‚ด์šฉ์„ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. Exercises are marked done only when I have run them and can explain them.

Track Coverage
Machine Learning Model evaluation, ensembles, biasโ€“variance, imbalance & cross-validation, CV tuning
Deep Learning PyTorch, MLP ยท CNN ยท RNN, Attention, tokenization, fine-tuning, PEFT
LLM in Practice Logits ยท loss ยท optimizers, reliable LLM API calls
Data Engineering API collection, cleaning & RAG document sets, FastAPI ยท Pydantic, async calls
LangChain App structure, prompt templates, output parsers, LCEL, retrievers

๐Ÿ—บ๏ธ Learning Roadmap

flowchart LR
    A[Machine Learning] --> B[Deep Learning] --> C[Transformer & LLM] --> D[LLM Application]
    D --> E[RAG] --> F[AI Agent] --> G[LLMOps] --> H[Private LLM Serving]

    classDef done fill:#dcfce7,stroke:#16a34a,color:#14532d
    classDef now fill:#fef3c7,stroke:#d97706,color:#78350f
    classDef next fill:#f3f4f6,stroke:#9ca3af,color:#374151
    class A,B,C done
    class D now
    class E,F,G,H next
Loading

๐ŸŒฑ Background

  • B.A. in Real Estate, Konkuk University, Seoul (๊ฑด๊ตญ๋Œ€ํ•™๊ต ์„œ์šธ์บ ํผ์Šค ๋ถ€๋™์‚ฐํ•™๊ณผ)
  • ๋ถ€๋™์‚ฐ ๋ฒ•๊ทœยท๊ณ ์‹œ๋ฅผ ์ฝ๊ณ  ํŒ๋‹จ ๊ธฐ์ค€์œผ๋กœ ์ •๋ฆฌํ•˜๋Š” ๋„๋ฉ”์ธ ์ดํ•ด โ€” ํ—ˆ์œ„๋งค๋ฌผ ํƒ์ง€ ์–ด์‹œ์Šคํ„ดํŠธ์—์„œ ๊ตญํ† ๋ถ€ ํ‘œ์‹œยท๊ด‘๊ณ  ๊ธฐ์ค€์„ ํ‰๊ฐ€ ๋ฌธํ•ญ์œผ๋กœ ์„ค๊ณ„
  • KANT Private LLM Engineer program

๐Ÿ’ก What I Value

  • ๋ชจ๋ฅด๋Š” ๋ถ€๋ถ„์€ ์ถ”์ธกํ•˜์ง€ ์•Š๊ณ  ์ง์ ‘ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  • ๋†’์€ ์ˆซ์ž ํ•˜๋‚˜๋ณด๋‹ค ๋ฌธ์ œ ๋น„์šฉ์— ๋งž๋Š” ํ‰๊ฐ€ ๊ธฐ์ค€์„ ๋จผ์ € ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฒฐ๊ณผ๋ฟ ์•„๋‹ˆ๋ผ ๊ฐ€์ •, ์‹คํ—˜ ๊ณผ์ •๊ณผ ์‹คํŒจ ์‚ฌ๋ก€๋ฅผ ํ•จ๊ป˜ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ค๋ฅ˜๋ฅผ ์žฌํ˜„ํ•˜๊ณ  ์‚ฌ์šฉ์ž ํ”ผ๋“œ๋ฐฑ์„ ๊ฐœ์„ ์œผ๋กœ ์—ฐ๊ฒฐํ•˜๋Š” ์šด์˜์„ ์ง€ํ–ฅํ•ฉ๋‹ˆ๋‹ค.
GitHub streak

Pinned Loading

  1. doc-search-project doc-search-project Public

    ๊ธฐ์ˆ  ๋ฌธ์„œ 60๊ฑด์œผ๋กœ Keyword Baseline๊ณผ TF-IDF ๊ฒ€์ƒ‰์„ ๊ตฌํ˜„ํ•˜๊ณ  Precision@3ยทMRR๋กœ ๋น„๊ตํ•œ ๊ฒ€์ƒ‰ ํ”„๋กœ์ ํŠธ

    Python

  2. TIL TIL Public

    KANT Private LLM ์—”์ง€๋‹ˆ์–ด ๊ณผ์ • ํ•™์Šต ๊ธฐ๋ก โ€” ์ง์ ‘ ์‹คํ–‰ํ•˜๊ณ  ๊ฒ€์ฆํ•œ ์ฝ”๋“œ์™€ ํ•ด์„

    Jupyter Notebook

  3. real-estate-fake-listing-detector real-estate-fake-listing-detector Public

    ๋ถ€๋™์‚ฐ ํ—ˆ์œ„๋งค๋ฌผ ํŒ์ • ์–ด์‹œ์Šคํ„ดํŠธ์šฉ ๋กœ์ปฌ LLM ์„ ์ • ์‹คํ—˜ โ€” gemma3 vs qwen3 (4BยทQ4_K_M) ๋น„๊ต ๋ณด๊ณ ์„œ

    Python