Come StackOverflow si sta adattando di fronte all’IA generativa

Adattamento di StackOverflow all'IA generativa

StackOverflow, la piattaforma più utilizzata dagli sviluppatori software per il supporto alla programmazione, ha attraversato un periodo difficile ultimamente. Nonostante un impressionante 69% di domande risposte, il traffico su StackOverflow è in declino. I dati di Similarweb mostrano una diminuzione del traffico del 14% anno su anno (StackOverflow sostiene che sia più vicino al 5%). Tuttavia, il trend è al ribasso ed è spiegato principalmente dall’emergere di prodotti di codifica AI come ChatGPT e GitHub Copilot. Questi prodotti hanno capacità significative di scrittura del codice e sono quindi in grado di fornire supporto alla programmazione, almeno in parte, tanto quanto fa StackOverflow. Ironicamente, diversi dei grandi modelli linguistici (LLM) dietro questi prodotti di intelligenza artificiale sono stati addestrati utilizzando dati di StackOverflow raccolti illegalmente.

L’azienda ha ricevuto una copertura mediatica piuttosto negativa con questi sviluppi. Business Insider, nel loro articolo “Death by LLM”, ha scritto:

Benvenuti nel futuro di Internet in un mondo di intelligenza artificiale. Comunità online come Stack Overflow e Wikipedia prosperavano come centri di esperti e curiosi che si univano per condividere liberamente informazioni. Ora, questi luoghi di incontro digitali vengono saccheggiati dalle grandi aziende tecnologiche alla ricerca di dati umani per addestrare i loro grandi modelli linguistici.

I nuovi prodotti che emergono da questo boom di IA generativa mettono in dubbio il futuro di questi forum online. I chatbot rispondono in modo chiaro, automatico e spesso piacevole, quindi gli esseri umani non hanno bisogno di interagire con altri esseri umani per ottenere informazioni.

In mezzo a tutta questa attenzione, StackOverflow ha giocato una mano stabile e ha articolato il suo approccio bifronte per affrontare questa sfida:

  1. Qualche settimana fa, hanno annunciato che inizieranno a addebitare ai grandi sviluppatori di intelligenza artificiale che utilizzano le oltre 50 milioni di domande e risposte della piattaforma per l’addestramento dei modelli (abbiamo approfondito questo problema nell’articolo sullo scraping dei dati).
  2. La scorsa settimana, hanno lanciato il prodotto OverflowAI, che è un insieme di funzionalità di intelligenza artificiale generativa effettivamente utili che possono contribuire al loro secondo tempo – ci concentreremo su questo oggi.

In questo articolo, approfondiremo:

  • Gli strumenti di scrittura del codice AI che stanno disturbando StackOverflow.
  • Cosa fa OverflowAI.
  • Tendenze sottostanti della strategia di StackOverflow.

Gli Strumenti di Scrittura del Codice AI che Stanno Disturbando StackOverflow

Oggi ci sono diversi strumenti di scrittura e modifica del codice AI disponibili sul mercato. Questi sono sia prodotti indipendenti (come OpenAI Codex, ChatGPT, Google Bard) che prodotti integrati nativamente all’interno di piattaforme esistenti (come GitHub Copilot, Replit Ghostwriter, Amazon CodeWhisperer). Hanno una vasta gamma di funzionalità, tra cui generazione di codice, modifica del codice, completamento automatico e debug.

I prodotti con distribuzione nativa (come GitHub Copilot) hanno un grande vantaggio perché possono operare in modo trasparente all’interno degli ambienti che i programmatori utilizzano già oggi, e vedremo sempre più prodotti che cercheranno di inserirsi in ambienti esistenti. Ad esempio, CodeGPT ha un plugin che consente agli sviluppatori di utilizzare il prodotto direttamente da Visual Studio Code (uno strumento popolare per la modifica del codice).

Gli strumenti di scrittura del codice AI esistenti sono bravi in alcune attività. Ad esempio, questo thread di Reddit raccoglie feedback da diversi sviluppatori web su GitHub Copilot – il tema dominante è che il prodotto è utile in un sottoinsieme di situazioni in cui gli sviluppatori devono scrivere nuovo codice e non vogliono perdere tempo a scriverlo da zero. Anche per quelle situazioni, a volte funziona e a volte no.

Il motivo non sorprende. Concettualmente, i grandi modelli linguistici (LLM) elaborano una grande quantità di dati e generano output sulla base di questa costruzione: in un determinato contesto, per la domanda che hai posto, qual è la parola/testo più probabile da seguire alla parola precedente? Essenzialmente, calcolano la probabilità che una parola segua un’altra e generano output in base a questo. Nonostante questa costruzione, dati la quantità di dati utilizzata per addestrare questi modelli, i risultati per i casi d’uso più generali di ChatGPT (come redigere una email o riassumere una pagina) sono stati sorprendenti. Ma è importante ricordare che i modelli linguistici, per loro stessa natura, hanno capacità analitiche/matematiche limitate. In altre parole, quando chiedi al modello “Quanto fa 2+2?” potrebbe darti la risposta giusta – non perché sa fare matematica, ma perché ha visto quel pattern di testo nei suoi dati di addestramento.

Allo stesso modo, quando si tratta di generazione di codice, il modello non “conosce” realmente i concetti sottostanti la programmazione, ma prevede i risultati in base al suo addestramento con una grande quantità di dati testuali. La conseguenza di ciò è il feedback su GitHub Copilot di cui sopra – a volte è bravo a generare il codice di base di cui hai bisogno, ma la sua capacità di comprendere effettivamente il codice, fare il debug e fornirti spiegazioni è limitata. Questo migliorerà nel tempo, ma è difficile dire se arriverà mai a un punto di alta precisione e affidabilità.

Il CEO di StackOverflow Prashanth Chandrasekar lo descrive in modo succinto:

Un problema con i moderni sistemi LLM è che forniscono risposte errate con la stessa fiducia delle risposte corrette e “allucinano” fatti e cifre se ritengono che si adattino al modello della risposta cercata dall’utente.

Ad un certo punto, dovrai sapere cosa stai costruendo. Potresti doverlo debuggare e non avere idea di cosa sia stato appena costruito, ed è difficile saltare il percorso di apprendimento prendendo scorciatoie.

Questa è l’opportunità per StackOverflow: la diminuzione del traffico potrebbe essere permanente ed è molto probabile che i programmatori si rivolgano meno spesso a StackOverflow per domande più semplici (ad esempio, potrebbero non visitare più StackOverflow per un algoritmo di ordinamento preconfezionato). Ma dove il prodotto può brillare è: 1) fornire risposte ad alta precisione e affidabilità a domande più complesse che i modelli di linguaggio potrebbero non avere la capacità di rispondere, e 2) fornire risposte a domande su nuove tecnologie/spazi problemi su cui i modelli non hanno avuto dati precedenti su cui allenarsi. OverflowAI è progettato per sfruttare direttamente questa opportunità.

Cosa fa OverflowAI

Ci sono tre aspetti chiave su cui puntano: risposte dirette alle domande, utilizzabilità all’interno degli ambienti di sviluppo e potenziamento delle conoscenze all’interno delle imprese.

OverflowAI Search fornisce risposte dirette agli utenti in un formato Q&A (simile a ChatGPT) ma fornisce anche diversi link a post di StackOverflow effettivi. Oltre ad aiutare a creare fiducia, ciò offre anche agli utenti l’opportunità di approfondire l’argomento quando la risposta fornita dall’IA non risolve completamente il problema dell’utente. Questo trova un equilibrio delicato nel fornire una risposta diretta quando la domanda è semplice, ma guida anche l’utente lungo un percorso più esplorativo per domande difficili.

Overflow AI Search

Se l’utente non è soddisfatto delle risposte, può accedere a una interfaccia simile a una chat per fare domande di approfondimento. Se nessuna delle risposte è soddisfacente, possono chiedere a StackOverflow di formulare una domanda per loro, pronta per essere pubblicata nel forum delle domande e risposte. Questa esperienza risparmia anche agli utenti la situazione spesso frequente in cui la domanda che fanno è già stata risposta in precedenza.

Bozza automatica della domanda

Il prodotto si concentra anche sull’usabilità rendendo tutte queste funzionalità disponibili in Visual Studio Code tramite un’estensione. Ciò aiuta StackOverflow a competere in modo più efficace con gli assistenti di codifica integrati nativamente, consentendo agli sviluppatori di ottenere risposte direttamente dai loro ambienti di sviluppo (anziché dover cambiare contesto e cercare da un browser).

Estensione in Visual Studio Code

Inoltre, per i clienti enterprise, OverflowAI sta creando la possibilità di integrare diverse fonti di informazione all’interno di un’azienda (Q&A interni, pagine wiki, repository di documenti) per fornire un’esperienza Q&A coesa per gli sviluppatori. Poter utilizzare dati interni e StackOverflow, e soprattutto, esporre tutto ciò in un’interfaccia di tipo Q&A, può rappresentare un grande impulso di produttività per le organizzazioni di ingegneria. Intendono anche lanciare un’integrazione con Slack come un’interfaccia senza soluzione di continuità per esporre questa funzionalità.

Ciò che è impressionante nell’approccio al prodotto di OverFlowAI è che prende l’attività principale dell’azienda (risposte alle domande difficili), espone le risposte in un’interfaccia altamente utilizzabile ovunque si trovino gli utenti (che sia su Slack o all’interno degli ambienti di sviluppo) e, a sua volta, crea un ciclo in cui gli utenti possono sfruttare l’IA generativa per inviare nuove domande.

StackOverflow non è esattamente una società pubblica: è di proprietà di Prosus, che a sua volta fa parte di un’azienda di maggiori dimensioni, Naspers, che è quotata in borsa. Pertanto, è difficile ottenere dati di fatturato precisi, ma un rapporto di Prosus pubblicato nel maggio 2022 fornisce alcune informazioni:

  • L’azienda ha generato circa $89 milioni di fatturato nel 2022, suddivisi per il 50-50 tra il prodotto aziendale StackOverflow for Teams e i prodotti Reach (pubblicità e employer branding).
  • Dal 2021 al 2022, il fatturato di StackOverflow for Teams è aumentato del 69% mentre il fatturato dei prodotti Reach è diminuito del 12% (potrebbero essere intervenuti fattori estranei che hanno influenzato il fatturato del 2022, come una lenta assunzione di personale).

Numeri di fatturato del proprietario di StackOverflow Prosus (relativo a maggio 2022).

Questi dati di entrate, combinati con ciò che fa il prodotto OverflowAI, indicano alcune chiare tendenze verso dove si sta dirigendo StackOverflow nel mondo dell’AI generativa (queste tendenze possono essere estese anche ad altre piattaforme di domande e risposte):

  • Il loro business pubblicitario, il cui successo è direttamente legato al traffico, è in declino. Questo non è necessariamente drammatico e indica solo una tendenza più ampia. Probabilmente ci saranno meno visualizzazioni di pagina perché gli utenti otterranno direttamente risposte a domande più semplici (che è una cosa positiva) e quindi la pubblicità diventa una fonte di entrate meno critica.
  • StackOverflow continuerà ad essere una fonte preziosa di risposte per domande difficili e il volume di domande e risposte continuerà a crescere grazie al push di generative AI dell’azienda per la creazione e l’invio automatico di domande. Inoltre, è probabile che se StackOverflow riesce a mantenere il motore di contenuti in funzione, la qualità dei contenuti sulla piattaforma migliorerà, poiché le domande ripetitive/facili non saranno più la maggioranza del contenuto.
  • StackOverflow si concentrerà sul costruire esperienze in cui può offrire il maggior valore agli utenti (come OverflowAI Search e l’estensione Visual Studio Code) e si concentrerà su linee di prodotti in cui i clienti sono disposti a pagare per queste esperienze superiori (ad esempio… StackOverflow for Teams).
  • I programmi di licenza dei dati, in cui addebitano alle aziende di AI per la formazione sui loro dati, si accelereranno.

Tutte le tendenze indicano una direzione in cui StackOverflow sta riuscendo a fare una svolta verso la prossima fase dell’azienda e l’azienda ha fatto gli investimenti giusti nel prodotto/nell’azienda per far fronte a ciò che era una possibile interruzione. Inoltre, hanno anche svolto un servizio comunitario prezioso e hanno tracciato un percorso per altre piattaforme di domande e risposte da sfruttare. Nel complesso, sono ottimista sulla direzione verso cui si stanno dirigendo e che ciò accenderà un ecosistema di contenuti prospero in futuro.