IntentChat Logo
← Back to Hrvatski Blog
Language: Hrvatski

Unapređenje pretraživanja kineskih poruka u Telegramu

2025-06-24

Unapređenje pretraživanja kineskih poruka u Telegramu

Zaključak

Kako bi se poboljšalo pretraživanje kineskih poruka u Telegramu, to se može postići ručnim umetanjem nevidljivih razdjelnika ili razvojem prilagođenog tokenizatora. Nadalje, korištenje AI tehnologije za semantičko pretraživanje također može značajno povećati točnost pretraživanja.

Ključne točke

  • Telegram baza podataka: Telegram koristi SQLite kao svoju bazu podataka.
  • Mehanizam pretraživanja cijelog teksta: Funkcija pretraživanja cijelog teksta Telegrama koristi tokenizator za dijeljenje nizova u fraze i generiranje hash vrijednosti, koje se zatim uspoređuju s hash tablicom tijekom pretraživanja.
  • Generator tokena: Generator tokena oslanja se na odvajivače i razdjelnike za dijeljenje nizova.
  • Definicija tokena: Sadržaj izvan odvajivača i razdjelnika smatra se "tokenom", uključujući tri vrste: velika slova (*), brojeve (N) i ostale znakove (Co).
  • Obrada CJK znakova: Kineski, japanski i korejski znakovi (CJK) spadaju pod Unicode CJK i većina ih je prepoznata kao tokeni.

Budući da između kineskih znakova nema razdjelnika, Telegram cijeli niz kineskih znakova obrađuje kao hash, što rezultira lošim performansama pretraživanja. Ovaj članak detaljno istražuje ograničenja pretraživanja kineskih poruka u Telegramu iz perspektive koda.

Prijedlozi za poboljšanje

  1. Ručno umetanje razdjelnika: Ručno dodajte nevidljive razdjelnike između kineskih znakova kako biste poboljšali performanse pretraživanja.
  2. Prilagođeni tokenizator: Razvijte prilagođeni tokenizator i izmijenite Telegram klijent kako biste poboljšali funkciju pretraživanja.

AI semantičko pretraživanje

Osim tradicionalnih metoda pretraživanja, uvođenje umjetne inteligencije (AI) nudi bolje rješenje za semantičko pretraživanje. Projekt telegram-search koristi model ugradnje (embedding model), omogućujući korisnicima da pronađu željeni sadržaj čak i bez točnog podudaranja ključnih riječi. Na primjer, unosom "昨晚吃饭的那个人" (osoba koja je sinoć jela) može se pronaći "昨天晚上和我们一起吃饭的男的" (muškarac koji je sinoć jeo s nama).

Primjenom gore navedenih metoda može se značajno poboljšati iskustvo pretraživanja kineskih poruka u Telegramu.