2 pontos por GN⁺ 2025-04-15 | 1 comentários | Compartilhar no WhatsApp
  • Stevens é um assistente de IA simples construído com uma tabela SQLite e jobs cron
  • Stevens fornece ao usuário, todas as manhãs, informações como agenda, clima e correspondências
  • A estrutura do Stevens é hospedada na plataforma Val.town e oferece suporte a armazenamento em SQLite, tratamento de requisições HTTP e envio/recebimento de e-mails
  • Stevens coleta informações por meio de várias fontes de dados e, com isso, fornece informações personalizadas ao usuário
  • Stevens é um projeto pessoal, e o usuário pode fazer um fork do código para criar sua própria ferramenta de IA

Stevens: um assistente de IA hackeável

  • Stevens é um assistente de IA cujo nome vem do mordomo do romance Ishiguro "Remains of the Day"
  • Todas as manhãs, ele fornece ao usuário, via Telegram, informações como agenda, clima e correspondências
  • O usuário pode se comunicar com Stevens por meio de um chat no Telegram

Estrutura do Stevens

  • Stevens é hospedado na plataforma Val.town e usa uma tabela SQLite e jobs cron
  • O "caderno" do Stevens é uma tabela SQLite, que armazena agenda e informações de contexto
  • Por meio de jobs cron, ele chama a Claude API para redigir o briefing da manhã e enviá-lo pelo Telegram

Como os dados são coletados

  • Coleta dados de agenda por meio da Google Calendar API
  • Verifica a previsão do tempo local por meio de uma API de clima
  • Processa com OCR as informações de correspondência via USPS Informed Delivery
  • Adiciona entradas de log por meio de mensagens no Telegram e e-mails
  • Adiciona semanalmente um "fato curioso" para trazer um elemento diferente às atualizações diárias

Reflexões sobre o projeto

  • Ferramentas pessoais de IA dependem de acesso a várias fontes de informação
  • A "memória" pode começar de forma simples e ser expandida conforme necessário
  • Stevens foi configurado para falar como um mordomo formal, a fim de divertir o usuário

Experimente você mesmo

  • Stevens não é um produto comercial, mas um projeto pessoal
  • O usuário pode fazer um fork do código para criar sua própria ferramenta útil
  • É possível sincronizar com o sistema de arquivos local usando o Val Town CLI

1 comentários

 
GN⁺ 2025-04-15
Comentário do Hacker News
  • Não sei se é pela utilidade desse recurso ou pela expressão tipo "mordomo cavalheiro britânico"

    • Fico me perguntando por que isso está sendo lido no blog de um engenheiro, e não como lançamento de produto da Apple ou do Google
    • É decepcionante que essas duas empresas não apliquem a tecnologia de IA em áreas de "problemas resolvidos", como resumo ou perguntas e respostas
    • Se existe alguma oportunidade relacionada à IA, ela provavelmente pode ameaçar essas duas empresas monopolistas
  • Fiquei pensando em como seria se meu programa utilitário pudesse acessar uma caixa de correio

    • Tenho um pequeno utilitário que verifica o clima ou executa comandos do sistema
    • Se houvesse uma caixa de correio, eu poderia enviar informações, e a IA poderia analisá-las para enviar e-mails ou gerar novas mensagens
    • Também poderia ser útil analisar e-mails, adicioná-los a um armazenamento interno e depois apagar as mensagens
  • Estou pensando em ideias para um projeto open source parecido

    • Quero montar o backend com um LLM ao qual o usuário possa ter acesso
    • Fico pensando se isso poderia ser conectado a uma tela touchscreen e usado como um dispositivo tipo Alexa
    • Quero torná-lo expansível com integrações com calendário, clima, Homebridge, Spotify etc.
    • Não posso dedicar muito tempo ao projeto no momento, mas gostaria de me juntar a pessoas que estejam seguindo nessa direção
  • Quero ver hacking de IA prático

    • Prefiro integração prática com fontes de dados existentes, sem estruturas complexas nem vector DB
  • Estou experimentando maneiras de resolver o "ponto ideal de tokens de contexto"

    • O LLM funciona em cooperação com um banco de dados para armazenar e resumir informações
    • Dá para gerar documentos de resumo para manter o contexto, enquanto o banco complementa os detalhes importantes
  • Achei que estavam usando um banco sqlite para previsão do próximo token

    • Outras pessoas estão usando Claude
  • Construí algo parecido usando mcp.run e tasks

    • Modifiquei o prompt para verificar se a conversa existe e armazenar o resultado
    • Dá para expandir as capacidades do bot adicionando servlets ao registro
  • No começo, Stevens falava num tom seco, como um produto da Apple ou do Google, mas falar como um mordomo formal era mais divertido

    • Uma das minhas maiores reclamações no mundo dos assistentes pessoais é que os LLMs falam demais
    • Até eu ficar rico e ter tempo para virar amigo de um assistente de voz, preciso de LCARS, não de J.A.R.V.I.S.
  • Essas ferramentas serão terreno fértil para hackers nos próximos anos

    • Grande parte da stack já virou commodity como infraestrutura OSS, e inferência hospedada já é barata e fácil
    • Existem problemas de segurança ao conectar agentes a e-mail e calendário, mas muita gente vai preferir controlar a stack inteira em vez de entregar o controle para Apple ou Google
  • Fico curioso se alguém já pensou em poda ou resumo de memória

    • Em vez de apagar itens antigos, daria para usar LRU ou resumir as respostas e armazená-las na mesma tabela
    • Os dados brutos desaparecem, mas a versão comprimida permanece, o que mantém a memória leve sem perder o contexto