Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:Axolotl ai cloud Axolotl Pyproject Config

From Leeroopedia


Knowledge Sources
Domains Build_System, Packaging
Last Updated 2026-02-07 00:00 GMT

Overview

PEP 621 project configuration defining the Axolotl package metadata, build system, entry points, and development tool settings.

Description

The pyproject.toml is the central package configuration for Axolotl following PEP 621 standards. It declares: (1) Build system using setuptools with setuptools_scm for version management, (2) Project metadata including name (axolotl), description (LLM Trainer), Python >=3.10 requirement, and dynamic version/dependencies, (3) Entry point axolotl = axolotl.cli.main:main for the CLI, (4) Custom setuptools integration via setuptools_axolotl_dynamic_dependencies.BuildPyCommand for runtime dependency resolution, (5) Ruff linter configuration targeting Python 3.10 with select rule sets (E, F, W, C90, B, I) and specific ignores, and (6) Ruff formatter configuration matching Black style. The version is read dynamically from the VERSION file.

Usage

This file is consumed by pip, setuptools, and development tools (ruff, uv). It is the primary interface for installing Axolotl (pip install -e .) and for configuring code quality tooling. Modify it when changing package metadata, adding entry points, or updating linter rules.

Code Reference

Source Location

Signature

[build-system]
requires = ["setuptools>=64", "wheel", "setuptools_scm>=8", "packaging==26.0"]
build-backend = "setuptools.build_meta"

[project]
name = "axolotl"
dynamic = ["version", "dependencies", "optional-dependencies"]
description = "LLM Trainer"
requires-python = ">=3.10"

[project.scripts]
axolotl = "axolotl.cli.main:main"

[tool.setuptools.cmdclass]
build_py = "setuptools_axolotl_dynamic_dependencies.BuildPyCommand"

[tool.setuptools.dynamic]
version = { file = "VERSION" }

Import

# Not imported. Consumed by build tools:
pip install -e .
pip install -e ".[flash-attn,deepspeed]"

I/O Contract

Inputs

Name Type Required Description
VERSION File Yes Contains the package version string
requirements.txt File Yes Core dependencies (parsed dynamically)
src/ Directory Yes Python source packages

Outputs

Name Type Description
axolotl package Installable package Python package installable via pip
axolotl CLI Entry point Command-line tool at axolotl.cli.main:main

Usage Examples

Install in Development Mode

# Standard development install
pip install -e .

# With optional extras
pip install -e ".[flash-attn,deepspeed,vllm]"

# Using uv
uv pip install -e .

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment