MCPcopy Create free account
hub / github.com/Standard-Intelligence/hertz-dev

github.com/Standard-Intelligence/hertz-dev @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
215 symbols 548 edges 11 files 25 documented · 12% 8 cross-repo links updated 19mo ago★ 1,79816 open issues

Browse by type

Functions 173 Types & classes 41 Endpoints 1
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

hertz-dev

Hertz-dev is an open-source, first-of-its-kind base model for full-duplex conversational audio.

See our blog post for more details: https://si.inc/hertz-dev/

Setup

Inference is known to work on Python 3.10 and CUDA 12.1. Other versions have not been tested as thoroughly. If you want to use CUDA 12.1, you'll need to install torch with pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 before running pip install -r requirements.txt.

On Ubuntu you may need to install libportaudio: sudo apt-get install libportaudio2

All three scripts will automatically download the models to the ./ckpt directory, and checkpoints are also accessible at https://ckpt.si.inc/hertz-dev/index.txt

Usage

We recommend starting by using inference.ipynb to generate one- or two-channel completions from a prompt.

Then, you can use inference_client.py and inference_server.py to talk to the model live through your microphone. These are currently experimental, and have primarily been tested with Ubuntu on the server and MacOS on the client.

Alternatively, you can use inference_client_webrtc.py, which is built on streamlit + streamlit-webrtc and runs in a browser:

# Install additional requirements
pip install -r requirements_webrtc.txt
# Run the client
streamlit run inference_client_webrtc.py

Then, access the client at http://localhost:8501.

Note: If you host the streamlit client anywhere other than localhost you will need to connect with https to avoid errors (see here for more info). An easy workaround is to ssh from the client into the server with port forwarding ssh -L 127.0.0.1:8501:remote-host:8501 user@remote-host, after which you can access the client at http://localhost:8501 as usual. If serving from a remote host with https, you may need to use a STUN server to establish the connection. You can do this by passing the --use_ice_servers flag: streamlit run inference_client_webrtc.py -- --use_ice_servers.

Core symbols most depended-on inside this repo

browse all functions →

Shape

Method 131
Function 42
Class 41
Route 1

Languages

Python100%

Modules by API surface

tokenizer.py56 symbols
transformer.py41 symbols
ioblocks.py32 symbols
model.py24 symbols
utils/blocks.py15 symbols
inference_client_webrtc.py12 symbols
utils/interp.py9 symbols
utils/dist.py9 symbols
inference_server.py9 symbols
inference_client.py8 symbols

Dependencies from manifests, versioned

IProgress0.4 · 1×
einops0.8.0 · 1×
fastapi0.115.4 · 1×
ipython8.18.1 · 1×
matplotlib3.9.2 · 1×
numpy1.26.3 · 1×
requests2.32.3 · 1×
sounddevice0.5.1 · 1×
soundfile0.12.1 · 1×
streamlit1.33.0 · 1×
streamlit-webrtc0.47.9 · 1×
torch2.5.1 · 1×

For agents

$ claude mcp add hertz-dev \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page