• 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
preprocessor.rs 13.7 KB