Initial vault setup
This commit is contained in:
@@ -0,0 +1,135 @@
|
||||
---
|
||||
title: Scriberr
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, artificial-intelligence, transcription, audio, whisper, parakeet, diarization, go, mit]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=artificial-intelligence, https://github.com/rishikanthc/scriberr]
|
||||
---
|
||||
|
||||
# Scriberr 🎙️
|
||||
> **L'alternative self-hosted au Plaud Note** — transcription audio/vidéo **100 % locale** avec Whisper / NVIDIA Parakeet / Canary, **diarisation locuteur**, **chat RAG sur vos transcriptions** et PWA installable, en Go + TypeScript.
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | https://scriberr.app/ |
|
||||
| **GitHub** | https://github.com/rishikanthc/scriberr |
|
||||
| **License** | MIT |
|
||||
| **Langage** | Go (50 %), TypeScript (43 %), Python (4 %) |
|
||||
| **Étoiles** | 210 |
|
||||
| **Dernière MAJ** | 2025-12-17 (v1.2.0) |
|
||||
| **Catégorie** | [[cat-artificial-intelligence]] |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
**Scriberr** est né d'une frustration très concrète de son créateur, **rishikanthc** : ayant acheté un **Plaud Note** (mini-boîtier d'enregistrement IA), il n'a pas supporté que ses conversations soient envoyées dans un cloud tiers ni de payer **100 à 240 $/an** d'abonnement. Scriberr est sa réponse : une application **complètement offline** qui transcrit audios et vidéos localement, sans qu'aucun octet ne quitte votre machine.
|
||||
|
||||
Côté modèles, Scriberr supporte les **Whisper** (toutes tailles : tiny, base, small, medium, large-v3, turbo), les **NVIDIA Parakeet** (modèles CTC très rapides, en anglais) et **Canary** (modèles NVIDIA multilingues). La **diarisation locuteur** (qui parle quand) est intégrée nativement, le **chat avec vos audios** se fait via Ollama ou n'importe quel endpoint OpenAI-compatible : vous pouvez poser des questions du type *« Résume les 5 derniers podcasts et donne-moi les 3 idées communes »*. Une **PWA** installable, un **enregistreur audio intégré** pour les réunions, un **module notes** couplé aux transcriptions, et un **Folder Watcher** pour automatiser via n8n / Make / vos propres scripts.
|
||||
|
||||
Le projet est **remarquablement complet** : 2 700 ⭐, 827 commits, 17 contributeurs, 16 releases, PWA, API REST documentée, support CUDA + CPU, support Blackwell (RTX 50). ⚠️ **Statut développement** : l'auteur principal a été touché par les **licenciements eBay** mi-2025 et le développement est **en pause** (mais pas abandonné). L'app reste stable en v1.2.0 et la communauté est invitée à contribuer.
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
### Option 1 : Docker Compose (recommandé)
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
scriberr:
|
||||
image: ghcr.io/rishikanthc/scriberr:v1.2.0
|
||||
container_name: scriberr
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8080:8080"
|
||||
volumes:
|
||||
- scriberr-data:/app/data # DB + transcrits + uploads
|
||||
- scriberr-env:/app/whisperx-env # env Python des modèles (vide au 1er démarrage)
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- APP_ENV=production
|
||||
- TZ=Europe/Paris
|
||||
- LLM_BASE_URL=http://host.docker.internal:11434/v1 # optionnel, pour le chat
|
||||
- LLM_MODEL=llama3.1:8b
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/api/health"]
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
|
||||
volumes:
|
||||
scriberr-data:
|
||||
scriberr-env:
|
||||
```
|
||||
|
||||
Pour **CUDA** (GPU NVIDIA), utilisez l'image `ghcr.io/rishikanthc/scriberr-cuda:v1.2.0` et ajoutez le bloc `deploy.resources.reservations.devices` classique. Pour **RTX 50-series (Blackwell)**, il faut **impérativement** l'image `scriberr-cuda-blackwell:v1.2.0` (compute capability sm_120).
|
||||
|
||||
### Option 2 : Homebrew (macOS/Linux, sans Docker)
|
||||
|
||||
```bash
|
||||
brew tap rishikanthc/scriberr
|
||||
brew install scriberr
|
||||
scriberr # démarre sur http://localhost:8080
|
||||
```
|
||||
|
||||
### Option 3 : Installation manuelle
|
||||
|
||||
Prérequis : **Go 1.22+**, **Node.js 20+** (frontend), **Python 3.11+** avec `uv` (pour les modèles WhisperX), **ffmpeg** système. `git clone`, `cd web && pnpm install && pnpm build`, `cd server && go build`, lancez le binaire puis servez le bundle frontend via Nginx/Caddy. Prévoyez **2-4 Go de RAM** en CPU, **6-10 Go VRAM** en CUDA pour `large-v3`.
|
||||
|
||||
## ⚙️ Configuration
|
||||
|
||||
Scriberr se configure depuis l'**UI web** (`http://localhost:8080`) au premier lancement :
|
||||
|
||||
1. **Choisir le modèle** : Whisper (recommandé `small` CPU, `large-v3` GPU) / Parakeet (Anglais, ultra-rapide) / Canary (multilingue).
|
||||
2. **Activer la diarisation** : nécessite un compte HuggingFace + acceptation des CGU **pyannote/segmentation-3.0**.
|
||||
3. **Activer le chat LLM** : saisissez l'URL Ollama ou un endpoint OpenAI + clé API.
|
||||
4. **Folder Watcher** : pointer vers un dossier où vous déposez des MP3/M4A/WAV, Scriberr les transcrit automatiquement.
|
||||
5. **API REST** : `POST /api/transcribe` (multipart file), `GET /api/jobs/:id`, `GET /api/transcripts/:id` — idéal pour scripter.
|
||||
|
||||
⚠️ **Migration v1.1.0 → v1.2.0** : le volume `whisperx-env` doit être **vide** (supprimez l'ancien dossier sinon Scriberr plantera). Le volume `app/data` contient désormais la DB + les transcrits + uploads.
|
||||
|
||||
## 🔄 Alternatives
|
||||
|
||||
### Open Source
|
||||
- **WhisperX** — moteur bas-niveau, pas d'UI ni d'API REST propre.
|
||||
- **Insanely-fast-whisper** — CLI optimisée, pas de PWA ni de chat.
|
||||
- **OpenVoice** (transcription) — TTS avant tout, pas comparable.
|
||||
- **Vibe** — autre UI Whisper, plus simple, sans diarisation.
|
||||
- **Gladia** (self-hosted via LocalStack) — plutôt cloud-first.
|
||||
- [[app-speaches]] — concurrent direct, OpenAI-compatible, plus simple mais sans PWA ni folder watcher.
|
||||
- [[app-paperless-ai]] — RAG sur documents, pas sur audio.
|
||||
|
||||
### Propriétaires (ce que Scriberr remplace)
|
||||
- **Plaud Note** ($240/an + $200 matériel) — boîtier d'enregistrement cloud, abonnement obligatoire.
|
||||
- **Otter.ai** ($8-$30/mois) — 300 min gratuites/mois, sinon 100 $/an Pro.
|
||||
- **Fireflies.ai** ($10-$19/mois/utilisateur) — meeting assistant cloud.
|
||||
- **Trint** ($80/mois) — workflow journalistique pro.
|
||||
- **Sonix** ($10-$50/mois) — rapide mais cloud-only.
|
||||
- **Whisper API d'OpenAI** ($0.006/min) — pas d'UI, pas de diarisation, pas de RAG.
|
||||
|
||||
## 🔐 Sécurité
|
||||
|
||||
- **Pas d'auth par défaut** : Scriberr n'a **aucun système d'authentification intégré**. Placez-le **derrière un reverse-proxy authentifié** (Authelia, Authentik, oauth2-proxy) ou **Tailscale** — sinon n'importe qui sur votre réseau peut uploader des fichiers et lire vos transcriptions (potentiellement sensibles : RH, médical, avocat).
|
||||
- **HTTPS obligatoire** (Caddy/Traefik) : les flux audio sont personnels, ne transitent pas en clair.
|
||||
- **GPU partagé** : si vous utilisez Ollama + Scriberr sur la même machine, surveillez la **VRAM** (Scriberr + Ollama `8b` = ~10 Go, ça passe sur un RTX 3090 mais pas sur un 3060 12 Go avec un `large-v3`).
|
||||
- **Diarisation pyannote** : token HF obligatoire + accepter les CGU du modèle (RGPD-friendly car traitement local).
|
||||
- **Backups** : exportez le volume `scriberr-data` (SQLite + transcrits) vers [[app-restic]] ou [[app-borg]] — c'est votre seule copie si le disque lâche.
|
||||
- **Développement en pause** : restez sur la v1.2.0 stable, ne migrez pas sur des tags `-rc` qui n'arriveront peut-être jamais.
|
||||
|
||||
## 📚 Ressources
|
||||
|
||||
- [GitHub rishikanthc/scriberr](https://github.com/rishikanthc/scriberr)
|
||||
- [Site officiel](https://scriberr.app/)
|
||||
- [Documentation](https://scriberr.app/docs)
|
||||
- [API REST](https://scriberr.app/api)
|
||||
- [Discussion Coolify #7898](https://github.com/coollabsio/coolify/discussions/7898)
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-artificial-intelligence]] — Catégorie AI
|
||||
- [[app-speaches]] — Concurrent STT/TTS OpenAI-compatible
|
||||
- [[app-ollama]] — Backend LLM pour le chat RAG
|
||||
- [[app-restic]] — Backup du volume
|
||||
- [[recettes-docker-compose]] — Templates Docker
|
||||
- [[securisation-home-lab]] — Reverse proxy authentifié
|
||||
Reference in New Issue
Block a user