whisper core at root of wlk
This commit is contained in:
parent
7108d2ddc5
commit
13401ffe24
30 changed files with 19 additions and 26 deletions
|
|
@ -72,7 +72,6 @@ Go to `chrome-extension` for instructions.
|
||||||
| **Apple Silicon optimizations** | `mlx-whisper` |
|
| **Apple Silicon optimizations** | `mlx-whisper` |
|
||||||
| **Translation** | `nllw` |
|
| **Translation** | `nllw` |
|
||||||
| *[Not recommanded]* Speaker diarization with Diart | `diart` |
|
| *[Not recommanded]* Speaker diarization with Diart | `diart` |
|
||||||
| *[Not recommanded]* Original Whisper backend | `whisper` |
|
|
||||||
| *[Not recommanded]* Improved timestamps backend | `whisper-timestamped` |
|
| *[Not recommanded]* Improved timestamps backend | `whisper-timestamped` |
|
||||||
| OpenAI API backend | `openai` |
|
| OpenAI API backend | `openai` |
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -54,15 +54,15 @@ packages = [
|
||||||
"whisperlivekit",
|
"whisperlivekit",
|
||||||
"whisperlivekit.diarization",
|
"whisperlivekit.diarization",
|
||||||
"whisperlivekit.simul_whisper",
|
"whisperlivekit.simul_whisper",
|
||||||
"whisperlivekit.simul_whisper.whisper",
|
"whisperlivekit.whisper",
|
||||||
"whisperlivekit.simul_whisper.whisper.assets",
|
"whisperlivekit.whisper.assets",
|
||||||
"whisperlivekit.simul_whisper.whisper.normalizers",
|
"whisperlivekit.whisper.normalizers",
|
||||||
"whisperlivekit.web",
|
"whisperlivekit.web",
|
||||||
"whisperlivekit.whisper_streaming_custom",
|
"whisperlivekit.local_agreement",
|
||||||
"whisperlivekit.vad_models"
|
"whisperlivekit.vad_models"
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.setuptools.package-data]
|
[tool.setuptools.package-data]
|
||||||
whisperlivekit = ["web/*.html", "web/*.css", "web/*.js", "web/src/*.svg"]
|
whisperlivekit = ["web/*.html", "web/*.css", "web/*.js", "web/src/*.svg"]
|
||||||
"whisperlivekit.simul_whisper.whisper.assets" = ["*.tiktoken", "*.npz"]
|
"whisperlivekit.whisper.assets" = ["*.tiktoken", "*.npz"]
|
||||||
"whisperlivekit.vad_models" = ["*.jit", "*.onnx"]
|
"whisperlivekit.vad_models" = ["*.jit", "*.onnx"]
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,6 @@
|
||||||
try:
|
from whisperlivekit.local_agreement.whisper_online import backend_factory
|
||||||
from whisperlivekit.whisper_streaming_custom.whisper_online import backend_factory
|
from whisperlivekit.simul_whisper import SimulStreamingASR
|
||||||
from whisperlivekit.whisper_streaming_custom.online_asr import OnlineASRProcessor
|
from whisperlivekit.local_agreement.online_asr import OnlineASRProcessor
|
||||||
except ImportError:
|
|
||||||
from .whisper_streaming_custom.whisper_online import backend_factory
|
|
||||||
from .whisper_streaming_custom.online_asr import OnlineASRProcessor
|
|
||||||
from argparse import Namespace
|
from argparse import Namespace
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
|
@ -82,9 +79,7 @@ class TranscriptionEngine:
|
||||||
self.vac_model = load_silero_vad(onnx=use_onnx)
|
self.vac_model = load_silero_vad(onnx=use_onnx)
|
||||||
|
|
||||||
if self.args.transcription:
|
if self.args.transcription:
|
||||||
if self.args.backend == "simulstreaming":
|
if self.args.backend == "simulstreaming":
|
||||||
from whisperlivekit.simul_whisper import SimulStreamingASR
|
|
||||||
|
|
||||||
simulstreaming_params = {
|
simulstreaming_params = {
|
||||||
"disable_fast_encoder": False,
|
"disable_fast_encoder": False,
|
||||||
"custom_alignment_heads": None,
|
"custom_alignment_heads": None,
|
||||||
|
|
|
||||||
|
|
@ -6,17 +6,18 @@ import logging
|
||||||
import platform
|
import platform
|
||||||
from whisperlivekit.timed_objects import ASRToken, Transcript, ChangeSpeaker
|
from whisperlivekit.timed_objects import ASRToken, Transcript, ChangeSpeaker
|
||||||
from whisperlivekit.warmup import load_file
|
from whisperlivekit.warmup import load_file
|
||||||
from .whisper import load_model, tokenizer
|
from whisperlivekit.whisper import load_model, tokenizer
|
||||||
from .whisper.audio import TOKENS_PER_SECOND
|
from whisperlivekit.whisper.audio import TOKENS_PER_SECOND
|
||||||
import os
|
import os
|
||||||
import gc
|
import gc
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
logger = logging.getLogger(__name__)
|
|
||||||
|
|
||||||
import torch
|
import torch
|
||||||
from whisperlivekit.simul_whisper.config import AlignAttConfig
|
from whisperlivekit.simul_whisper.config import AlignAttConfig
|
||||||
from whisperlivekit.simul_whisper.simul_whisper import PaddedAlignAttWhisper
|
from whisperlivekit.simul_whisper.simul_whisper import PaddedAlignAttWhisper
|
||||||
from whisperlivekit.simul_whisper.whisper import tokenizer
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
from .mlx_encoder import mlx_model_mapping, load_mlx_encoder
|
from .mlx_encoder import mlx_model_mapping, load_mlx_encoder
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
from .whisper.decoding import PyTorchInference
|
from whisperlivekit.whisper.decoding import PyTorchInference
|
||||||
|
|
||||||
# extention of PyTorchInference for beam search
|
# extention of PyTorchInference for beam search
|
||||||
class BeamPyTorchInference(PyTorchInference):
|
class BeamPyTorchInference(PyTorchInference):
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,3 @@
|
||||||
# This code was originally in simul_whisper/transcriber/simul_whisper.py . It is adapted a lot for SimulStreaming.
|
|
||||||
|
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from typing import Literal
|
from typing import Literal
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,12 +6,12 @@ import logging
|
||||||
import torch
|
import torch
|
||||||
import torch.nn.functional as F
|
import torch.nn.functional as F
|
||||||
|
|
||||||
from .whisper import load_model, DecodingOptions, tokenizer
|
from whisperlivekit.whisper import load_model, DecodingOptions, tokenizer
|
||||||
from .config import AlignAttConfig
|
from .config import AlignAttConfig
|
||||||
from whisperlivekit.timed_objects import ASRToken
|
from whisperlivekit.timed_objects import ASRToken
|
||||||
from .whisper.audio import log_mel_spectrogram, TOKENS_PER_SECOND, pad_or_trim, N_SAMPLES, N_FRAMES
|
from whisperlivekit.whisper.audio import log_mel_spectrogram, TOKENS_PER_SECOND, pad_or_trim, N_SAMPLES, N_FRAMES
|
||||||
from .whisper.timing import median_filter
|
from whisperlivekit.whisper.timing import median_filter
|
||||||
from .whisper.decoding import GreedyDecoder, BeamSearchDecoder, SuppressTokens, detect_language
|
from whisperlivekit.whisper.decoding import GreedyDecoder, BeamSearchDecoder, SuppressTokens, detect_language
|
||||||
from .beam import BeamPyTorchInference
|
from .beam import BeamPyTorchInference
|
||||||
from .eow_detection import fire_at_boundary, load_cif
|
from .eow_detection import fire_at_boundary, load_cif
|
||||||
import os
|
import os
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue