# Nedo Vision Worker Service
A high-performance, multiplatform Python worker service for the Nedo Vision system that handles AI-powered computer vision tasks with GPU acceleration support.
## 🚀 Features
- **🎯 AI-Powered Computer Vision** - Advanced object detection and video processing
- **🔐 Token-Based Authentication** - Secure worker registration and management
- **⚡ GPU Acceleration** - NVIDIA CUDA support for high-performance inference
- **🌍 Multiplatform Support** - Linux, Windows, macOS, ARM devices, and cloud platforms
- **🚀 Jetson Optimized** - Native support for NVIDIA Jetson devices
- **☁️ Cloud Ready** - Docker, Kubernetes, and major cloud platform support
- **🔧 Self-Diagnostic** - Built-in system requirements checker
- **📊 Real-time Monitoring** - System usage and performance metrics
## 📋 System Requirements
### Minimum Requirements
- **Python**: 3.8+
- **CPU**: 2 cores, 1.5 GHz
- **RAM**: 2 GB
- **Storage**: 1 GB free space
### Recommended Requirements
- **CPU**: 4+ cores, 2.0+ GHz
- **RAM**: 4+ GB (8+ GB for GPU acceleration)
- **GPU**: NVIDIA GPU with CUDA support (optional)
- **Storage**: 5+ GB free space
### Supported Platforms
- **Linux** (x86_64, ARM64, ARMv7) - Ubuntu, Debian, CentOS, Alpine
- **Windows** (x86_64) - Windows 10+, Server 2019+
- **macOS** (x86_64, Apple Silicon) - macOS 10.15+
- **NVIDIA Jetson** - Nano, Xavier NX, Xavier AGX, Orin
- **Cloud Platforms** - AWS, GCP, Azure (with GPU instance support)
## 🛠️ Installation
### Quick Install (PyPI)
```bash
pip install nedo-vision-worker
```
### Platform-Specific Installation
#### Standard Linux/Windows/macOS
```bash
# Install from PyPI
pip install nedo-vision-worker
# Verify installation
nedo-worker doctor
```
#### NVIDIA Jetson Devices
```bash
# Use system OpenCV for optimal performance
sudo apt install python3-opencv
# Install without OpenCV dependency
pip install nedo-vision-worker --no-deps
pip install alembic ffmpeg-python grpcio pika protobuf psutil pynvml requests SQLAlchemy
# Verify Jetson-specific features
nedo-worker doctor
```
#### ARM Devices (Raspberry Pi, etc.)
```bash
# Install with ARM-optimized packages
pip install nedo-vision-worker
# For headless servers, use lightweight OpenCV
pip install opencv-python-headless --upgrade
```
#### Docker Deployment
```dockerfile
# GPU-enabled container
FROM nvidia/cuda:11.8-runtime-ubuntu20.04
RUN pip install nedo-vision-worker
# CPU-only container
FROM python:3.9-slim
RUN apt-get update && apt-get install -y ffmpeg
RUN pip install nedo-vision-worker
```
### Development Installation
```bash
# Clone the repository
git clone https://gitlab.com/sindika/research/nedo-vision/nedo-vision-worker-service
cd nedo-vision-worker-service
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install in development mode
pip install -e .
# Install development dependencies
pip install -e .[dev]
```
## 🔍 System Diagnostics
Before running the worker service, use the built-in diagnostic tool to verify your system:
```bash
nedo-worker doctor
```
This will check:
- ✅ Platform compatibility and architecture
- ✅ Python version and dependencies
- ✅ FFmpeg installation and functionality
- ✅ OpenCV installation and optimizations
- ✅ gRPC connectivity
- ✅ NVIDIA GPU support and capabilities
- ✅ Storage permissions
- ✅ Network connectivity
## 📖 Quick Start
### 1. Get Your Worker Token
1. Access the Nedo Vision frontend
2. Navigate to Worker Management
3. Create a new worker
4. Copy the generated authentication token
### 2. Run System Check
```bash
nedo-worker doctor
```
### 3. Start the Worker Service
```bash
# Basic usage
nedo-worker run --token YOUR_TOKEN_HERE
# With custom configuration
nedo-worker run --token YOUR_TOKEN_HERE \
--server-host custom.server.com \
--storage-path /custom/storage/path \
--system-usage-interval 60
```
## 💻
## 💻 Usage
### Command Line Interface
The service uses a modern CLI with subcommands:
```bash
# Check system compatibility and requirements
nedo-worker doctor
# Run the worker service
nedo-worker run --token YOUR_TOKEN
# Get help
nedo-worker --help
nedo-worker run --help
nedo-worker doctor --help
```
### Available Commands
#### `doctor` - System Diagnostics
```bash
# Run comprehensive system check
nedo-worker doctor
# Check specific components
nedo-worker doctor --verbose
```
#### `run` - Start Worker Service
```bash
# Basic usage
nedo-worker run --token YOUR_TOKEN
# Advanced configuration
nedo-worker run \
--token YOUR_TOKEN \
--server-host be.vision.sindika.co.id \
--server-port 50051 \
--storage-path ./data \
--system-usage-interval 30
```
### Configuration Options
| Parameter | Description | Default | Required |
| ------------------------- | --------------------------------- | ------------------------- | -------- |
| `--token` | Worker authentication token | - | ✅ |
| `--server-host` | Backend server hostname | `be.vision.sindika.co.id` | ❌ |
| `--server-port` | Backend server port | `50051` | ❌ |
| `--storage-path` | Local storage directory ⚠️\* | `./data` | ❌ |
| `--system-usage-interval` | System metrics interval (seconds) | `30` | ❌ |
> **⚠️ Storage Path Note**: If using **Nedo Vision Worker Core**, both services must use the **same storage path** for proper data sharing and model access.
### Programmatic Usage
```python
from nedo_vision_worker.worker_service import WorkerService
# Create service instance
service = WorkerService(
server_host="be.vision.sindika.co.id",
token="your-token-here",
storage_path="./custom_storage",
system_usage_interval=60
)
# Initialize and run
if service.initialize():
print("Service initialized successfully")
service.run() # This blocks until service stops
else:
print("Failed to initialize service")
```
### Connection Information Client
```python
from nedo_vision_worker.services.ConnectionInfoClient import ConnectionInfoClient
# Create client
client = ConnectionInfoClient(
host="be.vision.sindika.co.id",
port=50051,
token="your-token-here"
)
# Get connection information
result = client.get_connection_info()
if result["success"]:
print(f"RabbitMQ Host: {result['rabbitmq_host']}")
print(f"RabbitMQ Port: {result['rabbitmq_port']}")
print(f"Database URL: {result['database_url']}")
else:
print(f"Error: {result['error']}")
```
## 🔐 Authentication Flow
1. **Worker Registration**: Create a worker through the Nedo Vision frontend
2. **Token Generation**: System generates a unique authentication token
3. **Service Initialization**: Worker service authenticates using the token
4. **Connection Setup**: Service establishes secure connections to backend services
5. **Task Processing**: Worker receives and processes computer vision tasks
6. **Monitoring**: Continuous system monitoring and health reporting
## ⚙️ Configuration Management
## ⚙️ Configuration Management
> **⚠️ Important Notice - Storage Path Coordination**
>
> If you're using **Nedo Vision Worker Core** alongside this service, ensure both services use the **same storage path**. This is critical for proper data sharing and model access between services.
>
> ```bash
> # Example: Both services should use identical storage paths
> nedo-worker run --token YOUR_TOKEN --storage-path /shared/nedo/storage
> nedo-worker-core --storage-path /shared/nedo/storage
> ```
>
> The storage path contains:
>
> - 📁 **Models** - Shared AI models and weights
> - 📁 **Temporary files** - Processing artifacts and cache
> - 📁 **Logs** - Service operation logs
> - 📁 **Configurations** - Runtime settings and preferences
### Environment Variables (Legacy Support)
```bash
export NEDO_WORKER_TOKEN="your-token-here"
export NEDO_SERVER_HOST="be.vision.sindika.co.id"
export NEDO_STORAGE_PATH="./data"
# Run with environment variables (deprecated)
nedo-worker run
```
### Configuration Priority
1. **Command-line arguments** (highest priority)
2. **Environment variables** (legacy support)
3. **Default values** (lowest priority)
## 🚀 Platform-Specific Setup
### Windows Setup
#### Prerequisites
```powershell
# Install Chocolatey (package manager)
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
# Install FFmpeg
choco install ffmpeg -y
# Verify installation
ffmpeg -version
```
#### Worker Installation
```powershell
# Install Python package
pip install nedo-vision-worker
# Run system check
nedo-worker doctor
# Start worker
nedo-worker run --token YOUR_TOKEN
```
### Linux Setup
#### Ubuntu/Debian
```bash
# Update system
sudo apt update
# Install FFmpeg
sudo apt install ffmpeg python3-pip
# Install worker
pip3 install nedo-vision-worker
# Run diagnostics
nedo-worker doctor
```
#### CentOS/RHEL
```bash
# Install EPEL repository
sudo yum install epel-release
# Install dependencies
sudo yum install ffmpeg python3-pip
# Install worker
pip3 install nedo-vision-worker
```
### NVIDIA Jetson Setup
```bash
# Ensure JetPack is installed
sudo apt update
# Use system OpenCV (optimized for Jetson)
sudo apt install python3-opencv
# Install worker without OpenCV
pip3 install nedo-vision-worker --no-deps
pip3 install alembic ffmpeg-python grpcio pika protobuf psutil pynvml requests SQLAlchemy
# Verify GPU support
nedo-worker doctor
# Check Jetson stats
sudo /usr/bin/tegrastats
```
### macOS Setup
```bash
# Install Homebrew (if not installed)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install FFmpeg
brew install ffmpeg
# Install worker
pip3 install nedo-vision-worker
# Run diagnostics
nedo-worker doctor
```
## 🔧 Troubleshooting
### Common Issues
#### 1. FFmpeg Not Found
```bash
# Check if FFmpeg is installed
ffmpeg -version
# Install FFmpeg
# Ubuntu/Debian: sudo apt install ffmpeg
# Windows: choco install ffmpeg
# macOS: brew install ffmpeg
```
#### 2. OpenCV Issues on ARM
```bash
# For ARM devices, try headless version
pip uninstall opencv-python
pip install opencv-python-headless
```
#### 3. GPU Not Detected
```bash
# Check NVIDIA drivers
nvidia-smi
# Check CUDA installation
nvcc --version
# Run system diagnostics
nedo-worker doctor
```
#### 4. Connection Issues
```bash
# Test network connectivity
ping be.vision.sindika.co.id
# Check firewall settings
# Ensure port 50051 is accessible
# Verify token
nedo-worker run --token YOUR_TOKEN --verbose
```
### Debug Mode
```bash
# Run with verbose logging
nedo-worker run --token YOUR_TOKEN --verbose
# Check logs
tail -f ~/.nedo_worker/logs/worker.log
```
### Performance Optimization
#### For High-Performance Workloads
```bash
# Increase system usage interval
nedo-worker run --token YOUR_TOKEN --system-usage-interval 60
# Use dedicated storage path
nedo-worker run --token YOUR_TOKEN --storage-path /fast/ssd/storage
```
#### For Resource-Constrained Devices
```bash
# Use minimal configuration
nedo-worker run --token YOUR_TOKEN --system-usage-interval 120
```
### Development Setup
```bash
# Clone and setup
git clone https://gitlab.com/sindika/research/nedo-vision/nedo-vision-worker-service
cd nedo-vision-worker-service
# Create virtual environment
python -m venv venv
source venv/bin/activate
# Install in development mode
pip install -e .[dev]
# Run tests
pytest
# Format code
black .
isort .
```
Raw data
{
"_id": null,
"home_page": null,
"name": "nedo-vision-worker",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "Willy Achmat Fauzi <willy.achmat@gmail.com>",
"keywords": "computer-vision, machine-learning, ai, worker-service, deep-learning, object-detection, neural-networks, video-processing",
"author": null,
"author_email": "Willy Achmat Fauzi <willy.achmat@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/8f/da/2d9457d3ae519db328df311edbf2bedc586f57a8b28730d1722b7af7a822/nedo_vision_worker-1.1.0.tar.gz",
"platform": null,
"description": "# Nedo Vision Worker Service\n\nA high-performance, multiplatform Python worker service for the Nedo Vision system that handles AI-powered computer vision tasks with GPU acceleration support.\n\n## \ud83d\ude80 Features\n\n- **\ud83c\udfaf AI-Powered Computer Vision** - Advanced object detection and video processing\n- **\ud83d\udd10 Token-Based Authentication** - Secure worker registration and management\n- **\u26a1 GPU Acceleration** - NVIDIA CUDA support for high-performance inference\n- **\ud83c\udf0d Multiplatform Support** - Linux, Windows, macOS, ARM devices, and cloud platforms\n- **\ud83d\ude80 Jetson Optimized** - Native support for NVIDIA Jetson devices\n- **\u2601\ufe0f Cloud Ready** - Docker, Kubernetes, and major cloud platform support\n- **\ud83d\udd27 Self-Diagnostic** - Built-in system requirements checker\n- **\ud83d\udcca Real-time Monitoring** - System usage and performance metrics\n\n## \ud83d\udccb System Requirements\n\n### Minimum Requirements\n\n- **Python**: 3.8+\n- **CPU**: 2 cores, 1.5 GHz\n- **RAM**: 2 GB\n- **Storage**: 1 GB free space\n\n### Recommended Requirements\n\n- **CPU**: 4+ cores, 2.0+ GHz\n- **RAM**: 4+ GB (8+ GB for GPU acceleration)\n- **GPU**: NVIDIA GPU with CUDA support (optional)\n- **Storage**: 5+ GB free space\n\n### Supported Platforms\n\n- **Linux** (x86_64, ARM64, ARMv7) - Ubuntu, Debian, CentOS, Alpine\n- **Windows** (x86_64) - Windows 10+, Server 2019+\n- **macOS** (x86_64, Apple Silicon) - macOS 10.15+\n- **NVIDIA Jetson** - Nano, Xavier NX, Xavier AGX, Orin\n- **Cloud Platforms** - AWS, GCP, Azure (with GPU instance support)\n\n## \ud83d\udee0\ufe0f Installation\n\n### Quick Install (PyPI)\n\n```bash\npip install nedo-vision-worker\n```\n\n### Platform-Specific Installation\n\n#### Standard Linux/Windows/macOS\n\n```bash\n# Install from PyPI\npip install nedo-vision-worker\n\n# Verify installation\nnedo-worker doctor\n```\n\n#### NVIDIA Jetson Devices\n\n```bash\n# Use system OpenCV for optimal performance\nsudo apt install python3-opencv\n\n# Install without OpenCV dependency\npip install nedo-vision-worker --no-deps\npip install alembic ffmpeg-python grpcio pika protobuf psutil pynvml requests SQLAlchemy\n\n# Verify Jetson-specific features\nnedo-worker doctor\n```\n\n#### ARM Devices (Raspberry Pi, etc.)\n\n```bash\n# Install with ARM-optimized packages\npip install nedo-vision-worker\n\n# For headless servers, use lightweight OpenCV\npip install opencv-python-headless --upgrade\n```\n\n#### Docker Deployment\n\n```dockerfile\n# GPU-enabled container\nFROM nvidia/cuda:11.8-runtime-ubuntu20.04\nRUN pip install nedo-vision-worker\n\n# CPU-only container\nFROM python:3.9-slim\nRUN apt-get update && apt-get install -y ffmpeg\nRUN pip install nedo-vision-worker\n```\n\n### Development Installation\n\n```bash\n# Clone the repository\ngit clone https://gitlab.com/sindika/research/nedo-vision/nedo-vision-worker-service\ncd nedo-vision-worker-service\n\n# Create virtual environment\npython -m venv venv\nsource venv/bin/activate # On Windows: venv\\Scripts\\activate\n\n# Install in development mode\npip install -e .\n\n# Install development dependencies\npip install -e .[dev]\n```\n\n## \ud83d\udd0d System Diagnostics\n\nBefore running the worker service, use the built-in diagnostic tool to verify your system:\n\n```bash\nnedo-worker doctor\n```\n\nThis will check:\n\n- \u2705 Platform compatibility and architecture\n- \u2705 Python version and dependencies\n- \u2705 FFmpeg installation and functionality\n- \u2705 OpenCV installation and optimizations\n- \u2705 gRPC connectivity\n- \u2705 NVIDIA GPU support and capabilities\n- \u2705 Storage permissions\n- \u2705 Network connectivity\n\n## \ud83d\udcd6 Quick Start\n\n### 1. Get Your Worker Token\n\n1. Access the Nedo Vision frontend\n2. Navigate to Worker Management\n3. Create a new worker\n4. Copy the generated authentication token\n\n### 2. Run System Check\n\n```bash\nnedo-worker doctor\n```\n\n### 3. Start the Worker Service\n\n```bash\n# Basic usage\nnedo-worker run --token YOUR_TOKEN_HERE\n\n# With custom configuration\nnedo-worker run --token YOUR_TOKEN_HERE \\\n --server-host custom.server.com \\\n --storage-path /custom/storage/path \\\n --system-usage-interval 60\n```\n\n## \ud83d\udcbb\n\n## \ud83d\udcbb Usage\n\n### Command Line Interface\n\nThe service uses a modern CLI with subcommands:\n\n```bash\n# Check system compatibility and requirements\nnedo-worker doctor\n\n# Run the worker service\nnedo-worker run --token YOUR_TOKEN\n\n# Get help\nnedo-worker --help\nnedo-worker run --help\nnedo-worker doctor --help\n```\n\n### Available Commands\n\n#### `doctor` - System Diagnostics\n\n```bash\n# Run comprehensive system check\nnedo-worker doctor\n\n# Check specific components\nnedo-worker doctor --verbose\n```\n\n#### `run` - Start Worker Service\n\n```bash\n# Basic usage\nnedo-worker run --token YOUR_TOKEN\n\n# Advanced configuration\nnedo-worker run \\\n --token YOUR_TOKEN \\\n --server-host be.vision.sindika.co.id \\\n --server-port 50051 \\\n --storage-path ./data \\\n --system-usage-interval 30\n```\n\n### Configuration Options\n\n| Parameter | Description | Default | Required |\n| ------------------------- | --------------------------------- | ------------------------- | -------- |\n| `--token` | Worker authentication token | - | \u2705 |\n| `--server-host` | Backend server hostname | `be.vision.sindika.co.id` | \u274c |\n| `--server-port` | Backend server port | `50051` | \u274c |\n| `--storage-path` | Local storage directory \u26a0\ufe0f\\* | `./data` | \u274c |\n| `--system-usage-interval` | System metrics interval (seconds) | `30` | \u274c |\n\n> **\u26a0\ufe0f Storage Path Note**: If using **Nedo Vision Worker Core**, both services must use the **same storage path** for proper data sharing and model access.\n\n### Programmatic Usage\n\n```python\nfrom nedo_vision_worker.worker_service import WorkerService\n\n# Create service instance\nservice = WorkerService(\n server_host=\"be.vision.sindika.co.id\",\n token=\"your-token-here\",\n storage_path=\"./custom_storage\",\n system_usage_interval=60\n)\n\n# Initialize and run\nif service.initialize():\n print(\"Service initialized successfully\")\n service.run() # This blocks until service stops\nelse:\n print(\"Failed to initialize service\")\n```\n\n### Connection Information Client\n\n```python\nfrom nedo_vision_worker.services.ConnectionInfoClient import ConnectionInfoClient\n\n# Create client\nclient = ConnectionInfoClient(\n host=\"be.vision.sindika.co.id\",\n port=50051,\n token=\"your-token-here\"\n)\n\n# Get connection information\nresult = client.get_connection_info()\nif result[\"success\"]:\n print(f\"RabbitMQ Host: {result['rabbitmq_host']}\")\n print(f\"RabbitMQ Port: {result['rabbitmq_port']}\")\n print(f\"Database URL: {result['database_url']}\")\nelse:\n print(f\"Error: {result['error']}\")\n```\n\n## \ud83d\udd10 Authentication Flow\n\n1. **Worker Registration**: Create a worker through the Nedo Vision frontend\n2. **Token Generation**: System generates a unique authentication token\n3. **Service Initialization**: Worker service authenticates using the token\n4. **Connection Setup**: Service establishes secure connections to backend services\n5. **Task Processing**: Worker receives and processes computer vision tasks\n6. **Monitoring**: Continuous system monitoring and health reporting\n\n## \u2699\ufe0f Configuration Management\n\n## \u2699\ufe0f Configuration Management\n\n> **\u26a0\ufe0f Important Notice - Storage Path Coordination**\n>\n> If you're using **Nedo Vision Worker Core** alongside this service, ensure both services use the **same storage path**. This is critical for proper data sharing and model access between services.\n>\n> ```bash\n> # Example: Both services should use identical storage paths\n> nedo-worker run --token YOUR_TOKEN --storage-path /shared/nedo/storage\n> nedo-worker-core --storage-path /shared/nedo/storage\n> ```\n>\n> The storage path contains:\n>\n> - \ud83d\udcc1 **Models** - Shared AI models and weights\n> - \ud83d\udcc1 **Temporary files** - Processing artifacts and cache\n> - \ud83d\udcc1 **Logs** - Service operation logs\n> - \ud83d\udcc1 **Configurations** - Runtime settings and preferences\n\n### Environment Variables (Legacy Support)\n\n```bash\nexport NEDO_WORKER_TOKEN=\"your-token-here\"\nexport NEDO_SERVER_HOST=\"be.vision.sindika.co.id\"\nexport NEDO_STORAGE_PATH=\"./data\"\n\n# Run with environment variables (deprecated)\nnedo-worker run\n```\n\n### Configuration Priority\n\n1. **Command-line arguments** (highest priority)\n2. **Environment variables** (legacy support)\n3. **Default values** (lowest priority)\n\n## \ud83d\ude80 Platform-Specific Setup\n\n### Windows Setup\n\n#### Prerequisites\n\n```powershell\n# Install Chocolatey (package manager)\nSet-ExecutionPolicy Bypass -Scope Process -Force\n[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072\niex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))\n\n# Install FFmpeg\nchoco install ffmpeg -y\n\n# Verify installation\nffmpeg -version\n```\n\n#### Worker Installation\n\n```powershell\n# Install Python package\npip install nedo-vision-worker\n\n# Run system check\nnedo-worker doctor\n\n# Start worker\nnedo-worker run --token YOUR_TOKEN\n```\n\n### Linux Setup\n\n#### Ubuntu/Debian\n\n```bash\n# Update system\nsudo apt update\n\n# Install FFmpeg\nsudo apt install ffmpeg python3-pip\n\n# Install worker\npip3 install nedo-vision-worker\n\n# Run diagnostics\nnedo-worker doctor\n```\n\n#### CentOS/RHEL\n\n```bash\n# Install EPEL repository\nsudo yum install epel-release\n\n# Install dependencies\nsudo yum install ffmpeg python3-pip\n\n# Install worker\npip3 install nedo-vision-worker\n```\n\n### NVIDIA Jetson Setup\n\n```bash\n# Ensure JetPack is installed\nsudo apt update\n\n# Use system OpenCV (optimized for Jetson)\nsudo apt install python3-opencv\n\n# Install worker without OpenCV\npip3 install nedo-vision-worker --no-deps\npip3 install alembic ffmpeg-python grpcio pika protobuf psutil pynvml requests SQLAlchemy\n\n# Verify GPU support\nnedo-worker doctor\n\n# Check Jetson stats\nsudo /usr/bin/tegrastats\n```\n\n### macOS Setup\n\n```bash\n# Install Homebrew (if not installed)\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"\n\n# Install FFmpeg\nbrew install ffmpeg\n\n# Install worker\npip3 install nedo-vision-worker\n\n# Run diagnostics\nnedo-worker doctor\n```\n\n## \ud83d\udd27 Troubleshooting\n\n### Common Issues\n\n#### 1. FFmpeg Not Found\n\n```bash\n# Check if FFmpeg is installed\nffmpeg -version\n\n# Install FFmpeg\n# Ubuntu/Debian: sudo apt install ffmpeg\n# Windows: choco install ffmpeg\n# macOS: brew install ffmpeg\n```\n\n#### 2. OpenCV Issues on ARM\n\n```bash\n# For ARM devices, try headless version\npip uninstall opencv-python\npip install opencv-python-headless\n```\n\n#### 3. GPU Not Detected\n\n```bash\n# Check NVIDIA drivers\nnvidia-smi\n\n# Check CUDA installation\nnvcc --version\n\n# Run system diagnostics\nnedo-worker doctor\n```\n\n#### 4. Connection Issues\n\n```bash\n# Test network connectivity\nping be.vision.sindika.co.id\n\n# Check firewall settings\n# Ensure port 50051 is accessible\n\n# Verify token\nnedo-worker run --token YOUR_TOKEN --verbose\n```\n\n### Debug Mode\n\n```bash\n# Run with verbose logging\nnedo-worker run --token YOUR_TOKEN --verbose\n\n# Check logs\ntail -f ~/.nedo_worker/logs/worker.log\n```\n\n### Performance Optimization\n\n#### For High-Performance Workloads\n\n```bash\n# Increase system usage interval\nnedo-worker run --token YOUR_TOKEN --system-usage-interval 60\n\n# Use dedicated storage path\nnedo-worker run --token YOUR_TOKEN --storage-path /fast/ssd/storage\n```\n\n#### For Resource-Constrained Devices\n\n```bash\n# Use minimal configuration\nnedo-worker run --token YOUR_TOKEN --system-usage-interval 120\n```\n\n### Development Setup\n\n```bash\n# Clone and setup\ngit clone https://gitlab.com/sindika/research/nedo-vision/nedo-vision-worker-service\ncd nedo-vision-worker-service\n\n# Create virtual environment\npython -m venv venv\nsource venv/bin/activate\n\n# Install in development mode\npip install -e .[dev]\n\n# Run tests\npytest\n\n# Format code\nblack .\nisort .\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Nedo Vision Worker Service Library for AI Vision Processing",
"version": "1.1.0",
"project_urls": {
"Bug Reports": "https://gitlab.com/sindika/research/nedo-vision/nedo-vision-worker-service/-/issues",
"Documentation": "https://gitlab.com/sindika/research/nedo-vision/nedo-vision-worker-service/-/blob/main/README.md",
"Homepage": "https://gitlab.com/sindika/research/nedo-vision/nedo-vision-worker-service",
"Repository": "https://gitlab.com/sindika/research/nedo-vision/nedo-vision-worker-service"
},
"split_keywords": [
"computer-vision",
" machine-learning",
" ai",
" worker-service",
" deep-learning",
" object-detection",
" neural-networks",
" video-processing"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "b625b2c9ecbe0067e6dea71735f30a9f1f75a4cf30146942a2664f38c0b9facc",
"md5": "5a2d8a5868f68f6dff896e56c9abc035",
"sha256": "43c64fbc4cf637fd9b2d60db535a40d14645c0b9dc0aec5b5edb5d2be6bfa18d"
},
"downloads": -1,
"filename": "nedo_vision_worker-1.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5a2d8a5868f68f6dff896e56c9abc035",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 127100,
"upload_time": "2025-08-04T06:37:51",
"upload_time_iso_8601": "2025-08-04T06:37:51.747422Z",
"url": "https://files.pythonhosted.org/packages/b6/25/b2c9ecbe0067e6dea71735f30a9f1f75a4cf30146942a2664f38c0b9facc/nedo_vision_worker-1.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "8fda2d9457d3ae519db328df311edbf2bedc586f57a8b28730d1722b7af7a822",
"md5": "0f13c398c77ba2b34d608497d0cccb87",
"sha256": "98c56b949d5ce4c529371ed6a1edec568de7d95008b784bbc04fa580114b0d62"
},
"downloads": -1,
"filename": "nedo_vision_worker-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "0f13c398c77ba2b34d608497d0cccb87",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 81444,
"upload_time": "2025-08-04T06:37:53",
"upload_time_iso_8601": "2025-08-04T06:37:53.862352Z",
"url": "https://files.pythonhosted.org/packages/8f/da/2d9457d3ae519db328df311edbf2bedc586f57a8b28730d1722b7af7a822/nedo_vision_worker-1.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-04 06:37:53",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "sindika",
"gitlab_project": "research",
"lcname": "nedo-vision-worker"
}