Caro Damiano,
sono anche io colpito dalla competenza descrittiva e procedurale della
risposta.
Tuttavia la domanda posta (1) è molto specifica, in (2) un ambito molto
tecnico per la quale (3) la pragmatica (cioè come si _fa_ -a mano- una
relazione tra tabelle etc...) è piuttosto univoca.
Per cui suppongo che la variabilità all'interno dei testi selezionati
dal lessico della domanda sia piuttosto bassa, specie se sono
selezionate fonti con uno score che misura l'affidabilità della risposta
(come stackoverflow). Anche se diversa nella complessità, la risposta
non è più controversa che chiedere "come si sposta un file in Unix".
Mi aspetterei un comportamento diverso in domande come "come curare la
gastrite dell'unicorno", ambito altrettanto specifico e tecnico ma con
risposte che mi aspetto più variabili (magari mi sbaglio, confesso di
essere piuttosto ignorante in materia di unicorni).
Anche la ricetta della pasta alla carbonara rischia di riservare delle
sorprese, specie se formulata in inglese.
Il fatto che la risposta a domande tecniche sia esatta ("vera", cioè si
fa davvero così) significa che vi è poca variabilità nei contenuti dei
documenti che ne descrivono la pragmatica e che la macchina riassume
secondo il percorso più probabile, rispecchiandone la coerenza semantica
e lessicale.
Sarei curioso di vedere se GPT mantiene la risposta corretta anche a
fronte di un riscontro negativo dell'utente.
Resta la sorpresa di veder emulata una competenza, quella verbale
descrittiva, che noi associamo alla conoscenza.
Qui linguisti, epistemologi e filosofi avranno da riflettere appena si
saranno ripresi dallo shock. Cosa significa 'sapere' se uno dei suoi
indicatori (la competenza descrittiva verbale) può essere emulato da una
macchina?
Ribalterei la tua domanda: cosa differenzia il "sapere" umano da quello
emulabile?
Pragmatismo e idealismo si confronteranno diversamente su questa
domanda, sono curioso di vederne lo sviluppo, ma in ambito tecnico credo
ci siano pochi dubbi che 'sapere' vuol dire 'saper fare'. La macchina
che davvero "sa", oltre che saper descrivere, deve saper fare.
Per cui la risposta si sposta a questa domanda: chiedendo a GPT di
elencare i comandi SQL da dare, faresti copia-incolla? La lasceresti
_fare_?
Metteresti un tuo database nelle sue "mani"?
Ciao,
Alberto
On 22/02/2023 09:39, Damiano Verzulli wrote:
Mi aggancio alla discussione in corso su altri thread sulla natura
statistica/probabilistica di ChatGPT e sulle relative implicazioni
(non puo' "sapere"; non produce "informazione", quindi non può errare;
non ha "conoscenza", etc.).
Da tecnico, rilevo che la "qualita'" delle risposte sia fortemente
determinata dal dominio della domanda. Se chiedi la biografia di Pinco
Pallino da Pennapiedimonte, è un conto. Se chiedi cos'é un "inner
join" è un altro conto. Trovo che la cosa sia molto simile al mio
carattere personale: se alle superiori mi interrogavano su Manzoni...
facevo una fatica bestiale; se mi chiedevano di disegnare una
funzione, era un gioco da ragazzi.
Dico questo, perché ieri parlavo (mentre sfilavamo per il paese, sul
carro di Carnevale) con un amico che mi chiedeva: "Damia'! Ma se ho
una relazione N a M fra 2 tabelle SQL, come posso organizzare il
database?". Ed io gli dicevo: "Nessun problema. Ti serve una terza
tabella, dove infili la relazione fra le due". E ne abbiamo discusso
per qualche minuto (attorniati da coriandoli, musica e tanto altro
"casino").
Stamattina mi ha scritto, copia-incollandomi l'interazione con ChatGPT:
=================
Domanda: "I have a database containing two tables "elementi" and
"proprietari" in elementi i have rows that refers to multiple
proprietari and vice versa, what can be the best way to use reference
keys in this scenarios?"
Risposta: "In a scenario where you have a many-to-many relationship
between the "elementi" and "proprietari" tables, the best way to use
reference keys is to create a third table that acts as a bridge
between the two tables. This is commonly referred to as a junction
table or an associative table.
The junction table should contain foreign keys that reference the
primary keys of the "elementi" and "proprietari" tables. This table
can also contain additional columns that relate to the relationship
between the two tables, such as the date the relationship was
established or the nature of the relationship.
For example, you could create a junction table called
"elementi_proprietari" with columns "id", "elemento_id", and
"proprietario_id". The "id" column would be the primary key of the
junction table, while "elemento_id" and "proprietario_id" would be
foreign keys that reference the "id" column of the "elementi" and
"proprietari" tables, respectively.
In this way, each row in the junction table represents a relationship
between a single "elemento" and a single "proprietario". To represent
relationships between multiple "proprietari" and a single "elemento",
you would simply add additional rows to the junction table with the
same "elemento_id" but different "proprietario_id" values.
By using a junction table, you can easily query and update the
relationships between "elementi" and "proprietari" using standard SQL
commands"
=================
Ai non-tecnici che potrebbero non percepire la qualita' della
risposta, segnalo che non solo è _PERFETTA_, ma la trovo anche
qualitativamente migliore di molte altre spiegazioni che circolano in
aria all'inizio dei corsi universitari sui database relazionali.
Ora io non voglio mettere in dubbio il fatto che ChatGPT risponda
seguendo logiche statistiche o probabilistiche. Voglio solo dire che
per _MOLTI_ ambiti (quelli strettamente piu' "tecnici") si fa
veramente fatica a dire che il suo "output" segua esclusivamente tale
logica o --per tornare ai thread in corso-- che ChatGPT non "sappia"
come implementare una relazione N a M nei contesti dei database
relazionali.
E comunque --qualora si volesse insistere su questo punto [come mi
pare alcuni vogliano fare]-- anche se cosi' fosse... tendenzialmente
al mio amico non gliene frega un granché [perché la risposta alla sua
domanda _TECNICA_, è _PERFETTA_].
Aggiungo --infine-- che pur avendo conseguito una laurea in Scienze
dell'Informazione nel lontano 1995, ho scoperto cosa fosse un
Gerber-File soltanto nel ~2016. Ed è stato soltanto grazie al mio
amico (quello del carro), che ho scoperto l'esistenza della "Saldatura
a TIG" un paio di anni fa e che, a dispetto della pressione, a
temperatura ambiente non è possibile liquefare il metano (il propano
si, invece). Insomma: a 52 anni riesco ancora facilmente ad
"apprendere" cose molto tecniche/specifiche.... Allo stesso tempo
(continuo) a far fatica a metabolizzare la biografia del Manzoni o gli
scritti di Dante.
Mi sorge il dubbio, che anche il mio cervello funzioni --da qualche
parte-- con logiche statistico/probabilistiche.
Un'ultima nota: ho letto piu' volte, in lista, di organizzare forme di
"resistenza" a questo fenomeno. Aldila' del fatto che trovo il termine
"resistenza" non-brillantissimo, nutro fortissimi dubbi che
--perdonatemi la brutalità-- da questa lista, per questo ambito
specifico, possano uscire cose piu' concrete degli Archives della
lista stessa.
Bye,
DV
_______________________________________________
nexa mailing list
nexa@server-nexa.polito.it
https://server-nexa.polito.it/cgi-bin/mailman/listinfo/nexa
_______________________________________________
nexa mailing list
nexa@server-nexa.polito.it
https://server-nexa.polito.it/cgi-bin/mailman/listinfo/nexa