diff --git a/README.md b/README.md new file mode 100644 index 0000000..6b30b4f --- /dev/null +++ b/README.md @@ -0,0 +1,36 @@ +# MLOps Project + +This is an MLOps project for CSGO data analysis and model training. + +## Features + +- Data pipeline with Apache Airflow +- Model training with PyTorch and scikit-learn +- MLflow for experiment tracking +- DVC for data versioning +- Monitoring with Prometheus +- FastAPI for API serving + +## Setup + +1. Install dependencies: + ```bash + poetry install + ``` + +2. Run the data pipeline: + ```bash + airflow dags unpause csgo_data_pipeline + ``` + +## Project Structure + +- `dags/`: Airflow DAGs +- `src/`: Source code +- `models/`: Trained models +- `data/`: Data files +- `notebooks/`: Jupyter notebooks +- `tests/`: Test files +- `config/`: Configuration files +- `docker/`: Docker files +- `kubernetes/`: Kubernetes manifests \ No newline at end of file diff --git a/poetry.lock b/poetry.lock index 88586fc..1bb6d04 100644 --- a/poetry.lock +++ b/poetry.lock @@ -5026,6 +5026,21 @@ dev = ["django-stubs", "lxml", "mypy", "mypy-baseline", "packaging", "pre-commit langchain = ["langchain (>=0.2.0)"] test = ["anthropic", "coverage", "django", "freezegun (==1.5.1)", "google-genai", "langchain-anthropic (>=0.3.15)", "langchain-community (>=0.3.25)", "langchain-core (>=0.3.65)", "langchain-openai (>=0.3.22)", "langgraph (>=0.4.8)", "mock (>=2.0.0)", "openai", "parameterized (>=0.8.1)", "pydantic", "pytest", "pytest-asyncio", "pytest-timeout"] +[[package]] +name = "prometheus-client" +version = "0.23.1" +description = "Python client for the Prometheus monitoring system." +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "prometheus_client-0.23.1-py3-none-any.whl", hash = "sha256:dd1913e6e76b59cfe44e7a4b83e01afc9873c1bdfd2ed8739f1e76aeca115f99"}, + {file = "prometheus_client-0.23.1.tar.gz", hash = "sha256:6ae8f9081eaaaf153a2e959d2e6c4f4fb57b12ef76c8c7980202f1e57b48b2ce"}, +] + +[package.extras] +twisted = ["twisted"] + [[package]] name = "prompt-toolkit" version = "3.0.52" @@ -7867,4 +7882,4 @@ type = ["pytest-mypy"] [metadata] lock-version = "2.1" python-versions = ">=3.12,<3.14" -content-hash = "d9c6cbec69c483c02a545b417f51276379e2df0fdaff444a981658207943bdcb" +content-hash = "9fc1c61da09b93d9bb0488442eed9ac4cfaa45b42c3340c6f530495c42dc5b23" diff --git a/pyproject.toml b/pyproject.toml index 7c2b8a8..ece5d65 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -24,3 +24,6 @@ dependencies = [ [build-system] requires = ["poetry-core>=2.0.0,<3.0.0"] build-backend = "poetry.core.masonry.api" + +[tool.poetry] +package-mode = false