Ciao amic* del computer che ne sapete più di me che ne so poco di queste cose, secondo voi sarebbe possibile fare un motore di ricerca pubblico distribuito, o anche no, che fosse free software e il cui sviluppo e i cui costi fossero sostenuti economicamente soltanto con sottoscrizioni libere, e che indicizzasse solo il testo del web, ovviamente senza "AI", che non veicolasse alcuna pubblicità, che non trattasse in alcun modo i dati dellə utent* e che desse una ricerca base e una ricerca avanzata senza "bias" né censura, con opzioni suppergiù simili a quelle della ricerca avanzata di google e con l'aggiunta della possibilità di ordinare i risultati per ordine cronologico di pubblicazione, e magari anche altre cose che, come questa, non ho mai visto sui motori di ricerca?
Gli unici calcoletti che ho fatto sono assai spannometrici ma li metto lo stesso: pare ci siano circa 4 miliardi di pagine web al presente - https://www.worldwidewebsize.com/ -, facciamo che mediamente il testo utile ai fini dell'indicizzazione di una di queste pagine pesi 10.000 byte, sarebbero 40 terabyte in tutto... boh forse ci starebbe.

(Boost apprezzati)

#MotoriDiRicerca #MotoriDiRicercaPubblici #google #informatica

WorldWideWebSize.com | The size of the World Wide Web (The Internet)

The size of the World Wide Web (The Internet) is estimated here every day. The Indexed Web contains at least 3.98 billion pages. Last update Wednesday, 15 January, 2025

Che sòla questo fediverso però :))
2 boost e manco una risposta.
Su quello in inglese, https://todon.nl/@jones/115157414998945472, 1 boost...
Bah.
Jones (@[email protected])

Hello :) A question to those who know more about these things than i do (my knowledge is rather scarce in this regard): do you think it would be possible to create a distributed (or not) public search engine that would be free software and whose development and hardware costs would be financially supported solely by free subscriptions and that would only index web text, obviously without “AI” and without conveying any advert and without processing user data in any way and without applying "biases" or censorship, featuring basic search plus advanced search options including the possibility to sort results by publication date, and maybe even other things i've never seen on search engines? The only calculations i've done are very rough, but i'll put them out there anyway: there seem to be about 4 billion web pages at present - https://www.worldwidewebsize.com/ - Let's say that on average the text useful for indexing one of these pages weighs 10,000 bytes, that would be 40 terabytes in total... I don't know, maybe it would work. (Boosts appreciated) #SearchEngines #PublicSearchEngines

Todon.nl
@jones Forse è perché hai chiesto a chi ne sa più di te sull'argomento e non sanno se possono rispondere o no
@sparkit ah forse si, almeno nella versione italiana, perché in quella inglese ho scritto esplicitamente che ne so poco, https://todon.nl/@jones/115157414998945472 - ora riacchitto anche quella italiana, grazie :)
Jones (@[email protected])

Hello :) A question to those who know more about these things than i do (my knowledge is rather scarce in this regard): do you think it would be possible to create a distributed (or not) public search engine that would be free software and whose development and hardware costs would be financially supported solely by free subscriptions and that would only index web text, obviously without “AI” and without conveying any advert and without processing user data in any way and without applying "biases" or censorship, featuring basic search plus advanced search options including the possibility to sort results by publication date, and maybe even other things i've never seen on search engines? The only calculations i've done are very rough, but i'll put them out there anyway: there seem to be about 4 billion web pages at present - https://www.worldwidewebsize.com/ - Let's say that on average the text useful for indexing one of these pages weighs 10,000 bytes, that would be 40 terabytes in total... I don't know, maybe it would work. (Boosts appreciated) #SearchEngines #PublicSearchEngines

Todon.nl
@jones Forse Ecosia.
@Ryoma123 ecosia è interessante, ma non so chi lo gestisca, quanto ci guadagni e ci spenda; non so se è finanziato solo a sottoscrizioni libere; la ricerca non dà la possibilità di ordinare i risultati per data di pubblicazione; non credo sia free software.
@Ryoma123 comunque non sto capendo la cosa più importante: da cosa guadagna ecosia per poi reinvestire parte di quel che guadagna in piantamento alberi?
@Ryoma123 e quanto reinveste percentualmente negli alberi? e quanti alberi pianta rispetto al suo impatto ecologico? e quegli alberi sono "di tutti" o "di ecosia" o...?
@jones C'è yacy esiste dal 2003, boh non ne so molto ma ecco qua, magari lo provo dopo https://yacy.net/
Home - YaCy

YaCy P2P - Decentralized Search Engine

@jones C'è pure questo, si può usare direttamente dal web senza docker e palle varie, però ha un pizzico di IA.https://dawnsearch.org/
Tra l'altro, perché non la vuoi?
DawnSearch

@fingolfin00 yacy: mi sembra di avergli dato un'occhiata qualche giorno fa, ma adesso è irraggiungibile da qui, quindi non so confermartelo... se è quello legato alle criptovalute e basato su blockchain, non ho idea di chi ci stia dietro e quanto ci stia spendendo o guadagnando ma non mi interessa già solo perché le crypto sono ecologicamente insostenibili.
(1/2)
@fingolfin00
per quanto riguarda https://dawnsearch.org, che è basato su "IA", non mi interessa perché ho appena provato a cercare "francesca albanese" e i risultati sono proprio a muzzo; sull'IA per com'è al presente sono contrario per es. perché ha questi problemi: «environmental harms, the reinforcement of bias and generation of racist output, the cognitive harms and AI supported suicides, the problems with consent and copyright, the way AI tech companies further the patterns of empire, how it’s a con that enables fraud and disinformation and harassment and surveillance, the exploitation of workers, as an excuse to fire workers and de-skill work, how they don’t actually reason and probability and association are inadequate to the goal of intelligence, how people think it makes them faster when it makes them slower, how it is inherently mediocre and fundamentally conservative, how it is at its core a fascist technology rooted in the ideology of supremacy, defined not by its technical features but by its political ones»: https://anthonymoser.github.io/writing/ai/haterdom/2025/08/26/i-am-an-ai-hater.html
(2/2)
DawnSearch

@jones Il mio consiglio è sempre di guardare bene e approfondire qualsiasi tecnologia. E lo do soprattutto a me stesso ;-). Yacy è un progetto molto vecchio (qui repo github se non riesci ad accedere al sito https://github.com/yacy/yacy_search_server), ripeto non lo conosco bene, da quel che leggo è P2P e adattabile a intranet e il web. C'è un paper per studiarsi l'architettura https://yacy.net/material/Description_of_the_YaCy_Distributed_Web_Search_Engine_Herrmann_Ning_Diaz_Preneel_ESAT_KULeuven_COSIC_article-2459.pdf
Tutto ciò che dici su IA è un discorso molto semplificante, se vuoi approfondiamo con piacere. Nel caso di dawsearch (progetto amatoriale simile alla tua idea di cui parlavi all'inizio) l'IA è usata per il ranking tramite un'architettura molto simpatica https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2, non usa "chatgpt" per capirsi. I risultati sono scarsi perché avrà indicizzato poverino lo 0,001% del web. In bocca al lupo per il tuo progetto se hai risultati condividi!
GitHub - yacy/yacy_search_server: Distributed Peer-to-Peer Web Search Engine and Intranet Search Appliance

Distributed Peer-to-Peer Web Search Engine and Intranet Search Appliance - yacy/yacy_search_server

GitHub
@fingolfin00 ho visto ora, usando un proxy che ho su un server (prima non riuscivo a vederlo perché sul mio ip internet gira sempre un nodo tor intermedio e sempre più siti bloccano tor), che yacy non è quello che pensavo io, che non ricordo come si chiama ma è basato su blockchain e legato alle criptovalute. Per me è molto interessante, yacy, ma è una cosa progettata perché l'utente se la installi in locale (c'è solo una demo di istanza pubblica, che al momento non funziona, ma leggi il paragrafo che la introduce: https://yacy.net/demonstration_tutorial_screenshot/#yacy-demo-peer), mentre a me piacerebbe capire quanto sarebbe possibile fare una cosa a nodi tutti pubblici, o anche non distribuita, che indicizzasse e aggiornasse abbastanza in fretta tutto il testo rilevante del web e funzionasse meglio, per quanto riguarda il testo, di un duckduckgo o simili, con la possibilità per l'utente di ordinare i risultati per data di pubblicazione, e anche quella, sempre lato utente, di definire una "classifica" di fonti attendibili (per cui se in testa alla lista metto, per es., guardian.com, avrò un ranking che privilegia le pagine da quel dominio, ecc.), più altre varie che mi stanno venendo in mente.
(1/2)
Demo - YaCy

YaCy P2P - Decentralized Search Engine

@fingolfin00 per quanto riguarda dawnsearch, anche quello è interessante anche per me, la sua architettura mi sembra molto simile a quella che ho immaginato per la versione distribuita della cosa a cui sto pensando, ma sull'uso della "IA" resto perplesso: dice che non usa il modello solo per il ranking, ma anche proprio per la ricerca, e allo stesso tempo dice che ha indicizzato lo 0,1% di una fetta del web, perciò mi sembra impossibile valutare quanto i suoi risultati molto scarsi lo siano in ragione dell'uso del modello o della pochezza della base dati; inoltre non sto riuscendo a capire, su huggingface, da dove venga quel modello, se per es. è un modello di meta "trainato" in qualche modo particolare, o altro... - in generale comunque visto il disastro che l'uso delle "IA" sta facendo non solo nel campo dei chatbot ma anche sui motori di ricerca che mettono in testa "riassunti di risultati" generati dalla "IA", anche lasciando perdere il discorso dell'impatto ecologico della produzione e dell'uso dei modelli, tendo a pensare che non sia una buona idea usare llm per fare ricerca web.
(2/2)
@jones Grazie delle tue risposte. Secondo me è cruciale capire se vuoi un'infrastuttura centralizzata o p2p. Per partire potresti provare a implementarti un search engine centralizzato, forse più semplice e troverai sicuramente tante risorse per partire, e poi da lì vedere se passare al p2p, magari appoggiandoti su yacy o altre soluzioni. Se inizi questo progetto e vuoi collaborare lo faccio volentieri per imparare. Per il modellino MiniLM, usano pesi pretrained di Microsoft, l'architettura è sentence transformer, quindi encoder-decoder con attention (classica oramai), finetuning sui siti listati alla fine della pagina di huggingface. Secondo me ci sta come scelta per fare veloce, volendo ci si può sganciare dai pesi Microsoft e usarne altri. Non butterei via l'idea di avere IA per ranking / search results.
@fingolfin00 si, capire se centralizzato o p2p è fondamentale ed è quello su cui sto lavorando ora, ma seguendo un metodo diverso da quello che suggerisci, che però non escludo di provare, in un secondo tempo; al momento sto popolando una colonna di una tabella di un db postrgresql (poi voglio provare anche con db nosql) con seguenze casuali di 10kb di parole inglesi pescate da un dump del dizionario inglese di aspell, per un totale di 3.435.973 di record, ovvero circa 32gb, ovvero il doppio della ram che ho sul pc, per poi fare dei test di query e vedere che tempi hanno; sto cercando, per ora infruttuosamente, di vedere quante query al secondo (o al minuto, o all'ora, ecc.) riceve un motore di ricerca tipo duckduckgo, o anche goole, anche per valutare la banda che sarebbe necessaria (e che comunque sarebbe il doppio, nell'ipotesi distribuita, di quella necessaria per l'ipotesi centralizzata).
Sulla "IA", penso che a parità di efficienza e costi si possa fare meglio senza usarla dal punto di vista dei risultati, e in ogni caso non userei modelli derivati da modelli che hanno richiesto le valanghe di gigawatt per essere creati e continuano a richiederne sempre di più per le nuove versioni, ecc.
(1/2)
@fingolfin00 Comunque se approdo a qualcosa di più definito te lo dico e se ti va di partecipare, lasciando perdere l'IA, sarei contento :)
(2/2)
@jones Certo tienici aggiornati! Io penso che sfruttare il lavoro comunque che esiste sia una buona strategia hacker. Comunque son qua, se butta qualcosa su repo condivise ci sono!
@fingolfin00 ma, che tu sappia, escludendo tutti i LLM derivati, non ci sono "LLM originari" efficaci la cui produzione non abbia richiesto le valanghe di gigawatt e di dati scrapati male, ma tanto tanto meno, e il cui singolo impiego per un minuto non richieda tanta energia al minuto quanta ne richiede un giocone treddì (da moltiplicare però per il numero di richieste che devono processare le "AI" su motori di ricerca come google per fare riassunti - spesso sbagliati - dei risultati della ricerca)?
@jones Non credo, da quando sono leakati i pesi di Meta poi tanti hanno buttato fuori i pesi base, tanto poi è tutto fine-tuning. Io penso che oramai quei gigawatt sono stati consumati. A questo punti usiamoli! Il problema dei dati è un bel problema. Se c'è un problema etico, bisognerebbe capire se c'è modo in sede di fine-tuning di limitarlo. Questo non so. Bisogna studiare bene questo tema e purtroppo non sono esperto di LLM, forse ci sono pesi etici se vogliamo, tutto dipende da cosa si vuole fare. Un chatbot evoluto forse è fuori portata, ma un meccanismo di ranking why not?

@fingolfin00

> Non credo, da quando sono leakati i pesi di Meta poi tanti hanno buttato fuori i pesi base, tanto poi è tutto fine-tuning. Io penso che oramai quei gigawatt sono stati consumati. A questo punti usiamoli!

Perché devo usare delle robe che al loro meglio, coi dataset più ampi, ecc., producono risultati comunque tanto spesso sbagliati? Poi il discorso dei gigawatt ormai usati è vero, ma nel momento in cui uso il prodotto che ne è venuto, incentivo l'azienda a consumare altre tonnellate di gigawatt per la versione successiva.

> [...]
> Un chatbot evoluto forse è fuori portata, ma un meccanismo di ranking why not?

Per quanto detto sopra, che mi porta a diffidare dell'efficacia di un LLM anche solo per il ranking, e perché penso che un ranking semplice nelle mani dell'utente (peter impostare in "ricerca avanzata" ordinamenti multipli tipo "ordina i risultati in base alle tue fonti preferite / alla ricorrenza delle stringhe cercate nel testo / alla data di pubblicazione / ...) sarebbe molto più utile all'utente e allo stesso tempo molto più leggero sull'hardware rispetto all'uso di "IA".

@fingolfin00

aggiornamento: sul database di test, con la tabella popolata come ti avevo scritto, ma con soli 16 gb (il totale della mia RAM) di parole italiane a caso nella colonna del testo ("cont"), con record ciascuno da ~10.000 byte, indicizzata con BTREE o HASH, fare query con LIKE/ILIKE era inservibile: quasi un minuto per ognuna; allora ho provato a reindicizzarla "fulltext" con...

create index cont_ft_idx on urls using GIN (to_tsvector('simple', cont));

...(con 'simple' perché la possibilità che se cerco "andando" mi restituisca anche i record con "andare" la vedo più come un bug che come una feature, anche se non escludo di testare anche quella per metterla a disposizione dell* utent*, opzionalmente), e poi a querarla con query come...

select count(id) from urls where to_tsvector('simple', cont) @@ to_tsquery('simple', 'etichette <-> stufando'); ["trova tutti i record in cui c'è la parola 'etichette' seguita da 'stufando' (ce n'era uno)]

...e i risultati sono a naso abbastanza confortanti, nel senso che ci mette al massimo 25 ms (millisecondi)... poi sarebbe da vedere quante query riceverebbe al secondo in media un nodo o il server, però mi è sembrato abbastanza confortante :)

ora sto ripopolando la tabella con 32 gb di dati per provare anche così.

@fingolfin00

ora ho trovato questa pagina, https://backlinko.com/duckduckgo-stats, dove dice che duckduckgo riceve circa 36 miliardi di query all'anno, che sono circa 1140 al secondo... con 25 ms per ogni query del tipo che ho usato nel post qui sopra, e su solo 16 gb di dati, potrei permettermi solo 40 query al secondo, di quel tipo, che già non è molto strutturato...

poi ho trovato quest'altra, https://almanac.httparchive.org/en/2022/page-weight, dove dice che nel 2022 il peso medio dell'html di una pagina era circa 30 kb, quindi la mia stima spannometrica iniziale (10 kb) era troppo bassa, anche considerando che salvo solo il testo, senza le tag html...

insomma l'ipotesi "singolo server" mi sembra completamente infattibile, anche solo sul testo, ma proseguo i test per cercare di farmi un'idea più precisa su quella distribuita.

DuckDuckGo Usage Stats for 2025

Interesting DuckDuckGo usage stats. Includes data on searches, market share, employees and more.

Backlinko
@jones Grazie dell'aggiornamento! Oggi sono un po' impegnato al lavoro ma appena riesco guardo tutto meglio. Dai tuoi test si intuisce che potrebbe essere indispensabile un modello p2p per grosse moli di dati. L'alternativa per salvare il modello centralizzato su macchina piccola è limitarsi a un subset di internet. Magari fare un crawler selettivo. Anche solo per iniziare a lavorarci
@fingolfin00 dai test che ho fatto su questo pc, che è il più putente che ho a disposizione (gli altri sono il portatile di mia madre e un portatile mio), mi sembra emerga abbastanza chiaramente che anche in ottica distribuita non è una cosa cui potrei partecipare io con questo piccì (abbastanza sgrauso, ha circa 10 anni e già allora lo era: 16 gb di ram, intel i5-7600K quad core che vanno da 3,8 a 4,2 ghz, al massimo 1 tera dedicabile allo storage del database), perché già non riesce a fare più di ~5 query al secondo sull'indice superottimizzato della colonna con il "testo web" simulato in record da 20 kb ciascuno (una stima spannometrica ma abbastanza realistica, secondo le fonti che ho consultato, del peso medio di una pagina web oggidì), a prescindere dalla sua dimensione (ho provato con 8-16-32 gb totali di "testo web" in quella colonna, e il risultato varia poco; almeno finché l'indice ci sta in RAM credo sia suppergiù così sempre)...
(1/2)
@fingolfin00 quindi ben lontano dal poter gestire quelle ~1140 query al secondo che gestisce un duckduckgo, che comunque ogni nodo dovrebbe gestire... non so valutare la potenza minima che dovrebbe avere un server-nodo della rete, ma l'impressione che ho è che non sia una cosa che si possa tirare in piedi senza fondi iniziali grossi; forse però è una cosa che potrebbero tentare di fare soggetti come wikimedia, che già hanno tanti server putenti, ma quasi sicuramente dovrebbero chiedere più soldi in sottoscrizioni libere di quanto già fanno per wikipedia, ecc.
(2/2)