{"repo":"KhaiTrang1995/llm-internal","free":true,"listed":false,"github":"https://github.com/KhaiTrang1995/llm-internal","clone":"git clone https://github.com/KhaiTrang1995/llm-internal.git","description":"MLOps — vLLM + LiteLLM + Portainer CE + Netdata. Case study song ngữ: kiến trúc, metrics, bài học vận hành. · Self-hosted LLM inference done the MLOps way, a bilingual case study","language":"HTML","stars":16,"topics":["case-study","case-study-project","docker","gpu","llm","netdata","observability","portainer","self-hosted","selfhosted"],"license":null,"category":"self-hosted-apps","readme_excerpt":"🧠 Self-hosted LLM · vLLM + Portainer CE + Netdata Chạy LLM nội bộ theo chuẩn MLOps — case study mở cho cộng đồng Running an internal LLM cluster the MLOps way — an open case study Tiếng Việt · English · Live page --- 🇻🇳 Tiếng Việt Bối cảnh Nhu cầu chạy LLM nội bộ thường xuất phát từ ba lý do rất cụ thể: dữ liệu không được rời khỏi hạ tầng công ty, chi phí gọi API theo token tăng nhanh khi lượng request lớn, và độ trễ cần ổn định thay vì phụ thuộc nhà cung cấp bên ngoài. Chạy được một model thì dễ — docker run là xong trong mười phút. Cái khó nằm ở phần còn lại: làm sao biết model đang khoẻ hay đang nghẽn, làm sao đổi model mà không ai phải SSH vào server, làm sao cảnh báo trước khi người dùng phàn nàn \"hôm nay chat chậm\". Case study này tập trung vào đúng phần còn lại đó. Môi trường tham chiếu: Ubuntu 22.04/24.04 · 1–2 GPU NVIDIA (Ampere trở lên) · driver ≥ 550 · Docker Engine + Compose plugin. Kiến trúc Sơ đồ đầy đủ ở trên. File nguồn: diagrams/architecture-llm-noi-bo.drawio — mở bằng diagrams.net, draw.io Desktop, hoặc extension Draw.io Integration trong VS Code. Sơ đồ chỉ dùng core shape nên không cần bật thêm shape library nào. Luồng request (nét liền) đi thẳng từ trên xuống: Luồng vận hành (nét đứt) chạy vuông góc, từ cột phải cắt vào lớp serving: Từ Đến Làm gì --- --- --- Git repo Portainer CE GitOps — polling hoặc webhook khi có commit mới Portainer CE Lớp serving deploy · redeploy · đọc log · exec · healthcheck go.d/prometheus collector vLLM :8001 :8002 scrape /met","default_branch":null,"files":null,"tree":[],"storefront":"/r/KhaiTrang1995","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/KhaiTrang1995/llm-internal/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}