FastTrackML es una API para los parámetros y métricas de registro al ejecutar el código de aprendizaje automático, y es una interfaz de usuario para visualizar el resultado. La API es un reemplazo para el servidor de seguimiento de MLFLOW, y se envía con la interfaz de usuario de visualización de MLFLOW y AIM.
Como su nombre lo indica, el énfasis está en la velocidad: registro rápido, recuperación rápida.
Nota
Para la guía completa, consulte nuestra guía QuickStart.
FastTrackMl se puede instalar y ejecutar con pip
:
pip install fasttrackml
fml server
Alternativamente, puede ejecutarlo dentro de un contenedor con Docker:
docker run --rm -p 5000:5000 -ti gresearch/fasttrackml
Verifique que pueda ver la interfaz de usuario navegando a http: // localhost: 5000/.
Para más información, --help
es tu amigo!
Instale el paquete mlflow python:
pip install mlflow-skinny
Aquí hay un ejemplo elemental de Python Script:
import mlflow
import random
# Set the tracking URI to the FastTrackML server
mlflow . set_tracking_uri ( "http://localhost:5000" )
# Set the experiment name
mlflow . set_experiment ( "my-first-experiment" )
# Start a new run
with mlflow . start_run ():
# Log a parameter
mlflow . log_param ( "param1" , random . randint ( 0 , 100 ))
# Log a metric
mlflow . log_metric ( "foo" , random . random ())
# metrics can be updated throughout the run
mlflow . log_metric ( "foo" , random . random () + 1 )
mlflow . log_metric ( "foo" , random . random () + 2 )
FastTrackML se puede construir y probar dentro de un contenedor de desarrollo. Esta es la forma recomendada, ya que todo el entorno viene preconfigurado con todas las dependencias (SDK, Postgres, Minio, etc.) y configuraciones (formato, pelusa, extensiones, etc.) para comenzar al instante.
Si tiene una cuenta GitHub, simplemente puede abrir FastTrackMl en un nuevo CodeSpace de GitHub haciendo clic en el botón verde "Código" en la parte superior de esta página.
Puede construir, ejecutar y adjuntar el depurador simplemente presionando F5. Las pruebas unitarias se pueden ejecutar desde el explorador de prueba a la izquierda. También hay muchos objetivos dentro del Makefile
que se pueden usar (por ejemplo, build
, run
, test-go-unit
).
Si desea trabajar localmente en el código de Visual Studio, todo lo que necesita es instalada Docker y Dev Conteners Extension.
Simplemente abra su copia de FastTrackMl en el código VS y haga clic en "Reaberse en contenedor" cuando se le solicite. Una vez que se ha abierto el proyecto, puede seguir las instrucciones de CodeSpaces de GitHub anteriormente.
Importante
Tenga en cuenta que en MacOS, el puerto 5000 ya está ocupado, por lo que algunos ajustes son necesarios.
Si la CLI es cómo se enrolla, puede instalar la herramienta CLI de contenedor Dev y seguir las instrucciones a continuación.
[! ADVERTENCIA] Esta configuración no es recomendada ni compatible. ¡Aquí hay dragones!
Deberá editar el archivo .devcontainer/docker-compose.yml
y la descomposición de la sección services.db.ports
para exponer los puertos al host. También necesitará agregar FML_LISTEN_ADDRESS=:5000
a .devcontainer/.env
.
Luego puede emitir el siguiente comando en su copia de FastTrackMl para ponerse en funcionamiento:
devcontainer up
Suponiendo que clonó el repositorio en un directorio llamado fasttrackml
y no jugueteó con la configuración del contenedor Dev, puede ingresar el contenedor de dev:
docker compose --project-name fasttrackml_devcontainer exec --user vscode --workdir /workspaces/fasttrackml app zsh
Si alguno de estos no es cierto, aquí es cómo representar un comando adaptado a su configuración (requiere que se instale jq
):
devcontainer up | tail -n1 | jq -r ' "docker compose --project-name (.composeProjectName) exec --user (.remoteUser) --workdir (.remoteWorkspaceFolder) app zsh" '
Una vez en el contenedor de Dev, use su editor de texto favorito y objetivos Makefile
:
vscode ➜ /workspaces/fasttrackml (main) $ vi main.go
vscode ➜ /workspaces/fasttrackml (main) $ emacs .
vscode ➜ /workspaces/fasttrackml (main) $ make run
Copyright 2022-2023 G-Research
Copyright 2019-2022 AIMHUB, Inc.
Copyright 2018 Databricks, Inc.
Licenciado bajo la licencia Apache, versión 2.0 (la "licencia"); No puede usar estos archivos, excepto de conformidad con la licencia. Puede obtener una copia de la licencia en
http://www.apache.org/licenses/license-2.0
A menos que la ley aplicable sea requerida o acordado por escrito, el software distribuido bajo la licencia se distribuye de manera "como es", sin garantías o condiciones de ningún tipo, ya sea expresas o implícitas.