Repolode
MihaiValentin

MihaiValentin/lunr-languages

Stemmers e listas de stopwords para Lunr.js que adicionam busca multilíngue em texto completo, em dezenas de idiomas, no navegador ou no Node.js.

Estrelas
459
Forks
168
Issues abertas
16
Último commit
há 23 horas

O que é?

Lunr Languages é uma extensão para Lunr.js, uma biblioteca de busca em texto completo executada no cliente. Ela adiciona tokenização específica por idioma, stemming e filtragem de stopwords para que índices criados com Lunr encontrem corretamente diferentes formas das palavras em uma ampla variedade de idiomas, incluindo alemão, francês, espanhol, russo, japonês, árabe e hindi.

Cada idioma é distribuído como um módulo separado que se registra no Lunr, e o modo multilíngue permite combinar vários idiomas em um único índice. A tokenização de chinês usa Intl.Segmenter com bigramas CJK por padrão e, no Node.js, pode usar @node-rs/jieba para segmentação com Jieba. As declarações de tipos estão incluídas, e os módulos podem ser importados com a sintaxe CommonJS ou ES module.

Como é executado inteiramente no navegador ou no Node.js, o projeto é adequado para buscas em sites estáticos e documentação, aplicativos offline e pré-filtragem por palavras-chave antes de uma busca vetorial ou de um reranker em pipelines de recuperação.

Recursos principais

  • 01Tokenização específica por idioma, stemming e listas de stopwords para vários idiomas
  • 02Modo multilíngue para indexar conteúdo em vários idiomas em um único índice
  • 03Segmentação de chinês com Intl.Segmenter e suporte opcional a Jieba no Node.js
  • 04Função opcional de pipeline para remover acentos em índices de espanhol
  • 05Declarações de tipos para TypeScript e suporte a imports CommonJS e ES module

Casos de uso

  • Adicionar busca no cliente a um site estático multilíngue ou a um site de documentação
  • Criar uma busca offline ou local, no dispositivo, para uma base de conhecimento no navegador
  • Pré-filtrar documentos por palavra-chave antes de gerar embeddings ou aplicar reranking em um pipeline RAG

Início rápido

  1. 1

    Instale o pacote pelo npm

    npm install lunr-languages
  2. 2

    Carregue o Lunr e o módulo de alemão no Node.js

    const lunr = require('lunr'); require('lunr-languages/lunr.stemmer.support')(lunr); require('lunr-languages/lunr.de')(lunr);
  3. 3

    Crie um índice com o pipeline de alemão e adicione documentos

Antes de usar

  • Sem o pacote opcional, a tokenização do chinês usa bigramas, que são menos precisos que o Jieba.
  • O suporte ao chinês nos navegadores requer Intl.Segmenter e não tem alternativa.

Em coleções

Tópicos

Perguntas frequentes

O que é lunr-languages?
Stemmers e listas de stopwords para Lunr.js que adicionam busca multilíngue em texto completo, em dezenas de idiomas, no navegador ou no Node.js. Lunr Languages é uma extensão para Lunr.js, uma biblioteca de busca em texto completo executada no cliente. Ela adiciona tokenização específica por idioma, stemming e filtragem de stopwords para que índices criados com Lunr encontrem corretamente diferentes formas das palavras em uma ampla variedade de idiomas, incluindo alemão, francês, espanhol, russo, japonês, árabe e hindi.
lunr-languages é gratuito? Qual é a licença?
lunr-languages é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
lunr-languages ainda é mantido?
Manutenção ativa. O último commit de lunr-languages foi em 6 de nov. de 2026.
Para que posso usar lunr-languages?
Adicionar busca no cliente a um site estático multilíngue ou a um site de documentação Criar uma busca offline ou local, no dispositivo, para uma base de conhecimento no navegador Pré-filtrar documentos por palavra-chave antes de gerar embeddings ou aplicar reranking em um pipeline RAG
Como instalar lunr-languages?
Instale o pacote pelo npm: npm install lunr-languages Carregue o Lunr e o módulo de alemão no Node.js: const lunr = require('lunr'); require('lunr-languages/lunr.stemmer.support')(lunr); require('lunr-languages/lunr.de')(lunr); Crie um índice com o pipeline de alemão e adicione documentos
Onde consigo lunr-languages?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/MihaiValentin/lunr-languages

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados

Biblioteca de segmentação de texto e NLP em Go para inglês, chinês, japonês e outros idiomas, que implementa a abordagem do jieba.

IA e Machine Learning#nlp#text-segmentation#chinese-segmentation
2,8 mil233GoApache-2.0Atualizado há 3 dias