1. 28 Apr, 2025 1 commit
  2. 26 Apr, 2025 1 commit
  3. 25 Apr, 2025 2 commits
    • Harrison Saturley-Hall's avatar
    • Graham King's avatar
      chore: Publish Model Deployment Card to NATS (#799) · d346782c
      Graham King authored
      This will allow an ingress-side pre-processor to see it without needing a model checkout.
      
      Currently pre-processing is done in the worker, which has access to the model deployment card ("MDC") files (`config.json`, `tokenizer.json` and `tokenizer_config.json`) locally. We want to move the pre-processor to the ingress side to support KV routing. That requires ingress side (i.e the HTTP server), on a different machine than the worker to be able to see those three files.
      
      To support that this PR makes the worker upload the contents of those files to the NATS object store, and publishes the MDC with those NATS urls to the key-value store. 
      
      The key-value store has an interface so any store (nats, etcd, redis, etc) can be supported. Implementations for memory and NATS are provided.
      
      Fetching the MDC from the store, doing pre-processing ingress side, and publishing a card backed by a GGUF, are all for a later commit.
      
      Part of #743 
      d346782c
  4. 21 Apr, 2025 2 commits
  5. 18 Apr, 2025 1 commit
  6. 17 Apr, 2025 2 commits
  7. 12 Apr, 2025 1 commit
  8. 11 Apr, 2025 1 commit
  9. 09 Apr, 2025 1 commit
  10. 04 Apr, 2025 2 commits
  11. 03 Apr, 2025 2 commits
  12. 02 Apr, 2025 1 commit
  13. 01 Apr, 2025 1 commit
  14. 31 Mar, 2025 1 commit
  15. 28 Mar, 2025 1 commit
  16. 24 Mar, 2025 1 commit
  17. 19 Mar, 2025 1 commit
    • Graham King's avatar
      chore: Don't depend on openssl (#292) · 7c3fd5c9
      Graham King authored
      This makes the Rust parts all use ring / rustls library instead of local install of openssl. It's a step on the journey to being statically linked.
      
      Pieces:
      - `tokenizers` and `mistralrs` now support rustls (mistralrs by default, tokenizers with feature flag).
      - Move shared dependencies up into workspace
      - New `rand` crate has some renames for future rust
      - Ensure the dependency doesn't creep back in by enforcing it with cargo deny.
      7c3fd5c9
  18. 18 Mar, 2025 1 commit
  19. 17 Mar, 2025 1 commit
  20. 16 Mar, 2025 1 commit
  21. 14 Mar, 2025 2 commits
  22. 13 Mar, 2025 1 commit
  23. 11 Mar, 2025 2 commits
  24. 10 Mar, 2025 1 commit
  25. 09 Mar, 2025 5 commits
  26. 08 Mar, 2025 3 commits
  27. 07 Mar, 2025 1 commit
    • Graham King's avatar
      feat: Python bring-your-own-engine with our tokenizer (#47) · 12714d90
      Graham King authored
      Instead of using `out=pystr:<my.py>` we can now do this:
      ```
      dynemo-run out=pytok:/home/graham/my_python_engine.py --model-path <hf-repo-checkout>
      ```
      
      That engine will receive and respond with tokens. Here's an example engine file:
      ```
      import asyncio
      
      async def generate(request):
          yield {"token_ids":[791]}
          await asyncio.sleep(0.1)
          yield {"token_ids":[6864]}
          await asyncio.sleep(0.1)
          yield {"token_ids":[315]}
          await asyncio.sleep(0.1)
          yield {"token_ids":[9822]}
          await asyncio.sleep(0.1)
          yield {"token_ids":[374]}
          await asyncio.sleep(0.1)
          yield {"token_ids":[12366]}
          await asyncio.sleep(0.1)
          yield {"token_ids":[13]}
      ```
      
      Also reduce duplication by making the bindings engine use the llm lib engine.
      12714d90