1. 23 Oct, 2025 1 commit
  2. 17 Oct, 2025 1 commit
  3. 16 Oct, 2025 1 commit
  4. 15 Oct, 2025 1 commit
  5. 11 Oct, 2025 1 commit
  6. 10 Oct, 2025 2 commits
  7. 08 Oct, 2025 1 commit
  8. 07 Oct, 2025 1 commit
  9. 30 Sep, 2025 2 commits
  10. 17 Sep, 2025 1 commit
  11. 16 Sep, 2025 1 commit
  12. 05 Sep, 2025 1 commit
  13. 03 Sep, 2025 3 commits
  14. 25 Aug, 2025 1 commit
  15. 22 Aug, 2025 3 commits
  16. 19 Aug, 2025 1 commit
  17. 18 Aug, 2025 1 commit
  18. 14 Aug, 2025 1 commit
  19. 13 Aug, 2025 1 commit
  20. 07 Aug, 2025 1 commit
  21. 05 Aug, 2025 1 commit
  22. 31 Jul, 2025 1 commit
  23. 18 Jul, 2025 2 commits
  24. 08 Jul, 2025 1 commit
  25. 01 Jul, 2025 1 commit
  26. 30 Jun, 2025 1 commit
    • Graham King's avatar
      chore(dynamo-run): Refactor to library (#1687) · 92f06b0e
      Graham King authored
      Move much of what was in the `dynamo-run` crate into `dynamo-llm` so that everyone can use it.
      
      Example usage:
      
      1. Create a `LocalModel`:
      
      ```
          let local_model = LocalModelBuilder::default()
      	.model_path("Qwen/Qwen3-0.6B")
      	.http_port(8080)
      	.build().await?;
      ```
      
      2. Make an engine:
      
      ```
          let engine_config = EngineConfig::StaticFull {
      	engine: dynamo_engine_mistralrs::make_engine(&local_model).await?,
      	model: Box::new(local_model),
          };
      ```
      
      3. Connect it to an input and run it
      
      ```
          dynamo_llm::entrypoint::input::run_input(Input::Http, runtime, engine_config).await?;
      ```
      
      For https://github.com/ai-dynamo/dynamo/issues/1647
      
      Code Rabbit summary, thanks:
        * Introduced a flexible builder pattern for local model configuration, allowing advanced customization and easier initialization.
        * Added new input modes and unified input handling, supporting interactive chat, HTTP server, batch file, and distributed endpoint modes.
        * Centralized engine configuration and routing, enabling more extensible and maintainable engine management.
        * Simplified and modularized the codebase by moving input and engine logic into dedicated modules.
        * Replaced direct model construction with an asynchronous builder for improved clarity and extensibility.
        * Streamlined configuration and validation for flags and router settings.
        * Added validation to prevent incompatible input and output combinations in endpoint and dynamic modes.
      92f06b0e
  27. 11 Jun, 2025 1 commit
  28. 29 May, 2025 2 commits
    • Graham King's avatar
      feat(dynamo-run): Use llama.cpp as the default engine for GGUF (#1276) · 3e3c3b10
      Graham King authored
      Previously `mistral.rs` was the default engine for both safetensors and GGUF models. Now it is only the default for safetensors, `llama.cpp` becomes the default for GGUF.
      
      Why?
      
      - Since #1177 `llama.cpp` is built-in by default, so we can switch.
      - `llama.cpp` is very very good at running GGUF (but can't run other types of model), so we should switch.
      
      Dynamo's multi-engine support gives us a secret super-power: we can use the best engine for this specific format or model.
      
      We can still run GGUF with mistralrs by doing `out=mistralrs`.
      3e3c3b10
    • jthomson04's avatar
  29. 22 May, 2025 2 commits
    • Graham King's avatar
      feat(dynamo-run): Allow setting KV cache block size (#1175) · 183f2b32
      Graham King authored
      Example:
      ```
      dynamo-run out=<engine> <model> --kv-cache-block-size 64
      ```
      
      In a distributed system this goes on the worker node and is propagated to ingress via the model deployment card.
      
      Previously hard coded to 16, which is now the default.
      
      - Load context_length from model. Closes #1172
      - Store context length and KV cache block size in Model Deployment Card #1170
      183f2b32
    • Graham King's avatar
      feat(dynamo-run): Allow setting context-length (#1157) · 6d5da821
      Graham King authored
      Llama 4 has a very large context length (aka n_ctx, model_max_length, max_model_len), and vllm won't start unless it can allocate enough KV cache for the entire context.
      
      Allow passing `--context-length <N>` to `dynamo-run` to limit it so long-context models will fit.
      
      Future todo:
      - Restrict every request's `max_tokens` to below the context length. Our pre-processor should do this by setting stop_conditions.max_tokens. mistralrs engine wrapper must do it itself because it does not use the pre-processor.
      - mistralrs and llamacpp currently have a hard-coded max context length if one is not provided on the command line. Change those to be the model's built-in max, read from the GGUF or tokenizer_config.json.
      6d5da821
  30. 21 May, 2025 2 commits