Installation Guide

System Requirements

  • Python 3.8 or higher

  • Linux x86_64 or ARM64 for SDK development and tests

  • NeoRuntime Platform runtime environment for live device operations

Dependencies

The SDK depends on the following Python packages:

  • grpcio >= 1.50.0 - gRPC communication

  • protobuf >= 4.21.0 - Protocol Buffers

  • numpy >= 1.20.0 - Array processing

  • Pillow >= 9.0.0 - Image processing

Installation Methods

Install from Source

The SDK is not published to PyPI yet. Install from the public repository:

git clone https://github.com/camthink-ai/neoruntime-sdks.git
cd neoruntime-sdks
python -m pip install -e ./python

Build a Wheel

cd neoruntime-sdks/python
python -m pip install --upgrade build
python -m build --wheel
ls dist/*.whl

The generated .whl file is written to dist/. Install it locally to verify the artifact:

python -m pip install dist/neoruntime_ipc_sdk-*.whl

GitHub Actions Wheel Artifacts

The public repository builds the Python wheel with GitHub Actions. Open Actions -> Build Python SDK wheel and download the python-sdk-wheel artifact from a successful run.

Maintainers can also publish a GitHub Release by pushing a matching version tag or running the workflow manually with release publishing enabled.

Planned Package Channels

PyPI and tarball packages are not published yet. Do not use pip install neoruntime-ipc-sdk or tarball URLs until those release channels are announced.

When PyPI publishing is enabled, installation will use:

python -m pip install neoruntime-ipc-sdk

Verify Installation

import neoruntime_ipc_sdk
print(neoruntime_ipc_sdk.__version__)
# Output: 0.4.0

Development Environment

If you need to develop or test the SDK, install the development dependencies:

pip install -e ".[dev]"

This installs additional tools:

  • pytest - Unit testing

  • pytest-cov - Test coverage

  • black - Code formatting

  • flake8 - Code linting

  • mypy - Type checking

Docker Environment

Using the current public source repository:

FROM python:3.11-slim
RUN apt-get update \
    && apt-get install -y --no-install-recommends git \
    && rm -rf /var/lib/apt/lists/*
RUN python -m pip install --no-cache-dir \
    "git+https://github.com/camthink-ai/neoruntime-sdks.git#subdirectory=python"

Or build your own image:

FROM python:3.10-slim
COPY neoruntime_ipc_sdk-0.4.0-py3-none-any.whl /tmp/
RUN python -m pip install --no-cache-dir /tmp/neoruntime_ipc_sdk-0.4.0-py3-none-any.whl
WORKDIR /app
COPY app.py .
CMD ["python3", "app.py"]

Troubleshooting

Permission Issues

If you encounter Unix socket permission errors:

# Ensure the user is in the aipc group
sudo usermod -aG aipc $USER

# Re-login or refresh the group
newgrp aipc

gRPC Connection Failure

Check if platform services are running:

# Check service status
systemctl status ai-runtime
systemctl status event-bus
systemctl status device-control

# Check socket files
ls -l /run/aipc/*.sock

Dependency Conflicts

If you encounter dependency version conflicts, use a virtual environment:

python3 -m venv venv
source venv/bin/activate
git clone https://github.com/camthink-ai/neoruntime-sdks.git
python -m pip install -e neoruntime-sdks/python