Update the LLM tutorial with improvements to keyboard_op, llm_op, and dataflow config. #2432
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # This file has been originally generated by maturin v0.14.17 | ||
| # To update, you can check | ||
| # | ||
| # maturin generate-ci github --zig | ||
| # | ||
| # But note that some manual modification has been done. | ||
| # Check the diffs to make sure that you haven't broken anything. | ||
| name: pip-release | ||
| on: | ||
| release: | ||
| types: | ||
| - "published" | ||
| workflow_dispatch: | ||
| push: | ||
| branches: | ||
| - main | ||
| pull_request: | ||
| types: | ||
| - opened | ||
| - synchronize | ||
| - reopened | ||
| - ready_for_review | ||
| paths: | ||
| - "apis/python/node/**" | ||
| - "binaries/cli/**" | ||
| - "Cargo.toml" | ||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.ref }} | ||
| cancel-in-progress: ${{ github.event_name != 'release' }} | ||
| permissions: | ||
| contents: write | ||
| jobs: | ||
| linux: | ||
| runs-on: ${{ matrix.platform.runner }} | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| platform: | ||
| - runner: ubuntu-22.04 | ||
| target: x86_64 | ||
| - runner: ubuntu-22.04 | ||
| target: x86 | ||
| - runner: ubuntu-22.04 | ||
| target: aarch64 | ||
| - runner: ubuntu-22.04 | ||
| target: armv7 | ||
| # - runner: ubuntu-22.04 | ||
| # target: s390x | ||
| # - runner: ubuntu-22.04 | ||
| # target: ppc64le | ||
| repository: | ||
| - path: apis/python/node | ||
| name: dora-node-api | ||
| - path: binaries/cli | ||
| name: dora-rs-cli | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: 3.8 | ||
| - run: rustup default stable | ||
| - run: rustup update | ||
| - uses: Swatinem/rust-cache@v2 | ||
| with: | ||
| cache-provider: buildjet | ||
| # only save caches for `main` branch | ||
| save-if: ${{ github.ref == 'refs/heads/main' }} | ||
| - name: Build wheels | ||
| uses: PyO3/maturin-action@v1 | ||
| with: | ||
| target: ${{ matrix.platform.target }} | ||
| args: --release --out dist --zig | ||
| manylinux: manylinux_2_28 | ||
| working-directory: ${{ matrix.repository.path }} | ||
| before-script-linux: sudo apt-get update && sudo apt-get install -y libatomic1-i386-cross libatomic1-armhf-cross && mkdir -p $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/i686-unknown-linux-gnu/lib/ && ln -s /usr/i686-linux-gnu/lib/libatomic.so.1 $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/i686-unknown-linux-gnu/lib/libatomic.so && ln -s /usr/i686-linux-gnu/lib/libatomic.so.1 $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/i686-unknown-linux-gnu/lib/libatomic.so.1 && ln -s /usr/i686-linux-gnu/lib/libatomic.so.1 /opt/hostedtoolcache/Python/3.8.18/x64/lib/libatomic.so.1 && mkdir -p $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/armv7-unknown-linux-gnueabihf/lib/ && ln -s /usr/arm-linux-gnueabihf/lib/libatomic.so.1 $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/armv7-unknown-linux-gnueabihf/lib/libatomic.so | ||
| before-script-linux: | | ||
| sudo apt-get update | ||
| sudo DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1-i386-cross libatomic1-armhf-cross | ||
| mkdir -p $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/i686-unknown-linux-gnu/lib/ | ||
| ln -s /usr/i686-linux-gnu/lib/libatomic.so.1 $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/i686-unknown-linux-gnu/lib/libatomic.so | ||
| ln -s /usr/i686-linux-gnu/lib/libatomic.so.1 $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/i686-unknown-linux-gnu/lib/libatomic.so.1 | ||
| ln -s /usr/i686-linux-gnu/lib/libatomic.so.1 /opt/hostedtoolcache/Python/3.8.18/x64/lib/libatomic.so.1 | ||
| mkdir -p $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/armv7-unknown-linux-gnueabihf/lib/ | ||
| ln -s /usr/arm-linux-gnueabihf/lib/libatomic.so.1 $HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/armv7-unknown-linux-gnueabihf/lib/libatomic.so | ||
| - name: Upload wheels | ||
| if: github.event_name == 'release' | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: ${{ matrix.repository.name }}-linux-${{ matrix.platform.target }} | ||
| path: ${{ matrix.repository.path }}/dist | ||
| musllinux: | ||
| runs-on: ${{ matrix.platform.runner }} | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| platform: | ||
| - runner: ubuntu-22.04 | ||
| target: x86_64 | ||
| - runner: ubuntu-22.04 | ||
| target: x86 | ||
| - runner: ubuntu-22.04 | ||
| target: aarch64 | ||
| repository: | ||
| - path: apis/python/node | ||
| name: dora-node-api | ||
| - path: binaries/cli | ||
| name: dora-rs-cli | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: 3.8 | ||
| - name: Build wheels | ||
| uses: PyO3/maturin-action@v1 | ||
| with: | ||
| target: ${{ matrix.platform.target }} | ||
| args: --release --out dist | ||
| sccache: "false" | ||
| manylinux: musllinux_1_2 | ||
| working-directory: ${{ matrix.repository.path }} | ||
| - name: Upload wheels | ||
| if: github.event_name == 'release' | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: ${{ matrix.repository.name }}-musllinux-${{ matrix.platform.target }} | ||
| path: ${{ matrix.repository.path }}/dist | ||
| musleabi: | ||
| runs-on: ubuntu-22.04 | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| platform: | ||
| [ | ||
| { | ||
| target: "armv7-unknown-linux-musleabihf", | ||
| image_tag: "armv7-musleabihf", | ||
| }, | ||
| ] | ||
| repository: | ||
| - path: apis/python/node | ||
| name: dora-node-api | ||
| - path: binaries/cli | ||
| name: dora-rs-cli | ||
| container: | ||
| image: docker://messense/rust-musl-cross:${{ matrix.platform.image_tag }} | ||
| env: | ||
| CFLAGS_armv7_unknown_linux_musleabihf: "-mfpu=vfpv3-d16" | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: 3.8 | ||
| - name: Build Wheels | ||
| uses: PyO3/maturin-action@v1 | ||
| with: | ||
| target: ${{ matrix.platform.target }} | ||
| manylinux: auto | ||
| container: off | ||
| args: --release -o dist | ||
| working-directory: ${{ matrix.repository.path }} | ||
| - name: Upload wheels | ||
| if: github.event_name == 'release' | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: ${{ matrix.repository.name }}-musllinux-${{ matrix.platform.target }} | ||
| path: ${{ matrix.repository.path }}/dist | ||
| windows: | ||
| runs-on: ${{ matrix.platform.runner }} | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| platform: | ||
| - runner: windows-latest | ||
| target: x64 | ||
| repository: | ||
| - path: apis/python/node | ||
| name: dora-node-api | ||
| - path: binaries/cli | ||
| name: dora-rs-cli | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: 3.8 | ||
| architecture: ${{ matrix.platform.target }} | ||
| - name: Build wheels | ||
| uses: PyO3/maturin-action@v1 | ||
| with: | ||
| target: ${{ matrix.platform.target }} | ||
| args: --release --out dist -i 3.8 | ||
| sccache: "true" | ||
| working-directory: ${{ matrix.repository.path }} | ||
| - name: Upload wheels | ||
| if: github.event_name == 'release' | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: ${{ matrix.repository.name }}-windows-${{ matrix.platform.target }} | ||
| path: ${{ matrix.repository.path }}/dist | ||
| macos: | ||
| runs-on: ${{ matrix.platform.runner }} | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| platform: | ||
| - runner: macos-15 | ||
| target: aarch64 | ||
| repository: | ||
| - path: apis/python/node | ||
| name: dora-node-api | ||
| - path: binaries/cli | ||
| name: dora-rs-cli | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: 3.8 | ||
| - name: Build wheels | ||
| uses: PyO3/maturin-action@v1 | ||
| with: | ||
| target: ${{ matrix.platform.target }} | ||
| args: --release --out dist -i 3.8 | ||
| working-directory: ${{ matrix.repository.path }} | ||
| - name: Upload wheels | ||
| if: github.event_name == 'release' | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: ${{ matrix.repository.name }}-macos-${{ matrix.platform.target }} | ||
| path: ${{ matrix.repository.path }}/dist | ||
| sdist: | ||
| runs-on: ubuntu-22.04 | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| repository: | ||
| - path: apis/python/node | ||
| name: dora-node-api | ||
| - path: binaries/cli | ||
| name: dora-rs-cli | ||
| steps: | ||
| - uses: actions/checkout@v3 | ||
| - name: Build sdist | ||
| uses: PyO3/maturin-action@v1 | ||
| with: | ||
| command: sdist | ||
| args: --out dist | ||
| working-directory: ${{ matrix.repository.path }} | ||
| - name: Upload sdist | ||
| if: github.event_name == 'release' | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: ${{ matrix.repository.name }}-sdist | ||
| path: ${{ matrix.repository.path }}/dist | ||
| release: | ||
| name: Release | ||
| runs-on: ubuntu-22.04 | ||
| if: github.event_name == 'workflow_dispatch' || github.event_name == 'release' && startsWith(github.ref, 'refs/tags/') | ||
| needs: [linux, musllinux, musleabi, windows, macos, sdist] | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| repository: | ||
| - path: apis/python/node | ||
| name: dora-node-api | ||
| - path: binaries/cli | ||
| name: dora-rs-cli | ||
| steps: | ||
| - uses: actions/download-artifact@v4 | ||
| - name: Publish to PyPI | ||
| uses: PyO3/maturin-action@v1 | ||
| env: | ||
| MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_PASS }} | ||
| with: | ||
| command: upload | ||
| args: --non-interactive --skip-existing ${{ matrix.repository.name }}-*/* | ||