refactor: troca PDF+OCR por corpus USFX em domínio público
- corpus/: Almeida (João Ferreira de Almeida) em USFX, domínio público, 66 livros / 1189 capítulos / 31098 versículos, versionado com SHA-256 - app/corpus.py: parser USFX (texto no tail de <v/>), nomes canônicos dos livros, aliases (abreviaturas e numerais romanos), VerseChunk sem página - indexer: descobre *.xml em CORPUS_DIR, progresso em versículos, lote configurável, manifesto incremental por SHA-256 - remove extraction.py, parallel.py, bible_parser.py, Tesseract e PyMuPDF - campo page removido de Source/SearchResult/StatusResponse e do frontend - embedder: propriedade name; status reporta o embedder em uso, não o do .env - create_app constrói o embedder ANTES do store (o default HashEmbedder do VectorStore impedia o modelo configurado de ser carregado em produção) - fallback do modelo agora aparece em /api/status.errors - torch 2.6.0 + transformers 5.22.1 pinados (transformers 5.x exige torch>=2.6)
This commit is contained in:
1 parent
621679cee5
commit
2043d5ddcf
34 files changed
+34561
-1842
No files matched your search
@@ -0,0 +1,56 @@
|
||||
# Corpus bíblico
|
||||
|
||||
Texto indexado pelo Pastor Online. Os arquivos aqui são montados somente-leitura em
|
||||
`/data/corpus` e descobertos pelo indexador na inicialização.
|
||||
|
||||
## `por-almeida.usfx.xml`
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| Tradução | João Ferreira de Almeida |
|
||||
| Idioma | Português |
|
||||
| Formato | [USFX](https://ebible.org/usfx/) (Unified Scripture Format XML), UTF-8 |
|
||||
| Tamanho | 4.745.976 bytes |
|
||||
| SHA-256 | `4990d0d1909e2bd57aa6ecc2a2ce9a565b154aac8575b0242dc943ad796e643e` |
|
||||
| Conteúdo | 66 livros · 1.189 capítulos · 31.098 versículos |
|
||||
| Licença | **Domínio público** |
|
||||
| Proveniência | <https://github.com/seven1m/open-bibles> (`por-almeida.usfx.xml`) |
|
||||
|
||||
Domínio público: pode ser redistribuído e usado sem atribuição nem restrição. O
|
||||
arquivo é versionado no repositório de propósito — o build não depende de rede e o
|
||||
conteúdo indexado é reproduzível byte a byte.
|
||||
|
||||
### Estrutura
|
||||
|
||||
```xml
|
||||
<book id="GEN">
|
||||
<h>Gênesis</h>
|
||||
<c id="1"/>
|
||||
<v id="1"/>No princípio criou Deus os céus e a terra. <ve/>
|
||||
</book>
|
||||
```
|
||||
|
||||
Detalhes que o parser precisa respeitar:
|
||||
|
||||
- O texto do versículo é o **`tail`** de `<v id="N"/>`, encerrado por `<ve/>` — não
|
||||
são filhos do elemento `<v/>`.
|
||||
- `N` reinicia a cada capítulo; o capítulo corrente vem do último `<c id="…"/>`.
|
||||
- O nome do livro vem de `<h>`, na grafia que o próprio corpus declara
|
||||
(`1 Samuel`, `Cânticos`, `Isaías`). É essa grafia que aparece nas citações.
|
||||
- O texto contém `\xa0` (espaço não separável), normalizado para espaço comum.
|
||||
|
||||
### Versificação
|
||||
|
||||
O cânon está completo, mas 12 versículos de fim de capítulo divergem da numeração
|
||||
de outras edições — ora ausentes (Gn 36:43, Gn 43:34, Nm 5:31, Nm 25:18, Ne 5:19,
|
||||
Ez 20:49, Lc 9:62, 2Co 13:14), ora com um versículo a mais (Jz 5, 1Sm 20, Sl 46,
|
||||
3Jo 1). É versificação, não texto faltando. A validação de citação confere contra
|
||||
**este** corpus indexado, não contra uma Bíblia impressa.
|
||||
|
||||
## Adicionando outras traduções
|
||||
|
||||
Coloque qualquer arquivo USFX aqui e reinicie o backend (ou chame
|
||||
`POST /api/reindex`). Cada arquivo é indexado separadamente e identificado pelo
|
||||
próprio nome no campo `file` dos metadados, então `chunk_id` não colide entre
|
||||
corpora. Verifique a licença antes: traduções modernas (NVI, NTLH, NAA, ACF, ARA,
|
||||
ARC, KJA) pertencem às editoras e **não** podem ser redistribuídas.
|
||||
File diff suppressed because it is too large.
Load diff
Reference in new issue
Block a user