<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Inference on SREKubeCraft | Nick Nikolakakis</title><link>https://srekubecraft.io/el/tags/inference/</link><description>Recent content in Inference on SREKubeCraft | Nick Nikolakakis</description><generator>Hugo</generator><language>el-GR</language><lastBuildDate>Tue, 08 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://srekubecraft.io/el/tags/inference/index.xml" rel="self" type="application/rss+xml"/><item><title>Modelplane πέρα από το placement - Routing policy, το Dynamo stack και τέσσερα gotchas</title><link>https://srekubecraft.io/el/posts/modelplane-beyond-placement-routing-dynamo-gotchas/</link><pubDate>Tue, 08 Sep 2026 00:00:00 +0000</pubDate><guid>https://srekubecraft.io/el/posts/modelplane-beyond-placement-routing-dynamo-gotchas/</guid><description>&lt;p&gt;Το &lt;a href="https://srekubecraft.io/el/posts/modelplane-fleet-inference/"&gt;πρώτο post για το Modelplane&lt;/a&gt; είχε μία δουλειά: να αποδείξει τον fleet scheduler σε ένα laptop. Τρία Kind clusters, ψεύτικες DRA GPU, ένα mock engine, και ένα manifest που δεν ονόμαζε ούτε cluster ούτε region και παρ&amp;rsquo; όλα αυτά έβαζε από ένα replica στο καθένα. Αυτό φτιάχτηκε να δείξει το demo, και αυτό έδειξε.&lt;/p&gt;&#10;&lt;p&gt;Ό,τι βρίσκεται &lt;em&gt;πάνω&lt;/em&gt; από τον scheduler το άφησα στην άκρη, επίτηδες. Ένα post που προσπαθεί να καλύψει μονοκοπανιά placement, traffic policy, sizing, ένα εναλλακτικό serving stack και το storage path είναι ένα post που δεν το τελειώνει κανείς. Αυτό εδώ είναι λοιπόν το δεύτερο μισό: το κομμάτι του API που πιάνεις στα χέρια σου όταν το placement δουλεύει πια και πρέπει να στήσεις από πάνω του ένα release process.&lt;/p&gt;</description></item><item><title>Modelplane - Fleet inference σε πολλά clusters, demo χωρίς ούτε μία GPU</title><link>https://srekubecraft.io/el/posts/modelplane-fleet-inference/</link><pubDate>Sun, 30 Aug 2026 00:00:00 +0000</pubDate><guid>https://srekubecraft.io/el/posts/modelplane-fleet-inference/</guid><description>&lt;p&gt;Το serving ενός μοντέλου σε ένα cluster είναι λυμένο πρόβλημα. Διαλέγεις engine, του δίνεις μια GPU, στέλνεις το traffic πάνω του. Γι&amp;rsquo; αυτή τη διαδρομή έχω γράψει ήδη δύο φορές, με το &lt;a href="https://srekubecraft.io/posts/kserve/"&gt;KServe&lt;/a&gt; και με το &lt;a href="https://srekubecraft.io/el/posts/llm-d-distributed-inference/"&gt;llm-d&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Αυτό που δεν έχει λύσει κανείς καθαρά είναι το fleet. Οι GPU είναι δυσεύρετες, οπότε παίρνεις capacity απ&amp;rsquo; όπου βρεις: λίγο σε EKS, λίγο σε GKE, ένα reserved block σε κάποιο neocloud, ένα rack που έχεις ήδη. Τώρα έχεις πέντε clusters που το καθένα θέλει ακριβώς το ίδιο serving stack, και ένα μόνιμο πρόβλημα matchmaking: ποιο μοντέλο τρέχει σε ποιο hardware, σε ποιο region. Από κάτω κρύβονται δύο διαφορετικές δουλειές που οι περισσότερες πλατφόρμες τις κάνουν μία: το platform team πρέπει να δημοσιεύει τι hardware υπάρχει, και το ML team να ζητάει το hardware που χρειάζεται.&lt;/p&gt;</description></item><item><title>llm-d - Kubernetes-native distributed LLM inference σε κλίμακα</title><link>https://srekubecraft.io/el/posts/llm-d-distributed-inference/</link><pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate><guid>https://srekubecraft.io/el/posts/llm-d-distributed-inference/</guid><description>&lt;p&gt;Πριν από τρεις μήνες &lt;a href="https://srekubecraft.io/posts/kserve/"&gt;έγραψα για το KServe&lt;/a&gt; και για το πώς το &lt;code&gt;InferenceService&lt;/code&gt; CRD έχει γίνει ό,τι πιο κοντινό σε standard διαθέτει το cloud-native για να βάλεις ένα εκπαιδευμένο μοντέλο πίσω από ένα API. Εκείνο το post έκλεινε με ένα σκόπιμο cliffhanger: το KServe σου δίνει ένα πολύ καλό primitive για serving ενός μοντέλου, αλλά δεν λύνει το GPU sharing, το fractional scheduling ή το πώς κάνεις load balancing στο inference traffic ανάμεσα σε πολλά replicas ενός μεγάλου μοντέλου. Έδειξα προς το Volcano και το Kueue και προχώρησα.&lt;/p&gt;</description></item></channel></rss>