Skill Factory
Categoria: Home
2.Intelligenza Artificiale: i modelli linguistici di grandi dimensioni (LLM)
Gino Visciano |
Skill Factory - 11/10/2024 20:02:22 | in Home
Fino a qualche tempo fa le macchine potevano svolgere compiti solo se venivano programmate. Oggi il paradigma è cambiato, perché le macchine sono capaci di apprendere e risolvere i problemi da sole, per questo motivo parliamo di "Intelligenza Artificiale".
Le macchine si sono evolute al punto che riescono a comprendere il linguaggio naturale (NLP - Natural Language Processing). Per uno come me che ha iniziato a programmare le macchine negli anni '80 con l'Assembler, un linguaggio artificiale mnemonico, molto simile al linguaggio delle macchine, fatto di lunghe sequenze di numeri 1 e numeri 0, vedere oggi macchine che eseguono comandi o rispondono a domande complesse elaborando il linguaggio naturale rappresenta un passo avanti notevole, impensabile fino a qualche anno fa.
Il settore dell'IA che si occupa dell'apprendimento delle macchine si chiama "Machine Learning". Gli algoritmi di ML permettono alle macchine di apprende grandi quantità di dati, proprio come fanno gli uomini quando studiano.
Un delle aree più avanzata del Machine Learning è quella del Deep Learning, che si occupa dell'apprendimento delle macchine attraverso algoritmi avanzati, anche detti algoritmi di apprendimento profondo, questi modelli sono così evoluti che si comportano come reti neurali artificiali.
Il risultato dei dati raccolti durante la fase di addestramento di una macchina attraverso algoritmi di tipo Deep Learning sono gli LLM (Large Language Model) o modelli linguistici di grandi dimensioni.
Potete immaginare un LLM come un computer super intelligente che ha letto tantissimi libri, articoli e pagine web, grazie a questo è capace di comprendere il linguaggio naturale, rispondere alle domande, tradurre testi in molte lingue, scrivere testi e generare immagini, musica e video.
Attenti a non fare l'errore di credere che gli LLM siano dei database in cui si trovano domande e risposte frequenti, come avviene per le FAQ (Frequently Asked Questions); essi contengono solo le informazioni per creare le risposte, che vengono generate ogni volta dall'inferenza.
COME FUNZIONA L'INFERENZA?
L'inferenza è il processo attraverso cui si utilizzano le conoscenze dell'LLM per rispondere alle domande o risolvere problemi. L'inferenza si basa su algoritmi e modelli matematici che permettono all'LLM di prendere decisioni più probabili.
L'LLM non dà mai una risposta con una certezza assoluta. Le sue risposte sono sempre basate sulla probabilità. Il modello sceglie sempre la sequenza di parole più probabile nel contesto dato. Più dati ha a disposizione, più accurate saranno le risposte, le previsioni o le soluzioni.
Le fasi del processo d'inferenza sono le seguenti:
1) Input: si fornisce all'LLM un input, sotto forma di domanda.
2) Elaborazione: l'LLM analizza l'input, cercando di capire il contesto, il significato e le intenzioni.
3) Generazione: l'LLM utilizza i modelli linguistici che ha appreso durante l'addestramento per generare una risposta o un testo che sia coerente con l'input e con le informazioni che ha a disposizione.
Gli LLM sono strumenti potenti, ma è importante evidenziarne subito i limiti:
- Non pensano come gli umani: gli LLM non capiscono veramente il significato delle parole, ma seguono delle regole che hanno imparato.
- Possono sbagliare: a volte gli LLM possono dare risposte sbagliate o senza senso, soprattutto se le domande sono molto complesse. In questo caso parliamo di allucinazioni.
- Dipendono dai dati: le risposte degli LLM vengono create in base ai dati con cui sono stati addestrati; quindi, potrebbero evidenziare dei pregiudizi che dipendono dal tipo d'informazioni acquisite durante l'apprendimento. Naturalmente questo fenomeno, chiamato BIAS, può creare delle implicazioni etiche.
COME VENGONO ADDESTRATI GLI LLM
L'addestramento degli LLM è un processo complesso, che richiede tempo e una notevole quantità di risorse.
L'addestramento può essere: supervisionato, non supervisionato e per rinforzo.

Nel caso degli LLM:
Addestramento supervisionato: utilizziamo enormi quantità di testo, dove ogni frase o paragrafo è etichettato con un'informazione specifica (es: traduzione, risposta a una domanda). Il modello impara a generare testo simile a quello di esempio.
Addestramento non supervisionato: forniamo al modello grandi quantità di testo senza etichette. Il modello impara a prevedere la parola successiva in una frase, a completare frasi o a tradurre testi, identificando le relazioni tra le parole e le frasi.
Apprendimento per rinforzo: il modello viene addestrato a svolgere un compito specifico (es: giocare a scacchi) e riceve un feedback positivo o negativo in base ai risultati ottenuti.
Il primo passo per addestrare un LLM è la raccolta dei dati che vengono puliti, formattati e pre-elaborati per rimuovere errori, incoerenze e informazioni non pertinenti.
I testi raccolti da internet, libri, articoli, codice e altre fonti, vengono divisi in unità più piccole chiamate token, che possono essere parole, sotto-parole o caratteri speciali.
A ogni token viene assegnato a un numero unico, creando una rappresentazione numerica del testo.
Gli LLM si basano su algoritmi avanzati o modelli, che si comportano come reti neurali artificiali, in particolare quelle chiamate "trasformatori", che sono particolarmente adatte a gestire sequenze di dati come il testo.
La potenza di un modello dipende dal numero di parametri che ha disposizione. I parametri sono numeri che vengono prodotti durante la fase di addestramento. Maggiore è il numero di parametri di un modello, migliori sono le capacità di fare previsioni o prendere decisioni. Il ruolo dei parametri, che si possono immaginare come nodi della rete neurale artificiale, è quello di mettere in relazione tra loro il maggior numero di neuroni in base ad una logica basata sul calcolo della probabilità della conoscenza.
Dovete immaginare i parametri o nodi come a delle piccole unità di calcolo (funzioni matematiche). Quando ricevono degli input (dati in ingresso), li elaborano secondo una certa funzione e producono un output (un risultato). Insieme, i nodi formano una rete complessa che permette all'algoritmo di apprendere e fare previsioni.

Tipi di nodi:
Nodi di input: sono i primi nodi della rete, quelli che ricevono i dati grezzi.
Nodi nascosti: si trovano negli strati intermedi della rete e svolgono la maggior parte del lavoro di elaborazione dei dati.
Nodi di output: sono gli ultimi nodi della rete, quelli che forniscono il risultato finale.
Come funzionano i nodi?
Ricezione degli input: ogni nodo riceve un segnale da altri nodi o dall'esterno della rete.
Calcolo: Il nodo applica una funzione matematica (funzione di attivazione) ai dati in ingresso, generando un risultato.
Trasmissione dell'output: il risultato viene trasmesso ai nodi successivi della rete.
L'organizzazione dei parametri di un modello, attraverso algoritmi di ottimizzazione, viene aggiornata continuamente in modo iterativo con l'obbiettivo di ridurre al minimo la differenza tra previsioni del modello e le risposte corrette. Per misura la differenza tra previsioni del modello e le risposte corrette, si usa una funzione matematica chiamata funzione di perdita.
L'addestramento richiede un'enorme potenza di calcolo, spesso utilizzando cluster di GPU o TPU.

Letteralmente, cluster, significa “computazione a grappolo”: un gruppo di computer collegati in rete tra loro che lavorano in parallelo utilizzando processori potentissimi e veloci specializzati nella gestione delle immagini come le GPU (Graphics Processing Unit) oppure le TPU (Tensor Processing Unit) unità di elaborazione progettate da Google specializzate nelle operazioni di Machine Learning. Sono ottimizzate per eseguire operazioni sui tensori: strutture dati multidimensionali fondamentali per le reti neurali artificiali.

Dopo l'addestramento iniziale, il modello può essere ulteriormente addestrato su dataset più piccoli e specifici per migliorare le sue prestazioni su compiti particolari, come la generazione di codice, la traduzione o la risposta a domande, questa operazione di chiama "Fine-tuning".
PRINCIPALI LLM A CONFRONTO
|
Anno |
Nome LLM |
Parametri |
Tipo rete neurale |
Scopo principale |
Licenza |
Azienda/Organizzazione |
|
2023 |
GPT-4 |
>100 miliardi |
Transformer |
Generazione di testo, comprensione, traduzione, ecc. |
Proprietario |
OpenAI |
|
2023 |
PaLM 2 |
Varianti |
Transformer |
Generazione di testo, comprensione, traduzione, coding |
Proprietario |
Google AI |
|
2023 |
LLaMA |
7B - 65B |
Transformer |
Ricerca, creazione di contenuti |
Non-commerciale |
Meta AI |
|
2022 |
T5 |
Varianti |
Transformer |
Molteplici compiti NLP |
Open-source |
Google AI |
|
2020 |
GPT-3 |
175 miliardi |
Transformer |
Generazione di testo |
Proprietario |
OpenAI |
|
2020 |
BART |
Varianti |
Transformer |
Generazione di testo, riassunto, traduzione |
Open-source |
Facebook AI Research |
|
2019 |
RoBERTa |
Varianti |
Transformer |
Comprensione del linguaggio naturale |
Open-source |
Facebook AI Research |
|
2018 |
BERT |
340 milioni |
Transformer |
Comprensione del linguaggio naturale |
Open-source |
Google AI |
COSA SONO I PROMPT?
I prompt sono lo strumento che ci permette di interagire con gli LLM e di sfruttarne al meglio le potenzialità. Sono il ponte tra le nostre richieste e la capacità dell'LLM di generare testi complessi e informativi. È come una chiave che ci permette di aprire le porte della creatività e dell'innovazione. Più siamo abili nel formulare i prompt, più saremo in grado di sfruttare tutto il potenziale di questi modelli linguistici.
La capacità di formulare prompt è così importante che in futuro, con la diffusione dell'Intelligenza Artificiale, la figura del creatore di prompt sarà sempre più richiesta. Il creatore di prompt non è semplicemente colui che fa domande, ma un vero e proprio ingegnere della comunicazione che, attraverso la formulazione di istruzioni precise e creative, è in grado di sfruttare al massimo le potenzialità degli LLM.
il creatore di prompt è una figura che, oltre alle sue competenze linguistiche e creative, si avvale di una serie di strumenti e tecniche per ottimizzare il processo di creazione dei prompt e ottenere i migliori risultati possibili dagli LLM.
Approfondirò sicuramente l'argomento dei creatori di prompt in uno dei miei prossimi articoli, perché è un argomento molto interessante.
CONCLUSIONI
Gli LLM sono sistemi informatici, chiamati modelli, che attraverso algoritmi di apprendimento profondo si addestrano su enormi quantità di dati.
Le informazioni raccolte vengono organizzate in uno spazio vettoriale e collegate tra loro attraverso l'uso di parametri, anche detti nodi, che utilizzano funzioni matematiche per creare una fitta rete di percorsi usati dall'inferenza per creare le risposte o le soluzioni più probabili alle domande o alle richieste formulate dai prompt.
Dopo l'addestramento gli LLM, possono essere ulteriormente specializzati attraverso una fase di fine tuning, che prevede l'apprendimento di un dataset di dati più dettagliato.
La qualità dei dati durante la fase di addestramento degli LLM è importante per evitare il problema dei pregiudizi o Bias. Un DATASET per essere di valore deve contenere una grande quantità di dati, sempre aggiornati velocemente, provenienti da fonti eterogenee e contesti differenti e le informazioni devono essere affidabili, utili e senza fake.

Gli LLM sono utilissimi nell'ambito scientifico, del lavoro, dell'educazione e dell'intrattenimento; i chatbot e assistenti virtuali sono solo la punta dell'iceberg.
Nel prossimo articolo vi parlerò di reti neurali artificiali, per capire che cosa sono e cosa ci permettono di fare.
1.Intelligenza Artificiale: se la conosci non la temi
3.Intelligenza Artificiale: le reti neurali artificiali
4.Intelligenza Artificiale: tipi di reti neurali artificiali
5.Intelligenza Artificiale: IA Generativa
6.Intelligenza Artificiale: modelli pre-addestrati di IA locali
7.Intelligenza Artificiale: come creare una chatbot per conversare con Llama3
8.Intelligenza Artificiale: come addestrare LLAMA3 attraverso un Fine-Tuning di tipo no coding
9.Intelligenza Artificiale: cosa dobbiamo sapere su ai act e deepfake
10.Intelligenza Artificiale: Cosa cambia nel mondo del lavoro
1.Intelligenza Artificiale: se la conosci non la temi
Gino Visciano |
Skill Factory - 23/09/2024 08:33:01 | in Home
La storia ci ha abituati alle rivoluzioni tecnologiche, ovvero quei cambiamenti che coinvolgono tutti modificando radicalmente le nostre abitudini e i nostri comportamenti, basta fare l'esempio del telefono, della radio, della TV, del personal computer, di Internet, dei cellulari e del cloud.
Oggi stiamo vivendo la rivoluzione dell'Intelligenza Artificiale; che sia tale si capisce dal fatto che ne parlano tutti e chi non la conosce la teme.
Come le rivoluzioni precedenti, anche questa era inevitabile; il progresso è scritto nel nostro DNA e non si può fermare!
Il progresso da sempre ci ha permesso di aumentare le nostre capacità; attraverso la tecnologia muoviamo e alziamo masse enormi, ci spostiamo velocemente sulla terra, sull'acqua e nell'aria, fino a raggiungere lo spazio estremo, comunichiamo a distanza, osserviamo sia lo spazio infinito, sia i corpi infinitesimali, elaboriamo e memorizziamo enormi quantità di dati e oggi con l'Intelligenza Artificiale abbiamo aumentato anche le nostre capacità intellettuali, come ad esempio: l'apprendimento, la risoluzione di problemi, prendere decisioni, svolgere compiti, sintetizzare argomenti e creare testi, immagini e video.
Il precursore dell'idea d'Intelligenza Artificiale fu il matematico Alan Turing che, in un articolo del 1950, per la prima volta parlò di macchine intelligenti.

Nell'articolo Turing descriveva il modo per testare se una macchina era intelligente. Secondo il test una macchina (A) poteva essere considerata intelligente se il suo comportamento, osservato da un essere umano (C), fosse considerato indistinguibile da quello di una persona (B):

Il termine intelligenza artificiale (IA) è stato coniato per la prima volata nel 1955 da John McCarthy.
Nel 1956, McCarthy e altri scienziati organizzarono la conferenza “Dartmouth Summer Research Project on Artificial Intelligence”; questo evento ha dato origine alla scienza dei dati (data since).
L'idea di macchina intelligente (IA) si è potuta concretizzare solo oggi grazie ai seguenti fattori:
1) quasi tutti i dati che produciamo sono in forma digitale;
2) attraverso il cloud riusciamo a memorizzare enormi quantità di dati;
3) grazie alle GPU (Graphics Processing Unit - Unità di Elaborazione Grafica), è aumentata la potenza di calcolo;
4) l'esperienza ci ha permesso di creare algoritmi capaci di imitare il comportamento dei neuroni.
L'Intelligenza Artificiale attuale è molto lontana da quello che si racconta nei romanzi o nei film di fantascienza e non è quello che vogliono farci credere alcuni divulgatori scientifici o esperti dell'argomento; quindi, per ora, non dobbiamo temerla, anzi, al contrario penso che sia estremamente utile per tutti.
Per comprendere il progresso e le sfide attuali nell'ambito dell'Intelligenza Artificiale, è importante comprendere la differenza tra: IA Debole e IA Forte.
L'IA debole è progettata per eseguire compiti specifici e predefiniti, come:
- il riconoscimento del linguaggio naturale
- la classificazione delle immagini
- la previsione dei dati
- la generazione di testi, immagini e video
Un esempio di IA debole sono gli assistenti virtuali come Siri, Cortana o Alexa: essi possono rispondere alle domande degli utenti e compiere una serie di funzioni, ma non hanno nessuna consapevolezza di sé e non capiscono veramente ciò di cui si sta parlando.

Le macchine che riescono a fare queste cose, anche se sembrano “intelligenti”, non comprendono realmente quello che fanno e non hanno nessuna percezione del mondo o del contesto in cui stanno operando.
L'IA forte, anche conosciuta come Intelligenza Artificiale Generale (AGI - Artificial General Intelligence), rimane ancora largamente teorica e non esiste concretamente al momento. Essa dovrebbe essere in grado di eseguire qualsiasi compito intellettuale che un essere umano può fare e di avere una forma di autoconsapevolezza e comprensione del mondo.

Al momento l'IA forte resta ancora un obiettivo a lungo termine per la comunità scientifica.
Oggi gli strumenti di IA più evoluti sono gli LLM (Large Language Model - Modello linguistico di grandi dimensioni), algoritmi molto avanzati capaci di riconoscere il linguaggio naturale (NLP - Natural Language Processing) e le immagini.
Gli LLM vengono usati dai chatbot:
Chat: conversazione
Bot: robot (programma informatico)
oppure dagli assistenti AI come Siri, Cortana o Alexa per rispondere alle domande poste dagli utenti che li usano. Questi programmi nonostante sembrano intelligenti, rientrano nell'ambito dell'intelligenza artificiale debole.
Gli attuali chatbot, attraverso gli LLM, oltre a riconoscere il linguaggio naturale, riescono anche a comprendere il contenuto delle immagini e a generare testi, immagini e video di fantasia; per questo motivo parliamo anche di intelligenza artificiale generativa.
I modelli linguistici più avanzati, sono di tipo GPT (Generative Pretrained Transformer - Trasformatore Generativo Preaddestrato); utilizzano algoritmi di apprendimento profondo (Deep Learning), per generare risposte simili a quelle umane all'interno di un discorso.
I chatbot AI e gli assistenti AI più diffusi sono: ChatGPT, Zendesk, Gemini, Copilot, Claude, Perplexity AI, Jasper Chat.

Nel prossimo articolo approfondirò l'argomento degli LLM.
2.Intelligenza Artificiale: i modelli linguistici di grandi dimensioni (LLM)
3.Intelligenza Artificiale: le reti neurali artificiali
4.Intelligenza Artificiale: tipi di reti neurali artificiali
5.Intelligenza Artificiale: IA Generativa
6.Intelligenza Artificiale: modelli pre-addestrati di IA locali
7.Intelligenza Artificiale: come creare una chatbot per conversare con Llama3
8.Intelligenza Artificiale: come addestrare LLAMA3 attraverso un Fine-Tuning di tipo no coding
9.Intelligenza Artificiale: cosa dobbiamo sapere su ai act e deepfake
10.Intelligenza Artificiale: Cosa cambia nel mondo del lavoro
1.Sei uno studente oppure un lavoratore? Scopri qual è il tuo livello di EQF.
Gino Visciano |
Skill Factory - 06/03/2024 23:15:13 | in Home
La formazione può essere formale, non formale e informale.
L'apprendimento formale segue regole e piani predefiniti, come avviene a scuola o attraverso i percorsi di formazione professionale, questo tipo di formazione è riconosciuto e può essere verificato e certificato.
L'apprendimento non formale è quello che avviene attraverso le esperienze formative personali o aziendali, fatte per approfondire le conoscenze e le abilità in uno specifico ambito di competenze e che servono per favorire la propria crescita professionale. Questo tipo di formazione è molto importante, ma può essere certificata da attestati oppure qualifiche non riconosciti dal sistema di formazione formale.
L'apprendimento informale avviene attraverso le esperienze risultanti dalle attività della vita quotidiana legate al lavoro, alla famiglia, al tempo libero. Questo tipo di formazione, pur essendo fondamentale per la vita di ogni cittadino, non può essere certificato, ma deve essere dimostrato attraverso la capacità di sapere e saper fare.
In Europa, prima del 2008, ogni nazione utilizzava un proprio sistema di formazione e qualifica. Con l'obiettivo di favorire la mobilità dei cittadini, le pari opportunità e un adeguato livello di formazione permanente, è stato istituito nel 2008 è aggiornato nel 2017 l'EQF.
L'EQF (European Qualifications Framework) è il Quadro Europeo delle Qualifiche, nasce allo scopo di comparare il livello d'istruzione e il livello di qualifica professionale degli studenti e dei lavoratori di tutta l'Europa.
Il Centro europeo per lo sviluppo della formazione professionale (Cedefop) e la Fondazione europea per la formazione (ETF), in quanto agenzie europee, svolgono un ruolo importante nel sostenere l'attuazione dell'EQF.
In Italia l'EQF è conosciuto come quadro nazionale delle qualificazioni (QNQ), rappresenta il dispositivo nazionale che favorisce le attività per rendere comparabili i livelli di studio e le qualifiche professionali degli studenti e dei lavoratori italiani, con quelli delle altre nazioni europee.
In linea con il quadro europeo delle qualifiche (EQF) , il QNQ si sviluppa su tre dimensioni:
1) conoscenze
2) abilita'
3) autonomia e responsabilita'.
Attraverso queste tre dimensioni si può descrivere il tipo di competenza che bisogna avere per raggiungere uno degli 8 livelli di qualificazione EQF, dove il livello 1 è il più basso e l'8 è il più alto.
Il QNQ è stato istituito nel 2013 dal MINISTERO DEL LAVORO E DELLE POLITICHE SOCIALI di concerto con il MINISTERO DELL'ISTRUZIONE, DELL'UNIVERSITA' E DELLA RICERCA.
Il Quadro nazionale delle qualificazioni è lo strumento che descrive e classifica le qualifiche rilasciate nell'ambito del Sistema nazionale di certificazione delle competenze.
Per leggere gli articoli del decreto pubblicati sulla "Gazzetta Ufficiale", clicca qui.
Per avere una mappa dettagliata del lavoro e delle qualificazioni, del nostro Sistema nazionale di certificazione delle competenze, puoi consultare l'ATLANTE DEL LAVORO E DELLE QUALIFICAZIONI.
L'Atlante nasce dal lavoro di ricerca condotto dall'INAPP (Istituto Nazionale Per l'Analisi delle Politiche Pubbliche), con la partecipazione di diversi soggetti istituzionali, delle parti datoriali e sindacali, delle rappresentanze bilaterali, delle associazioni professionali, degli esperti settoriali e degli stakeholder del sistema lavoro-learning.
Per accedere all'ATLANTE DEL LAVORO E DELLE QUALIFICAZIONI, clicca qui.
La tabella seguente mostra la corrispondenze tra i livelli EQF e i titoli di studio che si possono coseguire in Italia:
Livello EQF | Tipologia di qualificazione
1 Diploma di licenza conclusiva del I ciclo di istruzione
2 Certificazione delle competenze di base acquisite in esito all'assolvimento dell'obbligo di istruzione
3 Attestato di qualifica di operatore professionale
4 Diploma professionale di tecnico, Diploma liceale, Diploma di istruzione tecnica, Diploma di istruzione professionale, Certificato di specializzazione tecnica superiore
5 Diploma di tecnico superiore
6 Laurea, Diploma Accademico di I livello
7 Laurea Magistrale, Diploma Accademico di II livello, Master universitario di I livello, Diploma Accademico di specializzazione (I), Diploma di perfezionamento o master (I)
8 Dottorato di ricerca, Diploma accademico di formazione alla ricerca, Diploma di specializzazione, Master universitario di II livello, Diploma Accademico di specializzazione (II), Diploma di perfezionamento o master (II)
Utilizzando la tabella seguente, puoi individuare il livello EQF che corrisponde al tuo profilo professionale in base al livello di conoscenza, abilità, autonomia e responsabilità raggiunto:

Approfondimenti:
6.L'Assicurazione della Qualità nell'IFP.
5.L'Etica della formazione come responsabilità professionale.
4 Buona Formazione: "Come assicurare la qualità della formazione".
3.La qualità della formazione inizia dal confronto.
2.La filiera della Formazione Professionale in Europa e in Italia.

Per informazioni e contatti: www.skillfactory.it
Il 2024 è un anno bisestile. In programmazione come facciamo a capire se un anno è secolare e bisestile?
Gino Visciano |
Skill Factory - 02/03/2024 12:20:59 | in Home
Il 2024 è un anno bisestile, perché febbraio è di 29 giorni. Questo significa che il 2024 durerà 366 giorni e non 365 giorni come accade per gli anni non bisestili.
Nel calendario Gregoriano è bisestile un anno ogni 4, questa correzione è necessaria perché astronomicamente un anno solare dura circa 365,25 giorni.
Se non tenessimo conto di questa variazione, ogni 4 anni si accumulerebbe un ritardo di un giorno. I continui ritardi accumulati nel tempo, modificherebbero le date delle stagioni che corrispondono agli equinozi di primavera e autunno e i solstizi d'estate e inverno, spostandole in avanti nel tempo.

Gli anni secolari, ovvero quelli divisibili per 100, sono bisestili se oltre ad essere divisibili per 100 sono divisibili anche per 400. Quindi un anno è sicuramente bisestile se è divisibile per 400.
Ad esempio il 1600 è bisestile perché è divisibile per 400, mentre il 1700 non è bisestile perché non è divisibile per 400.
Gli anni non secolari sono bisestili solo se sono divisibili per 4.
Quindi, un programmatore, per verificare se un anno è bisestile, deve prima controllare se è secolare, in caso affermativo deve anche vedere se è divisibile per 400. Se l'anno non è secolare, per essere bisestile deve essere divisibile per 4.
Il programma Python seguente, ci permette di verificare se un anno è secolare e bisestile:
# Verifica se l'anno è bisestile
# Funzione
def tipo_anno():
try:
messaggio="L'anno "+str(v_anno.get())+" "
if v_anno.get()%100==0:
messaggio=messaggio+"è secolare e "
if v_anno.get()%400==0:
messaggio=messaggio+"bisestile."
else:
messaggio=messaggio+"non è bisestile."
else:
messaggio=messaggio+"non è secolare e "
if v_anno.get()%4==0:
messaggio=messaggio+"bisestile."
else:
messaggio=messaggio+"non è bisestile."
tk.messagebox.showinfo(title='Informazioni', message=messaggio)
except:
messaggio="Inserisci l'anno da verificare"
tk.messagebox.showinfo(title='Errore', message=messaggio)
def reset():
v_anno.set("")
# Programma
import tkinter as tk
from tkinter.messagebox import showinfo
root=tk.Tk()
root.geometry('350x100+150+150')
root.resizable(False, False)
root.title('Verifica anno secolare e bisestile')
v_anno=tk.IntVar(root,"")
lbl_anno=tk.Label(root,text="Inserisci l'anno per verificare se è secolare e bisestile").pack(pady=5)
txt_anno=tk.Entry(root, justify="right",textvariable=v_anno).pack(pady=5)
frm_button=tk.Frame(root)
btn_verifica=tk.Button(frm_button,text="VERIFICA",command=tipo_anno).pack(side=tk.LEFT)
btn_reset=tk.Button(frm_button,text="RESET",command=reset).pack(side=tk.RIGHT)
frm_button.pack()
root.mainloop()
Se sei interessato ad approfondire questo argomento, clicca qui, per imparare a creare un calendario perpetuo con Python.
I primi 8 studenti della Skill Factory, dopo tanto impegno, finalmente hanno ottenuto la certificazione SFA-2022
Gino Visciano |
Skill Factory - 05/05/2022 16:48:32 | in Home
Finalmente, dopo tanto impegno, i primi 8 studenti del 2022, che hanno frequentato la nostra scuola, hanno raggiunto il loro obiettivo: ottenere la certificazione SFA "Java Developer".

Il percorso di accompagnamento al lavoro è durato circa 3 mesi, il tempo necessario per svolgere le seguenti fasi:
1) Colloquio di ammissione;
2) Assessment;
3) Alfabetizzazione;
4) Orientamento;
5) Specializzazione;
6) Certificazione delle competenze.

Il prossimo passo sarà quello di svolgere un tirocinio retribuito di 6 mesi, presso uno dei nostri JOB PARTNER IT che ne farà richiesta.
La certificazione Skill Factory Associate (SFA), non è un semplice attestato di fine corso, ma viene rilasciata solo agli studenti che dimostrano di aver acquisito tutte le competenze necessarie per poter svolgere il proprio ruolo professionale autonomamente in azienda, obiettivo che si raggiunge solo attraverso tante ore d'aula, con docenti esperti e tante ore di laboratorio, dove si simulano reali attività aziendali, progettate con la collaborazione dei nostri JOB PARTNER IT.

Per ottenere la certificazione SFA gli studenti della Skill Factory devono:
1) aver partecipato ad almeno l'80% delle attività d'aula e di laboratorio previste dal percorso di accompagnamento al lavoro;
2) essere idonei al lavoro di gruppo;
3) dimostrare di avere una buona capacità di comunicazione;
4) superare il colloquio tecnico finale;
5) svolgere correttamente la prova pratica di laboratorio.

I percorsi di accompagnamento al lavoro della nostra scuola sono gratuiti e ti danno l'opportunità in solo tre mesi di acquisire tutte le competenze che ti servono per lavorare in un'azienda IT.
Per partecipare al prossimo percorso di accompagnamento al lavoro in partenza presso la nostra scuola Skill Factory clicca qui e compila il modulo di richiesta per il colloquio di ammissione.
Per maggiori informazioni usa i nostri riferimenti nella sezione contatti del sito.

Le Tue Aule
I Tuoi Gruppi
Le Tue Selezioni



Scheda Azienda
