4 pontos por GN⁺ 22 일 전 | 1 comentários | Compartilhar no WhatsApp
  • App de reconhecimento de voz local para macOS que converte automaticamente a fala em texto e cola o resultado ao manter a tecla Control pressionada enquanto você fala
  • Todo o processo de reconhecimento de voz e limpeza do texto é feito apenas localmente, garantindo privacidade sem envio para a nuvem
  • Baseado em WhisperKit e LLM.swift, faz download automático de modelos do Hugging Face e os armazena em cache
  • Com recurso de limpeza inteligente, remove falas desnecessárias e corrige expressões de autocorreção, executando em segundo plano como app da barra de menus
  • Disponível como código aberto sob licença MIT e funciona em Apple Silicon com macOS 14 ou superior

Visão geral

  • Ghost Pepper é um app de conversão de voz em texto totalmente local para macOS, que oferece a função de pressionar a tecla Control, falar e, ao soltar, converter automaticamente em texto e colar
  • Não usa APIs em nuvem, e todos os dados e modelos são processados apenas localmente
  • Funciona em Apple Silicon (M1 ou superior) com macOS 14.0 ou superior
  • É executado como app da barra de menus e pode iniciar automaticamente ao fazer login
  • Projeto de código aberto disponibilizado sob licença MIT

Principais recursos

  • Pressione a tecla Control e fale → ao soltar a tecla, ocorre automaticamente a conversão em texto e a colagem
  • Arquitetura de execução local, em que tanto o reconhecimento de voz quanto os modelos de pós-processamento rodam dentro do Mac
  • Recurso de limpeza inteligente remove falas desnecessárias (uh, um etc.) e corrige automaticamente expressões de autocorreção
  • Interface exclusiva da barra de menus, funcionando em segundo plano sem ícone no Dock
  • Suporte a configurações do usuário: editar o prompt de limpeza, selecionar o microfone e ativar/desativar recursos

Como funciona

  • Todos os modelos são baseados em código aberto e, na primeira execução, são baixados automaticamente e armazenados em cache local
  • O reconhecimento de voz é feito com WhisperKit, e a limpeza do texto com LLM.swift
  • Os arquivos de modelo são fornecidos pelo Hugging Face
  • Modelos de reconhecimento de voz

    • Whisper tiny.en (~75MB): modelo somente em inglês mais rápido
    • Whisper small.en (~466MB): padrão, modelo somente em inglês com alta precisão
    • Whisper small (multilingual): suporte multilíngue
    • Parakeet v3 (~1.4GB): suporte a 25 idiomas, baseado em FluidAudio
  • Modelos de limpeza de texto

    • Qwen 3.5 0.8B (~535MB): padrão, processamento em cerca de 1–2 segundos
    • Qwen 3.5 2B (~1.3GB): velocidade de processamento rápida (cerca de 4–5 segundos)
    • Qwen 3.5 4B (~2.8GB): melhor qualidade (cerca de 5–7 segundos)

Instalação e execução

  • Instalação do app

    1. Baixe GhostPepper.dmg
    2. Abra o DMG e arraste para a pasta Applications
    3. Permita as permissões de Microfone e Acessibilidade
    4. Comece a usar com pressionar a tecla Control e falar
  • Compilação a partir do código-fonte

    1. Clone o repositório
    2. Abra GhostPepper.xcodeproj no Xcode
    3. Compile e execute com Cmd+R

Permissões necessárias

Permissão Objetivo
Microphone Gravação de voz
Accessibility Executar atalho global e colagem automática

Informações adicionais

  • A opção de iniciar automaticamente ao fazer login vem ativada por padrão e pode ser desativada nas configurações
  • Nenhum log é salvo em disco — o texto convertido não é registrado em arquivo, e os logs de depuração são mantidos apenas na memória e apagados ao encerrar o app

Estrutura técnica e dependências

  • WhisperKit: mecanismo de reconhecimento de voz
  • LLM.swift: LLM local para limpeza de texto
  • Hugging Face: hospedagem de modelos
  • Sparkle: gerenciamento de atualizações do app para macOS

Significado do nome

  • Todos os modelos rodam apenas localmente, portanto dados pessoais não são enviados para fora
  • O nome Ghost Pepper (pimenta extremamente ardida) simboliza recursos poderosos oferecidos gratuitamente

Suporte a empresas e dispositivos gerenciados

  • O app exige permissão de Acessibilidade (Accessibility) e, em geral, requer privilégios de administrador
  • Em ambientes MDM (Jamf, Kandji, Mosaic etc.), é possível fazer pré-aprovação por meio de um perfil PPPC (Privacy Preferences Policy Control)
    • Bundle ID: com.github.matthartman.ghostpepper
    • Team ID: BBVMGXR9AY
    • Permission: Accessibility (com.apple.security.accessibility)

1 comentários

 
GN⁺ 22 일 전
Comentários do Hacker News
  • Este app é realmente muito legal. Mas toda vez que vejo isso, lembro do meu Pixel 6
    É um modelo de 2021, mas já faz conversão de voz em texto offline e ainda corrige automaticamente com base no contexto. Se eu continuo falando, ele até revisa as frases anteriores.
    Impressiona que o Google tenha colocado essa tecnologia 5 anos antes de Whisper ou Qwen. Então fico me perguntando por que agora é preciso um modelo transformer de 1 GB em plataformas mais potentes

    • Esse é o mesmo modelo usado na WebSpeech API. Ele também funciona totalmente offline
      O Google ajudou a treinar esse modelo há cerca de 10 anos, e ele ainda é muito bom.
      Ele vem embutido em navegadores baseados em Webkit ou Blink, então vários sites o usam como um frontend simples.
      Mas o modelo em si é um blob proprietário, então não há suporte no Firefox
      Documentação MDN / Demo do Chrome
    • O Microsoft OneNote também tinha algo parecido por volta de 2007.
      Eu estava no time na época, e como não havia equipe de manutenção, abandonamos o modelo offline e migramos para online apenas.
      Não foi por motivo técnico, mas simplesmente por falta de pessoal para manutenção
    • A precisão é bem menor.
      No Android uso Futo e no macOS MacWhisper. São muito melhores que o modelo padrão da Apple
    • O macOS e o iOS também fazem isso com o recurso nativo de ditado. No Mac é Globe + D
    • O meu Pixel 7, na verdade, tem uma taxa de reconhecimento tão ruim que quase não consigo usar.
      Em compensação, modelos locais de STT open source como Whisper ou Parakeet são muito mais potentes.
      Eles sofrem menos com ruído de fundo ou fala resmungada.
      Trabalho com Voice AI, então uso esses modelos todos os dias, e a diferença na prática é enorme
  • O app foi muito bem feito. Como feedback:
    primeiro, ele precisa muito de um recurso para colar automaticamente a partir da área de transferência. Seria ótimo não precisar apertar um atalho, ou pelo menos poder configurar isso
    segundo, a velocidade é um pouco mais lenta que em outras soluções. Isso afeta bastante a usabilidade
    terceiro, seria bom ter controle de formatação. Por exemplo, quando eu disser “new line”, isso deveria ser interpretado como uma quebra de linha real

  • Esta thread parece um grupo de apoio para pessoas que fizeram seu próprio app de voz→texto para macOS

    • Reuni todos os apps que eu fiz aqui.
      Adicionei Ghost Pepper recentemente, e você também pode criar um skill.md com os recursos que precisa e montar seu próprio app
    • No subreddit /r/macapps também tem app demais de whisper dictation.
      Em categorias saturadas assim, é preciso explicar claramente o diferencial em relação aos apps existentes
      Post relacionado
    • Eu também fiz um, e depois acabei vendo o KeyVox e conversando com o criador.
      KeyVox GitHub
    • No nixOS, eu implementei isso adicionando um indicador ao Noctalia.
      O desempenho fica quase no nível do Wispr Flow, e roda totalmente local
    • Num estilo bem típico da Apple, imagino que isso vai virar recurso nativo lá pelo macOS 27 ou 28
  • Como usuário de Linux, desenvolvi o Hyprwhspr
    Rodando o modelo mais recente Cohere Transcribe na GPU, o desempenho é muito bom.
    Fico curioso se alguém comparou o WhisperKit com faster-whisper ou turbov3.
    Estou na expectativa de que a Apple lance em breve um STT nativo

    • Queria saber como ele se compara ao Handy.
      Também queria entender por que fizeram um novo projeto em vez de melhorar o já existente
    • Eu rodo Whisper large-v3 em self-hosting num M2 Max.
      A precisão já era suficiente, então não precisei de modelo de limpeza.
      Mas em áudios longos, acima de 30 segundos, a latência fica perceptível. Queria saber como o WhisperKit lida com áudio longo
    • Uso o Hyprwhspr todos os dias no Omarchy. É excelente
    • Eu estava pensando em fazer algo parecido, então graças a você não preciso mais.
      Você já pensou em suporte a foot pedal PTT (Push-To-Talk)?
      A Apple já tem STT, mas a qualidade do modelo ainda deixa a desejar
  • Speech-to-text é central no meu fluxo de desenvolvimento.
    É especialmente útil para ditar prompts para LLMs ou agentes de código.
    Reuni as melhores ferramentas open source de entrada por voz para cada plataforma neste repositório no GitHub

    • Fico curioso sobre como você usa ditado no desenvolvimento.
      Eu digito 120 palavras por minuto, então para mim é bem mais rápido que falar.
      Tirando acessibilidade, estou sinceramente curioso se isso é para quem digita devagar ou para quem quer programar largado no sofá
  • Um app como Handy já não existe?

    • Tenho algumas ressalvas.
      1. No Linux, dá para montar um sistema parecido facilmente com conta FTP, curlftpfs e SVN/CVS
      2. Isso não substitui totalmente um pendrive. Ainda levo USB comigo para apresentações offline
      3. O modelo de negócio não está claro. Fico em dúvida se dá para monetizar oferecendo isso de graça
    • O Handy é uma ferramenta realmente muito bem feita
    • Pode existir mais de uma solução para o mesmo problema
    • Sim, speech-to-text já existe
    • Para o meu caso de uso, isso serve perfeitamente. Não preciso mexer na UI de outros apps
  • Valeu por compartilhar. Gosto do foco em velocidade local e privacidade
    Eu uso o Hex, que tem objetivos parecidos, e queria saber sua visão sobre as diferenças entre os dois apps

  • Hoje em dia, à medida que os LLMs local-first ficam menores, isso parece ter tudo para virar a infraestrutura central do desenvolvimento de apps
    Como o Electron antigamente facilitou fazer apps bonitos, agora basta sacrificar um pouco de RAM

  • Há muitos projetos ligados ao Whisper, então fico me perguntando se estão falando do modelo antigo da OpenAI ou de uma versão atualizada
    Eu uso Parakeet v3, que é pequeno e excelente. Então fico me perguntando por que o Whisper ainda aparece tanto

    • O Whisper ainda é um modelo estável e confiável.
      Ele alucina menos que modelos mais novos e roda facilmente até em GPU AMD.
      Eu mesmo portei o Parakeet, mas no fim voltei para o Whisper
    • Também estou pensando em mudar para Parakeet.
      Mas eu uso muito polonês e terminologia técnica, então o Whisper v3 funciona melhor para mim
    • O Whisper oferece suporte a vários idiomas e tem várias versões, de tiny até turbo.
      Então a grande vantagem é poder ajustá-lo ao ambiente do sistema
    • No macOS eu também uso Parakeet com o Voice Ink, e em casa faço voz→texto com Kokoro.
      Também conecto um servidor Parakeet ao meu celular com GrapheneOS
      Post relacionado
  • Gostei muito do projeto e quero tentar integrá-lo ao meu fluxo de trabalho.
    Só que a frase “oferecido de graça enquanto se compara a um grande AI lab que recebeu US$ 80M em investimento” me incomoda um pouco.
    Isso parece menos uma rebeldia e mais uma continuação de pesquisa já existente.
    Chamar isso de “spicy” parece um pouco exagerado