- 21 Aug, 2025 1 commit
-
-
Tzu-Ling Kan authored
Co-authored-by:Keiven Chang <keivenchang@users.noreply.github.com>
-
- 20 Aug, 2025 1 commit
-
-
Michael Feil authored
-
- 19 Aug, 2025 1 commit
-
-
Ryan Olson authored
Signed-off-by:
Ryan Olson <rolson@nvidia.com> Co-authored-by:
Olga Andreeva <oandreeva@nvidia.com> Co-authored-by:
Ziqi Fan <ziqif@nvidia.com> Co-authored-by:
John Thompson <jothomson@nvidia.com> Co-authored-by:
Richard Huo <rihuo@nvidia.com> Co-authored-by:
Zicheng Ma <zichengm@nvidia.com>
-
- 15 Aug, 2025 1 commit
-
-
Keiven C authored
Co-authored-by:Keiven Chang <keivenchang@users.noreply.github.com>
-
- 14 Aug, 2025 2 commits
-
-
Tzu-Ling Kan authored
-
Jorge António authored
Co-authored-by:Yan Ru Pei <yanrpei@gmail.com>
-
- 13 Aug, 2025 1 commit
-
-
Graham King authored
-
- 05 Aug, 2025 2 commits
-
-
Hongkuan Zhou authored
Signed-off-by:
Hongkuan Zhou <tedzhouhk@gmail.com> Co-authored-by:
Jacky <18255193+kthui@users.noreply.github.com> Co-authored-by:
hhzhang16 <54051230+hhzhang16@users.noreply.github.com>
-
Chi authored
-
- 18 Jul, 2025 2 commits
-
-
Jacky authored
-
Graham King authored
-
- 08 Jul, 2025 2 commits
-
-
Graham King authored
-
Yan Ru Pei authored
Signed-off-by:
Yan Ru Pei <yanrpei@gmail.com> Co-authored-by:
Alec <35311602+alec-flowers@users.noreply.github.com>
-
- 07 Jul, 2025 2 commits
-
-
jain-ria authored
Signed-off-by:
jain-ria <riajain@NVIDIA.com> Co-authored-by:
Alec <35311602+alec-flowers@users.noreply.github.com>
-
Jacky authored
-
- 01 Jul, 2025 2 commits
-
-
Alec authored
-
jthomson04 authored
-
- 30 Jun, 2025 1 commit
-
-
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.
-
- 14 Jun, 2025 1 commit
-
-
Yan Ru Pei authored
Signed-off-by:
PeaBrane <yanrpei@gmail.com> Signed-off-by:
Yan Ru Pei <yanrpei@gmail.com> Signed-off-by:
jain-ria <riajain@NVIDIA.com> Co-authored-by:
coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by:
jain-ria <riajain@NVIDIA.com>
-
- 30 May, 2025 1 commit
-
-
Alec authored
-
- 29 May, 2025 2 commits
- 22 May, 2025 1 commit
-
-
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
-
- 21 May, 2025 1 commit
-
-
Graham King authored
-
- 19 May, 2025 3 commits
-
-
Graham King authored
We can now do this: - Node 1: ``` dynamo-run in=http out=dyn ``` - Node 2 and 3, two instances of component 'backend' in the nemotron_ultra pipeline: ``` dynamo-run in=dyn://nemotron_ultra.backend.generate out=vllm /data/models/NemotronUltra ``` - Node 4 and 5, two instances of the 'backend' component in nemotron_super pipeline: ``` dynamo-run in=dyn://nemotron_super.backend.generate out=vllm /data/models/NemotronSuper ``` The ingress node will discover all four instances and route correctly. We have been planning for this for a long time now. As part of this auto-discovery is now always `out=dyn`, with no extra URL parts. Previously it could only route to a single pipeline. Also: - Refactor endpoint / instance naming now that I understand them - Fix removing models when their instance stops.
-
Jacky authored
-
Tom O'Brien authored
Implements OpenAI embeddings (interface only). - Adds ModelType::Embedding - Adds OpenAI embedding request/response structs - Adds support for embedding model discovery
-
- 08 May, 2025 1 commit
-
-
Hongkuan Zhou authored
-
- 07 May, 2025 2 commits
-
-
Hongkuan Zhou authored
-
Graham King authored
Signed-off-by:
Graham King <graham@gkgk.org> Co-authored-by:
Ryan McCormick <rmccormick@nvidia.com>
-
- 06 May, 2025 2 commits
-
-
jthomson04 authored
-
Graham King authored
Adding this to a Python script makes it register on the network so that `dynamo-run` can discover it and send it requests: ``` from dynamo.llm import register_llm MODEL = "Qwen/Qwen2.5-0.5B-Instruct" await register_llm(endpoint, MODEL, 3) ``` Full vllm example, with pre-processing in dynamo: - `dynamo-run in=text out=dyn://dynamo.backend.generate` - `cd lib/bindings/python/examples/hello_world` - `python server_vllm.py` This builds on top of the work to move pre-processor to ingress side. It means we can decouple Rust and Python using NATS as the bus. The `register_llm` call does this: - Download the model from HF if necessary - Load the model deployment card from the HF folder or extract from GGUF - Push the tokenizer config etc into NATS object store so ingress can access it from a different machine - Publish the model deployment card to ETCD
-
- 05 May, 2025 1 commit
-
-
Hongkuan Zhou authored
-
- 29 Apr, 2025 1 commit
-
-
Graham King authored
In a distributed system we don't know if the remote workers need pre-processing done ingress-side or not. Previously Client required us to decide this before discovering the remote endpoints, which was fine because pre-processing was worker-side. As part of moving pre-processing back to ingress-side we need to split this into two steps: - Client discovers the endpoints, and (later PR) will fetch their Model Deployment Card. - PushRouter will use the Model Deployment Card to decide if they need pre-processing or not, which affects the types of the generic parameters. Part of #743
-
- 26 Apr, 2025 1 commit
-
-
Hongkuan Zhou authored
Signed-off-by:
Hongkuan Zhou <tedzhouhk@gmail.com> Co-authored-by:
ishandhanani <82981111+ishandhanani@users.noreply.github.com> Co-authored-by:
ishandhanani <ishandhanani@gmail.com> Co-authored-by:
Ubuntu <ubuntu@dev-inst-2w1vokvyuts83rzn4n1k7mnzew9.us-central1-a.c.brevdevprod.internal> Co-authored-by:
Biswa Panda <biswa.panda@gmail.com> Co-authored-by:
Anant Sharma <anants@nvidia.com>
-
- 21 Apr, 2025 2 commits
-
-
Pankaj Gupta authored
-
ishandhanani authored
-
- 18 Apr, 2025 1 commit
-
-
Hongkuan Zhou authored
Co-authored-by:ishandhanani <82981111+ishandhanani@users.noreply.github.com>
-
- 12 Apr, 2025 1 commit
-
-
Hongkuan Zhou authored
feat: ETCD prefix watcher + python binding + runtime reconfiguration for router and disagg router (#581) Signed-off-by:
Hongkuan Zhou <tedzhouhk@gmail.com> Co-authored-by:
Neelay Shah <neelays@nvidia.com>
-
- 04 Apr, 2025 1 commit
-
-
Yan Ru Pei authored
-