Recent submissions

Comment · 5 months ago
To be frank I didn't know there's such an option :-)
Comment · 5 months ago
If someone is interested, this is my supershort zsh/bash scripts that I keep in .zshrc for doing the same thing using plain whisper.cpp, ffmpeg and yt-dlp (`brew install whisper-cpp yt-dlp` for Mac); I output it in vtt format (subtitles) though, but it's easy enough to change it to txt.

  yt_to_srt() {
    local url="$1"
    local output_base="$2"
    local language="${3:-en}"

    yt-dlp -x --audio-format wav --postprocessor-args "-ar 16000" -o "$output_base.wav" "$url"
    whisper-cli --language "$language" --model "$WHISPER_MODEL" --split-on-word --max-len 65 --output-vtt --output-file "$output_base" --file "$output_base.wav"
    rm "$output_base.wav"
  }

  file_to_srt() {
    local filepath="$1"
    local language="${2:-en}"

    local filename=$(basename "$filepath")
    local filename_no_ext="${filename%.*}"
    local output_base="$filename_no_ext"
    local temp_wav="$output_base.wav"

    ffmpeg -i "$filepath" -vn -acodec pcm_s16le -ar 16000 -ac 1 "$temp_wav"
    whisper-cli --language "$language" --model "$WHISPER_MODEL" --split-on-word --max-len 65 --output-vtt --output-file "$output_base" --file "$temp_wav"
    rm "$temp_wav"
  }
plus additional bootstrap script for large-v3-turbo model from my chez-moi dotfiles:

  #!/bin/bash
  # Download whisper.cpp models from Hugging Face (runs once per machine).
  set -euo pipefail
  MODELS_DIR="$HOME/whisper-models"
  BASE_URL="https://huggingface.co/ggerganov/whisper.cpp/resolve/main"
  MODELS=("ggml-large-v3-turbo.bin" "ggml-tiny.bin")
  mkdir -p "$MODELS_DIR"
  for model in "${MODELS[@]}"; do
    if [ ! -f "$MODELS_DIR/$model" ]; then
      echo "Downloading $model..."
      curl -L --progress-bar -o "$MODELS_DIR/$model" "$BASE_URL/$model"
    else
      echo "$model already exists, skipping."
    fi
  done
  echo "Whisper models ready at $MODELS_DIR"
Comment · 2 years ago
Replying to my own comment - it's trivially possible to replace `api_base` in settings.yaml. The only problem is that Ollama doesn't support OpenAI style embedding endpoint yet. But looking through PRs to Ollama, this is very close to being merged. All steps before actual embedding work fine with e.g. Llama3-8B.
Comment · 2 years ago
Does anyone know how to run it against Ollama?
Comment · 2 years ago
Really awesome project. I want to get into FPGAs, but honestly it's even hard to grasp where to start and the whole field feels very intimidating. My eventual goal would be to create acceleration card for LLMs (completely arbitrary), so a lot of same bits and pieces as in this project, probably except for memory offloading part to load bigger models.
Comment · 3 years ago
Slightly offtopic, but it's interesting to read comments from that day knowing what we know now. Especially those stating that there will be no conventional war nor loss of life.
Comment · 3 years ago
What's the best for OCR currently that I could deploy for myself? Like time I tried Tesseract 5 I wasn't too impressed.
Comment · 3 years ago
Am I missing something? It doesn't seem like this book is available online to read, just TOS and link to Amazon to buy paperback version.
Comment · 7 years ago
Lots of comments about ear-plugs for concerts and such. I'd like to remind every motorcycle rider to buy them too! Especially if you're riding a naked bike. Going moderately high speed on a highway for two hours made my ears ring for another couple of hours after I reached the destination.

There are special ear plugs for riders too, that would cut out the wind noise, while you're still able to hear your engine, other occupants of the road and comms inside helmet if you do ride with intercom.

Comment · 8 years ago
i love how machinebox provides excellent developer experience, other companies should learn from these guys
Comment · 11 years ago
I don't have any experience in neither Vim, nor Emacs. Should I try it? Looks awesome. Also - is there any way to add Go (golang) support?
Comment · 11 years ago
Thanks! I'll experiment with neo4j (graph db) and let's see what can we learn more about our politicians.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton