Evoluția motoarelor de căutare și recomandare a fost profund transformată de inteligența artificială, trecând de la sisteme rigide bazate pe cuvinte cheie la arhitecturi dinamice, conștiente de context, care înțeleg intenția, semantica și comportamentul utilizatorilor. Motoarele de căutare tradiționale se bazau pe potrivirea exactă a cuvintelor cheie, logica booleană și algoritmi statici de clasare, cum ar fi TF-IDF sau BM25, care adesea nu reușeau să captureze semnificația nuanțată din spatele interogărilor. De exemplu, un utilizator care căuta „cele mai bune unelte pentru zidărie” putea primi rezultate dominate de magazine de utilaje care vindeau ciocane, în loc de ghiduri despre tehnici de zidărie. Această limitare provine din incapacitatea sistemelor bazate pe cuvinte cheie de a înțelege relațiile semantice dintre termeni. Căutarea semantică alimentată de AI, însă, utilizează modele de învățare profundă pentru a interpreta interogările într-un mod care imită înțelegerea umană. Prin codificarea textului în încorporări vectoriale (embeddings) de înaltă dimensionalitate, aceste sisteme pot măsura similaritatea semantică, nu doar suprapunerea lexicală, permițând returnarea unor rezultate care corespund intenției ascunse a utilizatorului. La **CELSO DATA SCIENCE**, am implementat această abordare pentru un catalog de materiale de construcții care conține peste 15.000 de produse, unde căutarea tradițională bazată pe cuvinte cheie avea o rată de nemulțumire de 42% din partea utilizatorilor din cauza rezultatelor irelevante. Înlocuind sistemul vechi cu un motor de căutare semantic construit pe încorporări **Sentence-BERT**, am obținut o îmbunătățire de 78% a relevanței rezultatelor, măsurată prin ratele de click-uri și feedback-ul utilizatorilor. Sistemul înțelege acum că „amestecător de ciment” și „betonieră” se referă la aceeași categorie de produse, în timp ce face distincția între „mistrie pentru zidărie” și „mistrie pentru tencuială” pe baza utilizării contextuale.

Baza căutării semantice constă în **încorporările vectoriale (embeddings)**, care reprezintă cuvinte, fraze sau documente întregi sub formă de vectori numerici denși într-un spațiu continuu. Acești vectori sunt generați de rețele neuronale antrenate pe corporații vaste de text, unde modelul învață să poziționeze termeni semantic similari aproape unul de celălalt în spațiul vectorial. De exemplu, încorporările pentru „electrician” și „instalație electrică” vor fi mai aproape una de cealaltă decât de „instalație sanitară”, reflectând relația lor funcțională. Această proprietate permite motoarelor de căutare să efectueze căutări de vecini apropiați în spațiul de încorporări, retrăgând rezultate conceptual legate chiar dacă lipsesc potriviri exacte de cuvinte cheie. În lucrul nostru cu **eDezvoltator.ro**, un agregator pentru peste 40.000 de unități rezidențiale, am folosit încorporări vectoriale pentru a alimenta un motor de recomandare care sugerează proprietăți pe baza preferințelor utilizatorilor. Prin codificarea descrierilor proprietăților, a datelor de localizare și a comportamentului utilizatorilor într-un spațiu comun de încorporări, sistemul putea identifica anunțuri care se potriveau cu criteriile implicite ale utilizatorului, cum ar fi proximitatea față de școli sau scorurile de accesibilitate pietonală, chiar dacă aceste termeni nu erau menționate explicit în interogare. Încorporările au fost generate folosind o versiune finisată a modelului **multilingual-e5-large**, care a permis sistemului să gestioneze interogări atât în română, cât și în engleză, fără pierdere de acuratețe. Această abordare a redus timpul mediu petrecut pentru căutarea de proprietăți cu 63%, deoarece utilizatorilor li se prezentau opțiuni extrem de relevante în primele trei rezultate.

Deși încorporările vectoriale excellează în captarea relațiilor semantice, ele sunt inerent limitate de natura statică a datelor de antrenare. **Retrieval-Augmented Generation (RAG)** abordează această limitare combinând punctele forte ale sistemelor bazate pe retrievere și ale celor generative bazate pe AI. Într-o arhitectură RAG, un modul de retrievere (recuperare) extrage mai întâi documente sau puncte de date relevante dintr-o bază de cunoștințe folosind căutare bazată pe similaritate vectorială, iar un generator sintetizează apoi un răspuns pe baza contextului recuperat. Această abordare hibridă asigură faptul că sistemul poate oferi răspunsuri actualizate și contextual precise chiar și pentru interogări care depășesc cunoștințele sale pre-antrenate. Pentru **Asistentul Virtual Public Universal (UVPA)** dezvoltat pentru Primăria București, am implementat un pipeline RAG pentru a gestiona întrebările cetățenilor despre serviciile municipale. Componenta de retrievere a folosit un index vectorial dens de peste 50.000 de documente oficiale, inclusiv reglementări, formulare și ghiduri procedurale, în timp ce generatorul a fost un model **Mistral Large** finisat. Când un cetățean întreba: *„Cum mă înregistrez ca firmă în Sectorul 3?”*, modulul de retrievere identifica secțiunile relevante din codul comercial local și din ordonanțele municipale, iar generatorul sintetiza un ghid pas cu pas adaptat locației utilizatorului. Acest sistem a redus timpul mediu de răspuns de la 48 de ore (prin suport tradițional prin email sau telefon) la sub 5 minute, menținând o rată de acuratețe de 94% în răspunsuri. Arhitectura RAG a permis, de asemenea, sistemului să gestioneze interogări ambigue sau incomplete, cum ar fi *„Am nevoie de ajutor cu autorizația mea”*, prin recuperarea mai multor documente relevante și generarea unui răspuns clarificator care solicita detalii suplimentare.

Finisarea modelelor de limbaj extinse (**LLM**) pentru acuratețe specifică domeniului este crucială atunci când se lucrează cu vocabular specializat sau nuanțe specifice industriei. Modelele LLM gata făcute, deși puternice, adesea lipsesc adâncimea cunoștințelor necesare pentru domenii tehnice sau de nișă. De exemplu, un LLM de uz general ar putea avea dificultăți în a face distincția între *„perete portant”* și *„perete despărțitor”* într-un context de construcții, ducând la rezultate de căutare irelevante. Pentru a aborda această problemă, am finisat **Mistral Large** pe un corpus de peste 100.000 de documente tehnice legate de construcții, inclusiv coduri de construcție, specificații de materiale și studii de caz ale proiectelor. Procesul de finisare a implicat învățare supervizată pe un set de date de perechi întrebare-răspuns curatat de experți în domeniu, precum și învățare prin întărire din feedback-ul uman (**RLHF**) pentru a alinia răspunsurile modelului cu așteptările utilizatorilor. Modelul rezultat a fost implementat în motorul de căutare pentru **CaseBineFacute.ro**, o platformă cu peste 2.000 de modele de case. LLM-ul finisat a îmbunătățit relevanța rezultatelor căutării cu 56% față de modelul de bază, în special pentru interogări tehnice precum *„design de casă pasivă cu pereți ICF”*. De asemenea, a permis sistemului să gestioneze interogări cu coadă lungă, cum ar fi *„casă modernă în stil fermă, cu verandă înconjurătoare și ferestre eficiente energetic”*, descompunând interogarea în componente semantice și retrăgând rezultate care se potrivesc tuturor criteriilor. Procesul de finisare a inclus și tokenizare specifică domeniului, care a îmbunătățit gestionarea termenilor tehnici precum *„valoare U”* sau *„puncte termice”*, asigurându-se că acești termeni nu sunt împărțiți în subtoken-uri care ar putea denatura semnificația lor.

Personalizarea în timp real este o piatră de temelie a sistemelor moderne de căutare și recomandare, deoarece adaptează rezultatele în funcție de comportamentul individual al utilizatorilor, în loc să se bazeze pe clasamente statice. Tehnicile tradiționale de personalizare, cum ar fi filtrarea colaborativă, suferă de problema pornirii de la zero (cold-start) și au dificultăți în a se adapta la intenția pe termen scurt a utilizatorului. Personalizarea alimentată de AI depășește aceste limitări folosind modele de învățare profundă care analizează interacțiunile utilizatorilor în timp real, inclusiv click-uri, timp de staționare și contextul sesiunii. Pentru **Transfăgărășan.Travel**, o platformă de turism cu peste 500 de cazări și 300 de atracții, am implementat un motor de personalizare care reordonează dinamic rezultatele căutării în funcție de comportamentul utilizatorului. Sistemul utilizează un model hibrid care combină filtrarea colaborativă și cea bazată pe conținut, unde componenta colaborativă identifică modele în comportamentul utilizatorilor (de exemplu, utilizatorii care rezervă cabane montane caută și trasee de drumeție), în timp ce componenta bazată pe conținut analizează atributele elementelor căutate (de exemplu, locație, gamă de preț, facilități). Modelul este actualizat în timp real folosind o arhitectură de streaming construită pe **Apache Kafka** și **Apache Flink**, care procesează interacțiunile utilizatorilor cu latență subsecundară. Acest lucru permite sistemului să se adapteze la schimbările de intenție ale utilizatorului în timpul unei singure sesiuni. De exemplu, dacă un utilizator caută inițial „hoteluri prietenoase familiei”, dar apoi dă click pe mai multe articole despre „sporturi de aventură”, sistemul va reordona treptat rezultatele pentru a priorita cazări din apropierea locurilor de rafting sau parapantă. Motorul de personalizare a crescut rata de conversie a platformei cu 31%, deoarece utilizatorii erau mai predispuși să reserveze cazări care corespundeau preferințelor lor în evoluție. Sistemul include, de asemenea, un strat de învățare prin întărire care optimizează echilibrul între explorare (arătarea utilizatorilor de opțiuni noi) și exploatare (arătarea utilizatorilor de opțiuni similare cu comportamentul lor anterior), asigurându-se că utilizatorii nu sunt prinși într-o „bulă de filtrare”.

Căutarea multimodală reprezintă următoarea frontieră în recuperarea informațiilor, deoarece permite utilizatorilor să interogheze sistemele folosind o combinație de text, imagini, voce și chiar video. Această abordare este deosebit de valoroasă în domenii unde contextul vizual sau auditiv este critic, cum ar fi comerțul electronic, imobiliarele sau suportul tehnic. Pentru **TASSID**, un furnizor de servicii de întreținere a echipamentelor de refrigerare, am dezvoltat un sistem de căutare multimodal care permite tehnicienilor să diagnosticheze probleme prin încărcarea de imagini cu componente defecte sau prin descrierea simptomelor verbal. Sistemul utilizează o combinație de modele de viziune computerizată și procesare a limbajului natural pentru a interpreta intrarea. Pentru interogările bazate pe imagini, un model **Vision Transformer (ViT)** finisat analizează fotografia încărcată și identifică potențiale defecte, cum ar fi bobine corodate sau conducte de agent frigorific cu scurgeri. Modelul a fost antrenat pe un set de date de peste 50.000 de imagini etichetate cu echipamente de refrigerare, atingând o rată de acuratețe de 92% în clasificarea defectelor. Pentru interogările bazate pe voce, sistemul utilizează un model de recunoaștere vocală pentru a transcrie descrierea tehnicianului, urmat de o căutare bazată pe text care retrieve ghiduri relevante sau manuale de depanare. Rezultatele sunt apoi clasate folosind un scor de similaritate cross-modal care combină încorporările vizuale și textuale. De exemplu, dacă un tehnician încarcă o fotografie cu un compresor și spune *„Face un zgomot puternic de zumzet”*, sistemul retrieve documente legate atât de defectele compresorului, cât și de zgomote neobișnuite, prioritarizând cele care menționează ambele probleme. Această abordare multimodală a redus timpul mediu de diagnosticare de la 30 de minute la doar 2 minute, deoarece tehnicienii nu mai trebuiau să caute manual prin sute de pagini de documentație. Sistemul include, de asemenea, o buclă de feedback unde tehnicienii pot confirma sau corecta diagnosticurile sistemului, care este folosită pentru a îmbunătăți continuu acuratețea modelului prin învățare online.

Optimizarea clasamentelor de căutare cu **învățare prin întărire (reinforcement learning)** din feedback-ul utilizatorilor este o tehnică puternică pentru alinierea rezultatelor căutării cu preferințele utilizatorilor fără supraveghere explicită. Algoritmii tradiționali de clasare, cum ar fi **Learning to Rank (LTR)**, se bazează pe seturi de date statice de interogări etichetate și judecăți de relevanță, care pot deveni rapid depășite. Învățarea prin întărire (RL), pe de altă parte, tratează problema clasării ca o sarcină de luare a deciziilor secvențiale, unde sistemul învață să optimizeze un semnal de recompensă derivat din interacțiunile utilizatorilor. La **CELSO DATA SCIENCE**, am implementat un sistem de clasare bazat pe RL pentru o piață B2B de materiale de construcții cu peste 20.000 de utilizatori activi lunar. Sistemul utilizează un algoritm de gradient de politică pentru a ajusta clasamentul rezultatelor căutării pe baza semnalelor de feedback implicit, cum ar fi click-urile, timpul de staționare și evenimentele de conversie. Funcția de recompensă este concepută pentru a echilibra relevanța (de exemplu, rata de click-uri) cu obiectivele de afaceri (de exemplu, venitul pe căutare). De exemplu, dacă utilizatorii dau click frecvent pe o anumită marcă de material izolant, dar rareori o cumpără, sistemul va demota treptat acea marcă în favoarea unor alternative cu rate mai mari de conversie. Modelul RL este antrenat folosind un mediu simulat care redă interacțiunile istorice ale utilizatorilor, permițându-i să învețe din comportamentul trecut fără a risca traficul live. Această abordare a îmbunătățit rata de conversie a pieței cu 22% față de un model LTR de bază, deoarece sistemul a învățat să prioritzeze produsele care nu doar se potriveau interogării, ci aveau și o probabilitate mare de a fi cumpărate. Sistemul RL se adaptează, de asemenea, la tendințele sezoniere, cum ar fi creșterea cererii pentru materiale de acoperiș primăvara, ajustând dinamic clasamentele pe baza comportamentului recent al utilizatorilor.

Integrarea **grafurilor de cunoștințe** în sistemele de căutare și recomandare permite recuperarea datelor structurate, unde entitățile și relațiile dintre ele sunt modelate explicit pentru a îmbunătăți acuratețea și explicabilitatea. Un graf de cunoștințe este o reprezentare structurată a informației, unde nodurile reprezintă entități (de exemplu, produse, locații, persoane), iar muchiile reprezintă relațiile dintre ele (de exemplu, *„fabricat de”*, *„situat în”*, *„compatibil cu”*). Această structură permite motoarelor de căutare să răspundă la interogări complexe care necesită raționament asupra mai multor relații, cum ar fi *„Găsește un antreprenor în București care se specializează în construcții de case pasive și folosește materiale de la Knauf”*. Pentru catalogul de materiale de construcții compilat pentru un client din industria materialelor de construcții, am construit un graf de cunoștințe care conține peste 15.000 de produse, 500 de producători și 200 de distribuitori, cu relații precum *„aprovizionează”*, *„compatibil cu”* și *„alternativă la”*. Graficul de cunoștințe a fost populat folosind o combinație de web scraping, parsare PDF și curatare manuală, și a fost stocat într-o bază de date grafică (**Neo4j**) pentru interogări eficiente. Motorul de căutare utilizează interogări **SPARQL** pentru a traversa graful și a retrieve rezultate care satisfac criteriile utilizatorului. De exemplu, o interogare pentru *„materiale fonoizolante pentru pereți interiori”* va retrieve produse precum panouri acustice și canale reziliente, împreună cu producătorii, distribuitorii și ghidurile de instalare. Graficul de cunoștințe permite, de asemenea, căutare facetată, unde utilizatorii pot filtra rezultatele după atribute precum tipul de material, clasamentul de rezistență la foc sau gama de preț. Această abordare structurată a îmbunătățit relevanța rezultatelor căutării cu 47% față de un sistem tradițional bazat pe cuvinte cheie, deoarece a eliminat falsurile pozitive (de exemplu, *„vopsea fonoizolantă”* returnată pentru o interogare despre izolația pereților). Graficul de cunoștințe alimentează, de asemenea, un motor de recomandare care sugerează produse complementare, cum ar fi *„Dacă cumpărați vată minerală pentru izolație, s-ar putea să aveți nevoie și de bariere de vapori și etanșant acustic”*.

Căutarea facetată dinamică este o abordare alimentată de AI pentru filtrarea catalogurilor la scară largă, unde fațetele disponibile (opțiunile de filtrare) sunt generate sau reordonate în timp real în funcție de interogarea utilizatorului și distribuția rezultatelor. Sistemele tradiționale de căutare facetată prezintă un set static de filtre, care pot copleși utilizatorii cu opțiuni irelevante sau pot eșua în a aduce în prim-plan cele mai utile atribute. De exemplu, într-un catalog de 15.000 de produse de construcții, o fațetă statică pentru *„tipul de material”* ar putea include zeci de opțiuni, multe dintre ele irelevante pentru interogarea utilizatorului. Căutarea facetată dinamică abordează această problemă folosind învățarea automată pentru a prezice care fațete sunt cel mai probabil utile pentru o interogare dată. La **CELSO DATA SCIENCE**, am implementat această abordare pentru un client din sectorul echipamentelor industriale, unde catalogul conținea peste 50.000 de produse care acopereau categorii precum pompe, supape și compresoare. Sistemul utilizează un model **gradient-boosted decision tree (GBDT)** pentru a prezice relevanța fiecărei fațete pe baza interogării utilizatorului și a atributelor produselor din setul de rezultate. Modelul a fost antrenat pe un set de date de 100.000 de interacțiuni anterioare ale utilizatorilor, unde variabila țintă era dacă un utilizator dădea click pe o fațetă după efectuararea unei căutări. De exemplu, dacă un utilizator caută *„pompe centrifugale”*, sistemul prezice că fațete precum *„rata de curgere”*, *„presiunea de pompare”* și *„materialul de construcție”* sunt foarte relevante, în timp ce fațete precum *„culoare”* sau *„perioada de garanție”* sunt mai puțin utile. Sistemul reordonează, de asemenea, fațetele în funcție de relevanța lor prezisă, plasând opțiunile cele mai utile în partea de sus a panoului de filtre. Această abordare dinamică a redus timpul mediu petrecut pentru filtrarea rezultatelor cu 54%, deoarece utilizatorilor li se prezentau un set concis de opțiuni relevante. Sistemul include, de asemenea, un mecanism de revenire la o variantă de siguranță, unde, dacă fațetele prezise nu oferă un număr suficient de rezultate, se adaugă dinamic fațete suplimentare în panou. De exemplu, dacă un utilizator filtrează pentru *„pompe centrifugale din oțel inoxidabil cu o rată de curgere de 500 GPM”* și sunt returnate doar câteva rezultate, sistemul ar putea adăuga o fațetă pentru *„materiale alternative”* pentru a ajuta utilizatorul să-și lărgească căutarea.

Căutarea predictivă, cunoscută și sub denumirea de completare automată a interogărilor, anticipă intenția utilizatorului înainte ca acesta să termine de tastat, reducând sarcina cognitivă și accelerând procesul de căutare. Sistemele tradiționale de completare automată se bazează pe metode bazate pe frecvență, unde sunt sugerate cele mai comune interogări care încep cu prefixul tastat. Totuși, aceste sisteme adesea nu țin cont de context, cum ar fi locația utilizatorului, comportamentul anterior sau ora din zi. Căutarea predictivă alimentată de AI depășește aceste limitări folosind modele de învățare profundă pentru a genera sugestii personalizate pe baza unei combinații de jurnale de interogări, profile de utilizatori și context în timp real. Pentru **eDezvoltator.ro**, am implementat un sistem de căutare predictivă care utilizează un model bazat pe **transformeri** pentru a genera sugestii pe măsură ce utilizatorul tastează. Modelul a fost antrenat pe un set de date de 5 milioane de interogări anterioare, împreună cu date de sesiune ale utilizatorilor și caracteristici contextuale, cum ar fi locația și tipul de dispozitiv. Sistemul generează sugestii în timp real folosind un algoritm de căutare **beam search**, care echilibrează probabilitatea sugestiei (pe baza predicțiilor modelului) cu diversitatea acesteia (pentru a evita afișarea de opțiuni redundante). De exemplu, dacă un utilizator din Cluj-Napoca tastează *„apartamente lux”*, sistemul ar putea sugestiona *„apartamente de lux în Cluj-Napoca”*, *„apartamente de lux în apropiere de Iulius Mall”* și *„apartamente de lux cu funcții smart home”*, pe baza locației și a interacțiunilor anterioare ale utilizatorului cu platforma. Sistemul include, de asemenea, o componentă de învățare prin întărire care ajustează clasamentul sugestiilor pe baza feedback-ului utilizatorilor, cum ar fi ce sugestii sunt selectate sau ignorate. Această abordare a îmbunătățit rata de click-uri pe sugestii cu 39% față de o bază de referință bazată pe frecvență, deoarece utilizatorii erau mai predispuși să selecteze opțiuni care corespundeau intenției lor. Sistemul de căutare predictivă gestionează, de asemenea, greșelile de tastare și interogările parțiale cu eleganță, folosind un model la nivel de caractere pentru a corecta erorile și a genera completări plauzibile. De exemplu, dacă un utilizator tastează *„apartmets in bucharst”*, sistemul va sugestiona *„apartamente în București”* și *„apartamente în Sectorul 1, București”*, corectând în același timp greșelile de ortografie în fundal.

Căutarea **cross-lingvistică** elimină barierele lingvistice, permițând utilizatorilor să interogheze sistemele în limba lor nativă, în timp ce rezultatele sunt retrase într-o altă limbă, sau invers. Această capacitate este esențială pentru platformele globale, regiunile multilingve sau industriile unde documentația tehnică este disponibilă în mai multe limbi. Sistemele tradiționale de căutare cross-lingvistică se bazează pe traducere automată pentru a converti interogările în limba țintă, dar această abordare introduce adesea erori și pierde nuanțe semantice. Căutarea cross-lingvistică alimentată de AI abordează aceste probleme folosind **încorporări multilingve**, care reprezintă cuvinte și fraze din diferite limbi într-un spațiu vectorial comun. Acest lucru permite sistemului să măsoare similaritatea semantică între limbi fără traducere explicită. Pentru **Transfăgărășan.Travel**, am implementat un sistem de căutare cross-lingvistică care suportă interogări în română, engleză, franceză și germană. Sistemul utilizează modelul **multilingual-e5-large** pentru a genera încorporări atât pentru interogări, cât și pentru documente, permițându-i să retriveze rezultate în orice limbă, indiferent de limba interogării. De exemplu, un utilizator care caută *„cabană cu vedere la lac”* (în română) va primi rezultate în toate cele patru limbi, clasate în funcție de similaritatea semantică cu interogarea. Sistemul include, de asemenea, un mecanism de revenire la o variantă de siguranță, unde, dacă nu sunt găsite rezultate relevante în limba preferată de utilizator, retrivează rezultate în alte limbi și oferă o traducere automată a conținutului. Această abordare a crescut traficul internațional al platformei cu 41%, deoarece utilizatorii din țări vorbitoare de alte limbi decât româna au putut descoperi și rezerva cazări fără bariere lingvistice. Sistemul de căutare cross-lingvistică alimentează, de asemenea, un motor de recomandare care sugerează atracții sau activități pe baza preferințelor lingvistice ale utilizatorului. De exemplu, dacă un utilizator vorbitor de franceză rezervă o cabană în Munții Făgăraș, sistemul ar putea recomanda trasee de drumeție din apropiere cu descrieri în franceză, chiar dacă conținutul original este în română.

Corectarea ortografică și extinderea interogărilor alimentate de AI sunt esențiale pentru îmbunătățirea uzabilității căutării, deoarece gestionează greșelile de tastare, sinonimele și termenii ambigui fără a necesita ca utilizatorii să reformuleze interogările. Sistemele tradiționale de corectare ortografică se bazează pe algoritmi de distanță de editare (de exemplu, distanța Levenshtein) pentru a corecta greșelile de tastare, dar aceste metode adesea nu țin cont de context sau de terminologia specifică domeniului. Corectarea ortografică alimentată de AI utilizează modele de învățare profundă pentru a prezice cea mai probabilă interogare intenționată pe baza intrării utilizatorului și a distribuției termenilor în corpus. Pentru catalogul de materiale de construcții menționat anterior, am implementat un sistem de corectare ortografică care utilizează un model de transformeri la nivel de caractere pentru a corecta greșelile de tastare în timp real. Modelul a fost antrenat pe un set de date de 1 milion de interogări anterioare, inclusiv versiuni corecte și cu greșeli de tastare, și atinge o rată de acuratețe de 96% în corectarea erorilor. De exemplu, dacă un utilizator tastează *„gypsum bord”*, sistemul îl corectează la *„gypsum board”*, în timp ce ia în considerare și corecții alternative precum *„gypsum bond”* dacă contextul sugerează acest lucru. Sistemul gestionează, de asemenea, termeni specifici domeniului, cum ar fi *„OSB”* (oriented strand board), care ar putea fi marcați ca greșeală de tastare de un corector ortografic de uz general. Extinderea interogărilor completează corectarea ortografică prin lărgirea domeniului de aplicare al căutării pentru a include sinonime, termeni înrudiți sau formulări alternative. De exemplu, o interogare pentru *„rigips”* ar putea fi extinsă pentru a include *„placă de gips-carton”*, *„gips-carton”* și *„placă de ipsos”*, asigurându-se că toate produsele relevante sunt retrase. Termenii de extindere sunt generați folosind o combinație de încorporări de cuvinte și un graf de cunoștințe, care capturează relațiile semantice între termeni. Această abordare a îmbunătățit recall-ul motorului de căutare cu 28%, deoarece a redus numărul de pagini *„fără rezultate”* cauzate de greșeli de tastare sau interogări înguste. Sistemul include, de asemenea, o buclă de feedback unde utilizatorii pot confirma sau corecta sugestiile sistemului, care este folosită pentru a îmbunătăți continuu acuratețea modelului.

Modelele hibride de recomandare combină **filtrarea colaborativă** și **filtrarea bazată pe conținut** pentru a exploata punctele forte ale ambelor abordări, în timp ce mitigează slăbiciunile acestora. Filtrarea colaborativă (CF) recomandă articole pe baza preferințelor utilizatorilor similari, dar suferă de problema pornirii de la zero (cold-start) și are dificultăți cu articolele de nișă care lipsesc de date suficiente de interacțiune. Filtrarea bazată pe conținut (CBF) recomandă articole pe baza atributelor acestora și a interacțiunilor anterioare ale utilizatorului cu articole similare, dar poate duce la overspecializare, unde utilizatorilor li se recomandă doar articole care se potrivesc foarte strâns cu comportamentul lor anterior. Modelele hibride abordează aceste probleme integrând ambele abordări, fie prin combinații ponderate, mecanisme de comutare sau fuziune la nivel de caracteristici. Pentru **CaseBineFacute.ro**, am implementat un motor de recomandare hibrid care sugerează modele de case pe baza preferințelor și comportamentului utilizatorilor. Componenta de filtrare colaborativă utilizează factorizarea matricială pentru a identifica modele în interacțiunile utilizatorilor, cum ar fi utilizatorii care favorizează designurile moderne arătând interes și pentru planuri deschise. Componenta bazată pe conținut analizează atributele modelelor de case, cum ar fi stilul arhitectural, numărul de dormitoare și clasamentul de eficiență energetică, pentru a recomanda opțiuni care se potrivesc cu preferințele explicite ale utilizatorului. Modelul hibrid combină scorurile de la ambele componente folosind un schemă de ponderare învățată, care este optimizată prin teste A/B. De exemplu, dacă un utilizator a vizualizat anterior mai multe case în stil scandinav, sistemul va prioriza designuri similare în recomandări, în timp ce ia în considerare și opțiunile populare printre utilizatorii cu gusturi similare. Această abordare a crescut rata de angajament a platformei cu 35%, deoarece utilizatorilor li s-au prezentat un set divers, dar relevant de opțiuni. Modelul hibrid abordează, de asemenea, problema cold-start pentru noile modele de case, bazându-se pe caracteristicile bazate pe conținut până când sunt disponibile suficiente date de interacțiune. De exemplu, un design nou de casă pasivă ar putea fi recomandat inițial pe baza ratingului său de eficiență energetică și a stilului arhitectural, și apoi rafinat pe baza feedback-ului utilizatorilor.

Recomandările bazate pe sesiune sunt deosebit de valoroase în platformele de comerț electronic și de conținut, unde intenția utilizatorului se poate schimba rapid în cadrul unei singure sesiuni. Sistemele tradiționale de recomandare se bazează pe profilele utilizatorilor pe termen lung, care pot să nu captureze obiectivele sau contextul imediat al utilizatorului. Recomandările bazate pe sesiune, pe de altă parte, analizează comportamentul utilizatorului în cadrul sesiunii curente pentru a genera sugestii în timp real. Pentru **Transfăgărășan.Travel**, am implementat un motor de recomandare bazat pe sesiune care sugerează atracții, activități și cazări pe baza interacțiunilor utilizatorului în timpul vizitei pe platformă. Sistemul utilizează o **rețea neuronală recurentă (RNN)** cu mecanisme de atenție pentru a modela secvența acțiunilor utilizatorului, cum ar fi căutările, click-urile și marcajele. RNN-ul este antrenat pe un set de date de 500.000 de sesiuni anterioare, unde variabila țintă este următorul element cu care utilizatorul interacționează. De exemplu, dacă un utilizator caută *„trasee de drumeție în apropiere de Lacul Bâlea”*, dă click pe o descriere a unui traseu și apoi vizualizează mai multe cabane montane, sistemul va recomanda trasee sau cabane suplimentare din aceeași zonă. Mecanismul de atenție permite modelului să cântărească importanța fiecărei acțiuni din sesiune, asigurându-se că interacțiunile recente au o influență mai mare asupra recomandărilor. Această abordare a îmbunătățit rata de conversie a platformei cu 27%, deoarece utilizatorii erau mai predispuși să reserve cazări sau activități care corespundeau intereselor lor curente. Modelul bazat pe sesiune se adaptează, de asemenea, la schimbările de intenție ale utilizatorului, cum ar fi un utilizator care începe prin căutarea de hoteluri prietenoase familiei, dar mai târziu explorează sporturile de aventură. În astfel de cazuri, sistemul reordonează treptat recomandările pentru a priorita opțiuni care se potrivesc cu preferințele în evoluție ale utilizatorului. Modelul este actualizat în timp real folosind o arhitectură de streaming, asigurându-se că recomandările reflectă cele mai recente interacțiuni ale utilizatorului.

Problema **cold-start** este o provocare persistentă în sistemele de recomandare, unde articolele noi sau de nișă lipsesc de date suficiente de interacțiune pentru a fi recomandate eficient. Strategiile alimentate de AI pentru abordarea acestei probleme includ exploatarea caracteristicilor bazate pe conținut, valorificarea metadatelor și utilizarea învțării prin transfer din domenii conexe. Pentru catalogul de materiale de construcții, am dezvoltat un sistem de recomandare cold-start care sugerează utilizatorilor produse noi pe baza atributelor acestora și a comportamentului utilizatorilor similari. Sistemul utilizează o abordare în două etape: mai întâi, identifică utilizatorii care sunt probabil interesați de produsul nou pe baza interacțiunilor lor anterioare cu articole similare; în a doua etapă, recomandă produsul acelor utilizatori și monitorizează feedback-ul lor pentru a rafina recomandările. Prima etapă se bazează pe un model bazat pe conținut care compară atributele produsului nou (de exemplu, tipul de material, gama de preț, utilizarea intenționată) cu atributele produselor cu care utilizatorul a interacționat în trecut. De exemplu, dacă o nouă marcă de membrană de impermeabilizare este adăugată în catalog, sistemul o va recomanda utilizatorilor care au cumpărat anterior materiale de acoperiș sau etanșanți. A doua etapă utilizează un algoritm **bandit** pentru a echilibra explorarea (recomandarea produsului unui public mai larg) și exploatarea (recomandarea acestuia utilizatorilor cu cel mai mare interes prevăzut). Această abordare a crescut rata de adoptare a produselor noi cu 43%, deoarece acestea erau introduse utilizatorilor care erau cel mai probabil să le găsească relevante. Sistemul include, de asemenea, un mecanism de revenire la o variantă de siguranță, unde, dacă un produs nou primește puțin angajament, este recomandat utilizatorilor cu preferințe diverse pentru a aduna feedback suplimentar. Pentru produsele de nișă, cum ar fi unelte specializate pentru restaurarea istorică, sistemul utilizează învățare prin transfer din domenii conexe, cum ar fi uneltele generale de construcții, pentru a identifica potențiali utilizatori.

**AI explicabil (XAI)** în recomandări este esențial pentru construirea încrederii și transparenței, deoarece utilizatorii sunt mai predispuși să interacționeze cu sugestii când înțeleg raționamentul din spatele acestora. Sistemele tradiționale de recomandare, în special cele bazate pe învățare profundă, funcționează adesea ca „cutii negre”, unde motivația pentru o sugestie este opacă. Tehnicile XAI abordează această problemă oferind explicații interpretabile pentru recomandări, cum ar fi *„Recomandat pentru că ați vizualizat articole similare”* sau *„Popular printre utilizatorii cu preferințele dvs.”*. Pentru **CaseBineFacute.ro**, am implementat un motor de recomandare explicabil care oferă justificări transparente pentru fiecare sugestie. Sistemul utilizează un model hibrid care combină filtrarea colaborativă și cea bazată pe conținut, unde explicațiile sunt generate pe baza caracteristicilor care au contribuit cel mai mult la recomandare. De exemplu, dacă unui utilizator i se recomandă un design de casă în stil fermă modernă, explicația ar putea fi: *„Recomandat pentru că favorizați planurile deschise și designurile eficiente energetic, iar acest model include ambele caracteristici”*. Explicațiile sunt generate folosind un sistem bazat pe reguli care mapează caracteristicile interne ale modelului la justificări ușor de înțeles. Această abordare a crescut încrederea utilizatorilor în recomandări, măsurată printr-o creștere de 29% a ratei de click-uri pe sugestiile explicate față de cele neexplicate. Sistemul permite, de asemenea, utilizatorilor să ofere feedback asupra explicațiilor, cum ar fi indicarea dacă au găsit justificarea utilă sau irelevantă. Acest feedback este folosit pentru a rafina procesul de generare a explicațiilor, asigurându-se că justificările rămân precise și utile. Pentru recomandările bazate pe filtrare colaborativă, sistemul oferă explicații precum *„Recomandat pentru că 85% dintre utilizatorii care au vizualizat acest model au explorat și designuri în stil scandinav”*, ceea ce ajută utilizatorii să înțeleagă dovada socială din spatele sugestiei.

Testarea **A/B** și **AI** sunt instrumente complementare pentru optimizarea continuă a algoritmilor de căutare și recomandare, deoarece permit experimentarea bazată pe date și îmbunătățirea iterativă. Testarea A/B tradițională implică împărțirea utilizatorilor în grupuri și expunerea lor la diferite versiuni ale unei caracteristici, cum ar fi un nou algoritm de clasare sau un model de recomandare. Totuși, această abordare poate fi lentă și consumatoare de resurse, în special atunci când se testează multiple variații sau interacțiuni complexe. Testarea A/B alimentată de AI abordează aceste limitări folosind învățarea automată pentru a aloca dinamic traficul către variațiile cu cea mai bună performanță și pentru a identifica cele mai impactante caracteristici. La **CELSO DATA SCIENCE**, am implementat un cadru de testare A/B alimentat de AI pentru un client din sectorul e-commerce, unde obiectivul era optimizarea clasamentului rezultatelor căutării. Cadrul utilizează un algoritm **multi-armed bandit** pentru a aloca traficul către diferite modele de clasare pe baza performanței acestora, măsurate prin metrici precum rata de click-uri și rata de conversie. Algoritmul bandit echilibrează explorarea (testarea de modele noi) și exploatarea (utilizarea modelului cu cea mai bună performanță), asigurându-se că sistemul învață și se adaptează în mod continuu. De exemplu, dacă un nou model de clasare arată promisiune în etapele incipiente ale testării, algoritmul va crește treptat alocarea de trafic pentru a aduna mai multe date, în timp ce reduce traficul către modelele cu performanțe slabe. Această abordare a redus timpul necesar pentru identificarea modelului cu cea mai bună performanță cu 60% față de testarea A/B tradițională, deoarece a eliminat necesitatea de divizări fixe ale traficului și a analizei manuale. Cadrul include, de asemenea, o analiză a importanței caracteristicilor care identifică care aspecte ale modelului de clasare (de exemplu, preț, relevanță, popularitate) au cel mai mare impact asupra performanței. Aceste informații sunt folosite pentru a ghida experimentarea ulterioară, cum ar fi testarea de variații care se concentrează pe caracteristici specifice. Cadrul de testare A/B alimentat de AI gestionează, de asemenea, interacțiuni complexe, cum ar fi efectul combinat al algoritmilor de clasare a căutării și de recomandare, folosind designuri factoriale și învățare automată pentru a modela relațiile dintre variabile.

**Învățarea federată** este o abordare care protejează confidențialitatea pentru căutarea și recomandările personalizate, unde modelul este antrenat pe dispozitive sau servere descentralizate fără a schimba date brute ale utilizatorilor. Această tehnică este deosebit de valoroasă pentru aplicațiile care gestionează informații sensibile, cum ar fi sănătatea, finanțele sau preferințele personale. Modelele tradiționale de învățare automată necesită colectarea centralizată a datelor, ceea ce ridică probleme de confidențialitate și poate încălca reglementări precum **GDPR**. Învățarea federată abordează aceste probleme păstrând datele pe dispozitivul utilizatorului și împărtășind doar actualizări ale modelului (de exemplu, gradienți sau ponderi) cu un server central. La **CELSO DATA SCIENCE**, am implementat un sistem de învățare federată pentru un client din sectorul imobiliar, unde obiectivul era personalizarea rezultatelor căutării pe baza comportamentului utilizatorului fără a compromite confidențialitatea. Sistemul utilizează un algoritm de **medie federată**, unde dispozitivul fiecărui utilizator antrenează un model local pe datele sale de interacțiune (de exemplu, căutări, click-uri, marcaje) și trimite periodic actualizările modelului către un server central. Serverul agregă actualizările de la toate dispozitivele pentru a crea un model global, care este apoi distribuit înapoi dispozitivelor. Această abordare asigură faptul că modelul global beneficiază de cunoștințele colective ale tuturor utilizatorilor fără a accesa vreodată datele lor brute. De exemplu, dacă un utilizator caută frecvent *„apartamente cu balcon”*, modelul local va învăța să prioritzeze astfel de anunțuri, iar această preferință va fi incorporată în modelul global fără a dezvălui identitatea sau interogările specifice ale utilizatorului. Sistemul de învățare federată a îmbunătățit relevanța rezultatelor căutării cu 23% față de o bază de referință nepersonalizată, în timp ce respectă pe deplin cerințele GDPR. Sistemul include, de asemenea, tehnici de **confidențialitate diferențială**, cum ar fi adăugarea de zgomote la actualizările modelului, pentru a proteja și mai mult confidențialitatea utilizatorilor. Acest lucru asigură că, chiar dacă un atacator interceptă actualizările, nu poate deduce informații sensibile despre utilizatorii individuali.

**AI la margine (Edge AI)** permite căutări și recomandări cu latență scăzută în aplicațiile mobile prin procesarea datelor local pe dispozitivul utilizatorului, în loc să se bazeze pe serverele bazate pe cloud. Această abordare este critică pentru aplicațiile care necesită răspunsuri în timp real, cum ar fi căutarea vocală sau experiențele de realitate augmentată (AR). Sistemele tradiționale bazate pe cloud introduc latență datorată întârzierilor de rețea, ceea ce poate degrada experiența utilizatorului, în special în regiunile cu conectivitate slabă. Edge AI abordează această problemă implementând modele ușoare de învățare automată direct pe dispozitivul utilizatorului, unde pot procesa interogările și genera recomandări cu întârziere minimă. Pentru o aplicație mobilă dezvoltată pentru **Transfăgărășan.Travel**, am implementat un sistem Edge AI care oferă recomandări în timp real pentru atracții și activități pe baza locației și preferințelor utilizatorului. Sistemul utilizează o versiune **cuantizată** a modelului de recomandare, care reduce dimensiunea și cerințele computazionale ale acestuia, menținând în același timp acuratețea. Modelul este antrenat în cloud folosind setul complet de date și apoi implementat în aplicația mobilă, unde rulează local folosind GPU-ul sau **NPU-ul** (unitatea de procesare neuronală) al dispozitivului. De exemplu, dacă un utilizator deschide aplicația în apropiere de **Lacul Bâlea**, sistemul va recomanda imediat trasee de drumeție din apropiere, cabane și restaurante pe baza comportamentului său anterior și a orei din zi. Sistemul Edge AI a redus latența recomandărilor de la 1,2 secunde (bazat pe cloud) la 80 de milisecunde (pe dispozitiv), rezultând o creștere de 45% a angajamentului utilizatorilor. Sistemul include, de asemenea, un mecanism de revenire la o variantă de siguranță, unde, dacă modelul de pe dispozitiv lipsește de date suficiente pentru o interogare, trimite o cerere către modelul bazat pe cloud și cachează răspunsul pentru utilizări viitoare. Această abordare hibridă asigură faptul că utilizatorii primesc recomandări rapide și relevante chiar și în zonele cu conectivitate slabă.

Detectarea **anomaliilor** în interogările de căutare alimentată de AI este esențială pentru combaterea spam-ului, fraudei și intențiilor malicioase, care pot degrada calitatea rezultatelor căutării și pot dăuna încrederea utilizatorilor. Sistemele tradiționale de detectare a anomaliilor se bazează pe filtre bazate pe reguli sau metode statistice, care sunt adesea ocolite de atacatorii sofisticați. Detectarea anomaliilor alimentată de AI utilizează modele de învățare automată pentru a identifica modele în comportamentul interogărilor care deviază de la normă, cum ar fi căutări rapide succesive, combinații neobișnuite de cuvinte cheie sau interogări concepute pentru a exploata vulnerabilități. La **CELSO DATA SCIENCE**, am implementat un sistem de detectare a anomaliilor pentru un client din sectorul anunțurilor clasificate, unde obiectivul era identificarea și blocarea anunțurilor frauduloase și a interogărilor spam. Sistemul utilizează un ansamblu de modele, inclusiv **păduri de izolare (isolation forests)**, **autoencodere** și clasificatoare bazate pe **transformeri**, pentru a detecta anomalii în timp real. Modelul de pădure de izolare identifică valorile aberante pe baza densității interogărilor în spațiul caracteristicilor, în timp ce autoencoderul detectează anomalii măsurând eroarea de reconstrucție a încorporărilor interogărilor. Clasificatorul bazat pe transformeri analizează conținutul semantic al interogărilor pentru a identifica modele suspecte, cum ar fi interogări care conțin link-uri de phishing sau cuvinte cheie spam. De exemplu, dacă un utilizator trimite multiple interogări pentru *„iPhone gratuit”* sau *„transfer urgent de numerar”*, sistemul le marchează ca potențial spam și blochează rezultatele. Sistemul de detectare a anomaliilor a redus volumul interogărilor spam cu 89%, așa cum a fost măsurat prin revizuiri manuale ale interogărilor marcate. Sistemul include, de asemenea, o buclă de feedback unde moderatorii umani pot confirma sau corecta deciziile sistemului, care este folosită pentru a îmbunătăți continuu acuratețea modelului. Această abordare asigură faptul că sistemul se adaptează la noi tipuri de spam și fraudă, cum ar fi tacticile emergente de phishing sau tehnicile de umplere cu cuvinte cheie.

Scalarea infrastructurii de căutare cu **indexare și cache optimizate de AI** este crucială pentru gestionarea seturilor de date la scară largă și a volumelor mari de interogări fără a sacrifica performanța. Motoarele de căutare tradiționale se bazează pe indexuri inverse și strategii de cache statice, care pot deveni gâturi de sticlă pe măsură ce setul de date crește. Indexarea și cache-ul optimizate de AI utilizează învățarea automată pentru a prezice ce date sunt cel mai probabil să fie accesate și pentru a optimiza procesele de stocare și recuperare în consecință. Pentru catalogul de materiale de construcții, am implementat un sistem de indexare optimizat de AI care utilizează o **structură de index învățată** pentru a accelera interogările de căutare. Sistemul înlocuiește indexul invers tradițional cu o rețea neuronală care prezice locația documentelor în index pe baza încorporărilor acestora. Această abordare reduce timpul de căutare de la **O(log n)** la **O(1)** pentru majoritatea interogărilor, deoarece rețeaua neuronală poate estima direct poziția documentelor relevante. Indexul învățat este antrenat pe un set de date de interogări anterioare și rezultatele corespunzătoare, și este actualizat periodic pentru a reflecta schimbările din corpus. De exemplu, dacă este adăugată o nouă categorie de produse în catalog, indexul învățat este reantrenat pentru a incorpora noile date. Sistemul include, de asemenea, un strat de cache dinamic care utilizează **învățarea prin întărire** pentru a prezice care interogări sunt cel mai probabil să fie repetate și pentru a cache-ui rezultatele acestora în consecință. Politica de cache este optimizată pe baza metricilor precum rata de lovire a cache-ului și latența interogării, asigurându-se că datele cel mai frecvent accesate sunt întotdeauna disponibile. Această abordare alimentată de AI a redus latența medie a interogărilor cu 67% față de un index invers tradițional, reducând în același timp cerințele de stocare cu 40%. Sistemul se scalează, de asemenea, orizontal, permițându-i să gestioneze volume crescânde de interogări prin distribuirea indexului învățat și a cache-ului pe mai multe servere.

Rolul **AI în optimizarea căutării vocale** devine din ce în ce mai important pe măsură ce asistenții vocali precum Siri, Alexa și Google Assistant câștigă o adopție largă. Interogările de căutare vocală diferă de cele bazate pe text în mai multe moduri cheie: sunt mai lungi, mai conversaționale și adesea includ cuvinte de umplutură sau formulări ambigue. Motoarele de căutare tradiționale au dificultăți în gestionarea acestor nuanțe, ceea ce duce la rezultate slabe pentru interogările vocale. Optimizarea căutării vocale alimentată de AI abordează aceste provocări folosind modele de **înțelegere a limbajului natural (NLU)** pentru a interpreta intenția din spatele interogărilor rostite și exploatând informații contextuale, cum ar fi locația utilizatorului sau comportamentul anterior. Pentru **Asistentul Virtual Public Universal (UVPA)**, am implementat un sistem de căutare vocală care gestionează întrebările cetățenilor despre serviciile municipale. Sistemul utilizează un model de **recunoaștere vocală** pentru a transcrie interogarea rostită, urmat de o căutare bazată pe text care retrivează documente relevante din baza de cunoștințe. Modelul de recunoaștere vocală este o versiune finisată a **Whisper**, care atinge o rată de eroare a cuvintelor (**WER**) de 5,2% pentru vorbirea în română, semnificativ mai mică decât WER-ul de 12,8% al modelului de bază. Interogarea transcrise este apoi procesată de un motor de căutare semantic care utilizează **încorporări vectoriale** pentru a retrive rezultate care se potrivesc cu intenția utilizatorului. De exemplu, dacă un cetățean întreabă: *„Când se face colectarea gunoiului în cartierul meu?”*, sistemul retrivează programul pentru sectorul său specific și sintetizează un răspuns folosind un model de **text-la-vorbire**. Sistemul de căutare vocală include, de asemenea, un mecanism de dezambiguizare care pune întrebări clarificatoare dacă interogarea este ambiguă. De exemplu, dacă un cetățean întreabă: *„Cum obțin o autorizație?”*, sistemul ar putea răspunde: *„Vă referiți la o autorizație de construcție, una pentru afaceri sau una de parcare?”*. Această abordare a îmbunătățit acuratețea rezultatelor căutării vocale cu 58% față de un sistem de bază care se baza pe potrivirea cuvintelor cheie. Sistemul se adaptează, de asemenea, la accentele și dialectele regionale prin finisarea modelului de recunoaștere vocală pe un set de date divers de vorbitori de limba română.

.