Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,16 @@ eggs/
.installed.cfg
*.egg
MANIFEST


# Environment
.env


# Testing
.pytest_cache/


# Project specific
lightning_logs/
.gradio/
19 changes: 19 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
- id: check-json
- id: check-toml
- id: check-added-large-files

- repo: https://github.com/google/yapf
rev: v0.40.1
hooks:
- id: yapf
language: python
additional_dependencies: [toml]
args: ['-i', '--style', '.style.yapf']
files: ^(src/|tests/|scripts/).*\.py$
4 changes: 4 additions & 0 deletions .style.yapf
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[style]
# YAPF uses the chromium style
based_on_style = google
COLUMN_LIMIT=90
62 changes: 62 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
[project]
name = "deepforest_agent"
version = "0.1.0"
description = "AI Agent for DeepForest object detection"
authors = [
{name = "Your Name", email = "you@example.com"}
]
requires-python = ">=3.12"
readme = "README.md"
dependencies = [
# Core dependencies
"torch>=2.0.0",
"torchvision>=0.15.0",
"google-generativeai",
"pydantic-settings",
"pydantic",

# Computer Vision
"opencv-python>=4.8.0",
"Pillow>=10.0.0",
"numpy>=1.24.0",
"matplotlib>=3.7.0",
"seaborn>=0.12.0",
"plotly>=5.15.0",

# DeepForest
"deepforest",
"rasterio>=1.3.0",
"geopandas>=0.14.0",
"albumentations<2.0",

# Data processing
"pandas>=2.0.0",
"pyyaml>=6.0",

# Web interface
"gradio>=4.0.0",
"fastapi>=0.104.0",
"requests>=2.31.0",

# Utilities
"python-dotenv>=1.0.0",
"shapely>=2.0.0",
"scikit-image>=0.21.0",
"tqdm>=4.65.0",

# Additional
"openai",
"gradio_image_annotation"
]

[project.optional-dependencies]
dev = [
"pre-commit",
"pytest",
"pytest-profiling",
"yapf"
]

[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
45 changes: 45 additions & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Core dependencies
torch>=2.0.0
torchvision>=0.15.0
google-generativeai
pydantic-settings
pydantic

# Computer Vision
opencv-python>=4.8.0
Pillow>=10.0.0
numpy>=1.24.0
matplotlib>=3.7.0
seaborn>=0.12.0
plotly>=5.15.0

# DeepForest
deepforest
rasterio>=1.3.0
geopandas>=0.14.0
albumentations<2.0

# Data processing
pandas>=2.0.0
pyyaml>=6.0

# Web interface
gradio>=4.0.0
fastapi>=0.104.0
requests>=2.31.0

# Utilities
python-dotenv>=1.0.0
shapely>=2.0.0
scikit-image>=0.21.0
tqdm>=4.65.0

# Additional
openai
gradio_image_annotation

# Dev tools
pre-commit
pytest
pytest-profiling
yapf