Erkennung natürlicher Sprache für Rost mit Fokus auf Einfachheit und Leistung.
Probieren Sie Online -Demo.
Beispiel:
use whatlang :: { detect , Lang , Script } ;
fn main ( ) {
let text = "Ĉu vi ne volas eklerni Esperanton? Bonvolu! Estas unu de la plej bonaj aferoj!" ;
let info = detect ( text ) . unwrap ( ) ;
assert_eq ! ( info.lang ( ) , Lang :: Epo ) ;
assert_eq ! ( info.script ( ) , Script :: Latin ) ;
assert_eq ! ( info.confidence ( ) , 1.0 ) ;
assert ! ( info.is_reliable ( ) ) ;
}Weitere Informationen (z. B. wie Sie einige Sprachen schwarzlisten) finden Sie in der Dokumentation.
Whatlang wird in den folgenden großen Projekten als direkte oder indirekte Abhängigkeit für die Spracherkennung verwendet. Sie werden in einer großartigen Firma mit Whatlang sein:
| Besonderheit | Beschreibung |
|---|---|
enum-map | Lang und Script implementieren Enum Merkmal aus Enum-Map |
arbitrary | Unterstützung willkürlich |
serde | Implementiert Serialize und Deserialize für Lang und Script |
dev | Aktiviert whatlang::dev -Modul, das eine interne API liefert.Es existiert für Profilezwecke, und normale Benutzer sind davon abgehalten, sich auf diese API zu verlassen. |
Der Algorithmus basiert auf den Trigrammsprachmodellen, die ein besonderer Fall von N-Gramm sind. Um die Idee zu verstehen, überprüfen Sie bitte die ursprüngliche Whitepaper Cavnar und Trenkle '94: N-Gram-basierte Textkategorisierung '.
is_reliable berechnet?Es basiert auf den folgenden Faktoren:
rate .Daher kann es als 2D -Raum mit Schwellenwertfunktionen dargestellt werden, die ihn in "zuverlässige" und "nicht zuverlässige" Bereiche aufteilt. Diese Funktion ist eine Hyperbel und sie sieht aus wie die folgende:
Weitere Informationen finden Sie in einem Blog -Artikel zur Einführung in die Rost Whatlang -Bibliothek und die Algorithmen für natürliche Sprache.
make bench - Performance -Benchmarks ausführenmake doc - Generieren und Öffnen Sie Docmake test - Tests ausführenmake watch - Uhrenänderungen und führen Sie Tests aus | Whatlang | CLD2 | CLD3 | |
|---|---|---|---|
| Implementierungssprache | Rost | C ++ | C ++ |
| Sprachen | 68 | 83 | 107 |
| Algorithmus | Trigramme | Quadgrams | Neurales Netzwerk |
| Unterstützte Codierung | UTF-8 | UTF-8 | ? |
| HTML -Unterstützung | NEIN | Ja | ? |
Sie können das Projekt unterstützen, indem Sie in der Nähe von Token spenden.
Unsere Nahen Brieftasche ist whatlang.near
Whatlang ist eine abgeleitete Arbeit von Franc (JavaScript, MIT) von Titus Wormer.
Mit © Sergey Potapov