Yet Another AI Company - Python package for loading and using trained image classification models
Project description
yaac
Quick Start
- Clone this repository:
git clone https://github.com/phil-yaac/yaac.git
cd yaac
- Run the setup script:
./setup/build_env.sh
This will:
- Install uv if not present
- Create a virtual environment
- Install all dependencies
- Set up convenient aliases (
ycdandyactivate)
Development
The project uses mypy for type checking, ruff for linting, and ruff format for code formatting. Here's how to use these tools:
Type Checking with mypy
# Check all Python files in the project
mypy yaac/
# Check a specific file
mypy yaac/specific_file.py
# Run with verbose output
mypy -v yaac/
# Faster options:
# Use incremental mode (caches results)
mypy --incremental yaac/
# Use mypy daemon for even faster checks
dmypy start
dmypy run -- yaac/
dmypy stop
Linting with ruff
# Check all Python files in the project
ruff check yaac/
# Check a specific file
ruff check yaac/specific_file.py
# Auto-fix issues where possible
ruff check --fix yaac/
# Show all available rules
ruff rule list
# Run with verbose output
ruff check -v yaac/
Code Formatting with ruff format
# Format all Python files in the project
ruff format yaac/
# Format a specific file
ruff format yaac/specific_file.py
# Check formatting without making changes
ruff format --check yaac/
# Show what would be changed without making changes
ruff format --diff yaac/
Running Tests
# Run all tests
pytest
# Run tests with verbose output
pytest -v
# Run tests for a specific module
pytest tests/models/sic/
# Run a specific test
pytest tests/models/sic/test_sic.py::test_make_model_shapetype
You can also integrate these tools with your editor:
- For VS Code: Install the "Python" and "Ruff" extensions
- For PyCharm: Install the "Mypy" and "Ruff" plugins
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
yaac-0.1.0.tar.gz
(12.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
yaac-0.1.0-py3-none-any.whl
(14.6 kB
view details)
File details
Details for the file yaac-0.1.0.tar.gz.
File metadata
- Download URL: yaac-0.1.0.tar.gz
- Upload date:
- Size: 12.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4203e37c3db49920ef41326eca5f571e57293987de83b818271de55b72e0e300
|
|
| MD5 |
efa170d9cfcb6ebcb95ee27c33c581d5
|
|
| BLAKE2b-256 |
d3ca3ca7ee0505b3d6b70872df38e463dba7f4ef20f1abea47a37d55a8d58497
|
File details
Details for the file yaac-0.1.0-py3-none-any.whl.
File metadata
- Download URL: yaac-0.1.0-py3-none-any.whl
- Upload date:
- Size: 14.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
22cd5a6047e4eaeb958b188eb1136822969dc6a6d89ac2b10f189cbcf866e802
|
|
| MD5 |
7efce09f43e95c56810068719ea535da
|
|
| BLAKE2b-256 |
883770d322b2d65546bd611e57b8554367c7544477e69f4cc045cc6eafa7adbb
|