In molte community open source c'è un certo scetticismo sull'uso degli strumenti di IA generativa (gen AI) per offrire contributi o per le attività di sviluppo. Ci sono validi motivi di preoccupazione. Il nostro obiettivo in questo articolo, e nella pratica di Red Hat, è affrontare direttamente queste preoccupazioni, anziché ignorarle. Le nostre risposte non sono solo consigli per i lettori, ma aiutano anche i nostri ingegneri, gran parte dei quali contribuisce a progetti open source.
Condivideremo con te le linee guida che abbiamo definito per gli ingegneri Red Hat, basate sull'uso pratico dei principi open source. Prima, però, vorremmo contestualizzare l'attuale ondata di nuovi strumenti.
Il contesto storico
Negli ultimi 40 anni, abbiamo implementato regolarmente strumenti e processi nuovi e migliorati per lo sviluppo di software. Chi più ne ha più ne metta: compilatori, sistemi di controllo delle versioni, IDE (Integrated Development Environment), macchine virtuali (di entrambi i tipi), istanze cloud, sviluppo agile, container, gestione della configurazione e test automatizzati. Ogni set di strumenti è stato nuovo un tempo e molti di essi hanno suscitato accese discussioni su paternità, qualità e legittimità. In passato, sia i flag del compilatore che il completamento automatico negli IDE erano questioni spinose.
Gli strumenti di sviluppo basati sull'IA non sono diversi. E non dovrebbero esserlo. Nel corso del tempo, scopriremo che gli strumenti di IA migliorano notevolmente le nostre attività di sviluppo in alcune aree e per niente in altre, e l'adozione procederà di conseguenza. Utilizziamo gli strumenti per risolvere i problemi nell'open source e i nuovi strumenti ci aiuteranno a risolvere i vecchi problemi, individuandone al contempo di nuovi.
Se esiste un problema centrale nel mondo dell'open source, può essere espresso come: "Troppi progetti, pochi responsabili della manutenzione". Oggi, chi guida un progetto deve fare più che in passato: rilasci più rapidi, aggiornamenti di sicurezza più veloci, catene della fornitura del software sicure, CI/CD, conformità normativa e gestione dei contributori su larga scala. Queste aspettative non sono sostenibili senza strumenti migliori che aiutino i responsabili della manutenzione a fare di più con meno sforzo. Grazie a un utilizzo responsabile dell'IA, Red Hat è convinta di poter creare la prossima generazione di strumenti per sviluppatori, in modo da affrontare questa sfida.
I principi di adozione dell'IA nell'open source
Affinché i nuovi strumenti offrano vantaggi all'open source, dobbiamo aderire all'etica open source che ha dato vita a Red Hat e al nostro settore. Per questo Red Hat ha sviluppato, per il nostro personale, delle linee guida per un contributo open source basato sull'IA. Le linee guida si basano su tre principi:
- innovare in modo responsabile;
- essere trasparenti;
- rispettare la community.
Innovare in modo responsabile
Indipendentemente dal fatto che utilizzi uno strumento di IA, un IDE, l'output di una sessione di pair programming o qualsiasi altro metodo per produrre codice e documentazione, ogni contributore è pienamente responsabile del proprio contributo. Il singolo contributore è l'elemento umano che garantisce la qualità, la sicurezza e la conformità del contributo. I contributori devono comprendere il codice assistito dall'IA proprio come se lo avessero scritto interamente da soli. Devono anche essere in grado di spiegare cosa fa, come interagisce con il resto del codice nel progetto e perché la modifica è necessaria. Non consideriamo l'IA un sostituto per gli sviluppatori. L'obiettivo è automatizzare le attività più ripetitive, in modo da potersi dedicare alla risoluzione di problemi complessi in modo creativo. Crediamo in un futuro in cui gli sviluppatori saranno più efficienti, non automatizzati.
Il nostro principio di responsabilità umana ridefinisce l'IA come un potente assistente e tutor, non come un sostituto. I nuovi arrivati possono utilizzarlo per comprendere processi complessi e procedure consigliate, concentrandosi sulla logica principale del proprio contributo e commettendo meno errori. I contributori più esperti possono utilizzare nuovi strumenti per eseguire revisioni e test più efficienti e approfonditi. La responsabilità rimane alle persone: gli esperti devono guidare il contributore, non solo il codice, e i meno esperti devono essere responsabili di ciò che inviano e dimostrare la volontà di imparare.
Essere trasparenti
L'apertura promuove la fiducia. Contrassegnare i contributi sostanziali supportati dall'IA, ad esempio con una riga "assisted-by" nel commit, aiuta le community a sviluppare linee guida insieme e consente di eseguire audit in caso di problemi. In questo modo, nel tempo i progetti possono anche imparare quali strumenti di IA sono utili per lo sviluppo del progetto e quali non lo sono.
Inoltre, contrassegnare i contributi aiuta i revisori a valutarli in modo appropriato. I contributi di bassa qualità generati dall'IA rappresentano un problema serio per i progetti. Red Hat continuerà a lavorare su procedure e strumenti che condivideremo con l'intero ecosistema, imparando al contempo come affrontare al meglio queste sfide.
Rispettare la community
Una collaborazione efficace nell'open source si basa sul rispetto delle policy di contribuzione e delle norme sociali stabilite da ogni progetto. La nostra prima responsabilità è comprendere e interagire con il processo scelto dalla community per l'adozione di nuove tecnologie come l'IA, oppure contribuire ad avviare una discussione sulla creazione di un processo di questo tipo, laddove non esista. In altre parole, contribuire alla conversazione, invece di tentare di dettarla.
Sappiamo che alcuni progetti accoglieranno con favore nuovi strumenti, altri li vieteranno e altri ancora adotteranno policy specifiche sulla marcatura e sugli usi accettabili. Red Hat aiuta le community a sviluppare e adottare policy che consentano loro di mantenere i valori, il benessere e gli standard di qualità della community. La considerazione principale è che i progetti devono essere in grado di utilizzare gli strumenti di IA nel modo più adatto alle esigenze.
L’innovazione secondo Red Hat
Il nostro utilizzo dell'automazione basata sull'IA per la gestione dei pacchetti Red Hat Enterprise Linux (RHEL) è un esempio concreto di innovazione responsabile. Come descritto dettagliatamente in questo articolo del blog di Laura Barcziová, la creazione di un sistema di produzione affidabile ha richiesto una profonda attenzione alla responsabilità. Il team di ingegneri ha integrato misure di sicurezza fondamentali, come le modalità di simulazione e il tracciamento dettagliato, in modo che ognuno possa sempre comprendere e controllare le decisioni dell'IA. Questa attenzione alla creazione di affidabilità e all'abilitazione della supervisione umana è fondamentale per un'innovazione responsabile.
Il processo AI-Assisted Contributions Policy del progetto Fedora è un valido esempio di trasparenza e rispetto per la governance della community. Sviluppato attraverso un ampio dibattito pubblico, richiede responsabilità e divulgazione, fungendo da modello con il quale i progetti open source possono creare linee guida per l’IA chiare e pragmatiche.
L'open source è innovazione basata su principi
Red Hat ritiene che l'IA offra straordinarie opportunità per i progetti e i contributori open source. Ci impegniamo a far evolvere il nostro ecosistema in modo da preservare i principi chiave dell'open source. Questo impegno è radicato in una semplice verità: il nostro intero portafoglio di prodotti si basa sull'innovazione che avviene nei progetti open source upstream. L'integrità, la dinamicità e la produttività di queste community di contributori non sono solo una priorità, ma rappresentano il fondamento stesso del nostro successo.
La nostra strategia di prodotto riflette questo impegno: dalla fornitura di una piattaforma IA di livello enterprise con Red Hat AI, all'integrazione delle funzionalità di IA nell'intero portafoglio, fino alla condivisione delle innovazioni dei nostri processi e delle nuove scoperte, che utilizziamo per migliorare la qualità e la sicurezza.
Si tratta di un processo collaborativo e lo stiamo affrontando con trasparenza. Stiamo affrontando problemi di lunga data nell'open source che sono più grandi di Red Hat. Ti invitiamo a unirti a noi in questo percorso, mentre collaboriamo con le community upstream per creare gli strumenti, definire gli standard e plasmare insieme il futuro dello sviluppo software.
Risorsa
L'adattabilità enterprise: predisporsi all'IA per essere pronti a un'innovazione radicale
Sugli autori
Chris Wright is senior vice president and chief technology officer (CTO) at Red Hat. Wright leads the Office of the CTO, which is responsible for incubating emerging technologies and developing forward-looking perspectives on innovations such as artificial intelligence, cloud computing, distributed storage, software defined networking and network functions virtualization, containers, automation and continuous delivery, and distributed ledger.
During his more than 20 years as a software engineer, Wright has worked in the telecommunications industry on high availability and distributed systems, and in the Linux industry on security, virtualization, and networking. He has been a Linux developer for more than 15 years, most of that time spent working deep in the Linux kernel. He is passionate about open source software serving as the foundation for next generation IT systems.
Altri risultati simili a questo
AI optimization: 7 powerful techniques you can use today!
233% 3-year return on investment and 13 months to payback with Red Hat AI
Technically Speaking | Build a production-ready AI toolbox
Technically Speaking | Platform engineering for AI agents
Ricerca per canale
Automazione
Novità sull'automazione IT di tecnologie, team e ambienti
Intelligenza artificiale
Aggiornamenti sulle piattaforme che consentono alle aziende di eseguire carichi di lavoro IA ovunque
Hybrid cloud open source
Scopri come affrontare il futuro in modo più agile grazie al cloud ibrido
Sicurezza
Le ultime novità sulle nostre soluzioni per ridurre i rischi nelle tecnologie e negli ambienti
Edge computing
Aggiornamenti sulle piattaforme che semplificano l'operatività edge
Infrastruttura
Le ultime novità sulla piattaforma Linux aziendale leader a livello mondiale
Applicazioni
Approfondimenti sulle nostre soluzioni alle sfide applicative più difficili
Virtualizzazione
Il futuro della virtualizzazione negli ambienti aziendali per i carichi di lavoro on premise o nel cloud