LLM Inference Handbook

(bentoml.com)

353 points | by djhu9 2 days ago

8 comments

  • sherlockxu 1 day ago
    Hi everyone. I'm one of the maintainers of this project. We're both excited and humbled to see it on Hacker News!

    We created this handbook to make LLM inference concepts more accessible, especially for developers building real-world LLM applications. The goal is to pull together scattered knowledge into something clear, practical, and easy to build on.

    We’re continuing to improve it, so feedback is very welcome!

    GitHub repo: https://github.com/bentoml/llm-inference-in-production

    • DiabloD3 1 day ago
      I'm not going to open an issue on this, but you should consider expanding on the self-hosting part of the handbook and explicitly recommend llama.cpp for local self-hosted inference.
      • leopoldj 1 day ago
        The self hosting section covers corporate use case using vLlm and sglang as well as personal desktop use using Ollama which is a wrapper over llama.cpp.
        • DiabloD3 1 day ago
          Recommending Ollama isn't useful for end users, its just a trap in a nice looking wrapper.
          • nl 1 day ago
            Strong disagree on this. Ollama is great for moderately technical users who aren't really programmers or proficient with the command line.
            • DiabloD3 23 hours ago
              You can disagree all you want, but Ollama does not keep their llama.cpp vendored copy up to date, and also ships, via their mirror, completely random badly labeled models claiming to be the upstream real ones, often misappropriated from major community members (Unsloth, et al).

              When you get a model offered by Ollama's service, you have no clue what you're getting, and normal people who have no experience aren't even aware of this.

              Ollama is an unrestricted footgun because of this.

              • ChromaticPanic 7 hours ago
                Not the footgun you think it is. Ollama comes with a few things that make it convenient for casual users.
              • nl 16 hours ago
                I thought the models were like HuggingFace, where anyone can upload a model and you choose which you pull. The Unsloth ones look like this to me, eg: https://ollama.com/secfa/DeepSeek-R1-UD-IQ1_S
                • DiabloD3 4 hours ago
                  Ollama themselves upload models to the mirror, and often mislabel them.

                  When R1 first came out, for example, their official copy of it was one of the distills labeled as "R1" instead of something like "R1-qwen-distill". They've done this more than once.

    • criemen 1 day ago
      Thanks a lot for putting this together!

      I have a question. In https://github.com/bentoml/llm-inference-in-production/blob/..., you have a single picture that defines TTFT and ITL. That does not match my understanding (but you guys know probably more than me): In the graphic, it looks like that the model is generating 4 tokens T0 to T3, before outputting a single output token.

      I'd have expected that picture for ITL (except that then the labeling of the last box is off), but for TTFT, I'd have expected that there's only a single token T0 from the decode step, that then immediately is handed to detokenization and arrives as first output token (if we assume a streaming setup, otherwise measuring TTFT makes little sense).

    • armcat 1 day ago
      Amazing work on this, beautifully put together and very useful!
    • sethherr 1 day ago
      This seems useful and well put together, but splitting it into many small pages instead of a single page that can be scrolled through is frustrating - particularly on mobile where the table of contents isn't shown by default. I stopped reading after a few pages because it annoyed me.

      At the very least, the sections should be a single page each.

  • subset 1 day ago
    Ooh this looks really neat! I'd love to see more content in the future on Structured outputs/Guided generation and sampling. Another great reference on inference-time algorithms for sampling is here: https://rentry.co/samplers
    • larme 1 day ago
      Wow that's really thorough
  • aligundogdu 1 day ago
    It's a really beautiful project, and I’d like to ask something purely out of curiosity and with the best intentions. What’s the name of the design trend you used for your website? I really loved the website too.
    • Jimmc414 1 day ago
      it appears to be using Infima, which is Docusaurus's default CSS framework plus a standard system font stack

      [0] font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  • gchadwick 1 day ago
    Very glad to see this. There is (understandably) much excitement and focus on training models in publicly available material.

    Running them well is very important too. As we get to grips with everything models can do and look to deploy them widely knowledge of how to best run them becomes ever more important.

  • qrios 1 day ago
    Thanks for putting this together! From now on I only need one link to point interested ones to learn.

    Only one suggestion: On page "OpenAI-compatible API" it would be great to have also a simple example for the pure REST call instead of the need to import the OpenAI package.

  • srameshc 1 day ago
    If I remember, BentoML was about MLOps, I remember trying it about a year back. Did the company pivot ?
    • fsjayess 1 day ago
      There is a big pie in the market around LLM serving. It make sense for a serving framework to extend into the space
  • holografix 1 day ago
    Very good reference thanks for collating this!
  • Domainzsite 1 day ago
    [dead]