dominodatalab / domino-research Goto Github PK
View Code? Open in Web Editor NEWProjects developed by Domino's R&D team
License: Apache License 2.0
Projects developed by Domino's R&D team
License: Apache License 2.0
If you have more than one MLFlow registry and attempt to run a bridge worker pointing at each, and deploying to the same AWS account/region then the models from each registry may clobber each other.
Solution: add a per-registry prefix to AWS resources so that multiple registries can cohabit the same account and region.
In the view one PR endpoint
This could be tricky given our use of Python and React (requiring two buildpacks). They have a Dockerfile option, but the start up time would be 5+ minutes. Is there an easier way for us to do this?
Update model version with info on where it is deployed and how it can be queries
NOOP race condition
Target Version race condition
Our logic currently only fetches the most recent version in each stage.
Consider fetching all the versions in a stage so that we can enable A/B testing by deploying N versions to the endpoint for a stage.
I accidentally used an older version of Python (3.8), and this caused the following exception in bridge run
:
AttributeError: 'str' object has no attribute 'removesuffix'
The function in question was, indeed, introduced in Python 3.9.
I will add an assertion in the beginning of the call stack to guarantee that the interpreter version is kosher (>=3.9).
Add to the quickstart with a guide on how to stand up MLFlow if users do not have an instance
Upon approval, add the approver to the model version as a tag
"Promote {model name} version {v_num} to {target_stage}"
depends on #77
Fetch from header or default to sentinal "anonymous"
See if we can pull the S3 endpoint that the registry is using so that we can avoid duplicating this config across the registry and Bridge itself when we use a non-s3 backend
"No comment provided"
This looks like the error
Traceback (most recent call last):
File "/opt/conda/lib/python3.9/site-packages/flask/app.py", line 2070, in wsgi_app
response = self.full_dispatch_request()
File "/opt/conda/lib/python3.9/site-packages/flask/app.py", line 1516, in full_dispatch_request
return self.finalize_request(rv)
File "/opt/conda/lib/python3.9/site-packages/flask/app.py", line 1535, in finalize_request
response = self.make_response(rv)
File "/opt/conda/lib/python3.9/site-packages/flask/app.py", line 1727, in make_response
raise TypeError(
TypeError: The view function did not return a valid response. The return type must be a string, dict, tuple, Response instance, or WSGI callable, but it was a int.
Show status of endpoints (models/versions) to users in the mlflow UI. Consider:
Endpoints start very slowly. Consider the following optimizations:
Replication:
On run, check for more recent release on GitHub and prompt user to update
If the user uses MLflow with a non-s3 backend for boto, then we need a way to provide two different configs for mlflow and our use of boto. MLFlow will always read env, so we need to allow our aws config to be overriden and NOT look at the same place as the mlflow boto
Allow user to manually sync a single model from the registry to sagemaker
Remove 'Promote' so that it makes sense with Staging -> Archive/None
Oauth proxy?
Use bridge init to create an IAM user that Bridge uses at runtime. This would simplify the user configuration.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.