* Claudio Curci  /  Php developer

8. Lezione: gli strumenti per AI


Entrare nel mondo degli strumenti AI significa scoprire una gamma di strumenti talmente vasta da essere disumana, vale a dire fuori dalla portata di un essere umano che ha bisogno di un certo tempo per installare, lavorare e valutare.

Tre tipi di strumenti

I provider di modelli
Si tratta di strumenti che forniscono modelli già pronti, da interrogare via API. Tra questi avrete sicuramente sentito parlare di OpenAI, Anthropic, Mistral API, nonché dello stesso Google con Gemini.

Repository di modelli
Qui abbiamo modelli scaricabili ed eseguibili localmente, disponibili ad esempio sulla piattaforma Hugging Face. Ottimi per chi vuole disporre di un modello “in casa” o, più semplicemente, studiare e sperimentare localmente.

Orchestratori
Ovvero strumenti che gestiscono la serie di operazioni che abbiamo visto nelle lezioni precedenti, come modelli, embedding, retrieval, database ecc.
Tra questi abbiamo LangChain e LlamaIndex.

Vediamo ora un “hello world” di questi tre strumenti.

Interrogare i servizi di OpenAI

Ecco un esempio di interrogazione di OpenAi con Python:

                from openai import OpenAI

                client = OpenAI()

                response = client.responses.create(
                model="gpt-4o-mini",
                input="Devi preparare un pranzo per 4 persone a base di verdure. 
                Ipotizza un menù con un antipasto, un primo piatto, 
                un secondo e un contorno."
                )

                print(response.output_text)
            
Ovviamente dietro ci sarà una configurazione base con le chiavi per accedere a OpenAI e un account collegato, al quale verranno addebitati i costi.
Nulla vi vieta di interagire con OpenAI o altri servizi simili usando altri linguaggi di programmazione; anzi, se lo scopo è semplicemente quello di interagire con le API, potete usare il linguaggio che volete. Io, ad esempio, per gestire PDF di fatture mi collego abitualmente alle API di Anthropic con PHP.

A cosa servono i repository di modelli?

Per quanto riguarda Hugging Face, è una piattaforma che raccoglie modelli, dataset e strumenti. Potremmo definirla una sorta di GitHub per l’AI, anche se offre molte più risorse rispetto al solo codice. Qui possiamo trovare il nostro vaso di Pandora, ma dovremo fare i conti con i relativi costi di apprendimento, testing e manutenzione. È un discorso che chi lavora nell’open source conosce da sempre: tonnellate di codice libero, ma anche tanta complessità da gestire.
Hugging Face è nota anche per la sua libreria di transformer NLP. I transformer analizzano le relazioni tra gli elementi di una sequenza attraverso meccanismi di attention e sono alla base di modelli come GPT o BERT. Da qui si evince il grande ruolo di Hugging Face nell’attuale scenario dell’intelligenza artificiale.

Gli orchestratori: tanto lavoro pronto, ma...

Ed eccoci a LangChain, uno degli strumenti più discussi in ambito AI. È un framework che consente di collegare facilmente modelli, prompt, database, sistemi di retrieval e tool.
Grazie a questa libreria, che possiamo importare facilmente in Python, possiamo usufruire di template per i prompt, memoria conversazionale, ponti di collegamento a modelli AI, agenti che orchestrano automaticamente una sequenza di operazioni… molto più di una semplice cassetta degli attrezzi.
Ora, come tutte le pseudo-automazioni informatiche, ha i suoi pro (velocità di utilizzo, semplificazione di processi complessi) e i suoi contro (gestione delle prestazioni, complessità a volte superflua e spropositata per progetti di piccole dimensioni).
Non esiste solo LangChain: abbiamo anche framework e utility come LiteLLM, Instructor e LlamaIndex (ottimo per sistemi RAG).

Lo scenario è variegato e, come detto all’inizio, “dis-umano”. Ogni giorno arrivano nuovi strumenti: la differenza sta nell’utilizzo cosciente e limitato. Altrimenti si rischia di vedere, in ambito AI, quello che si vede ogni giorno nel mondo dei CMS, con siti pieni di plugin installati per fare cose che, codice alla mano, richiederebbero poche righe. Che pochi, però, sanno scrivere.

Dal 1997, il Php a Roma!

Claudio Curci
Da quasi trent'anni mi dedico alla programmazione, con oltre 20 anni di esperienza come freelance. Credo in un approccio al lavoro in cui la competenza si sposa con la serenità, dove le urgenze sono vizi, non virtù. Mi impegno a supportare i clienti con risposte chiare e soluzioni concrete, evitando inutili tecnicismi. "La vera efficienza si trova nella serenità." – Henry David Thoreau
Infocurci Questo sito non utilizza cookie, non mostra nessuna pubblicità e non profila nulla. Navigate serenamente, siete i benvenuti.

Ambienti / piattaforme di sviluppo

Amazon Booking.com CodeIgniter Joomla Magento Moodle Kelkoo Kigo PayPal Symfony Wordpress Airbnb FormaLms Laravel Prestashop Shopify Whatsapp