I siti Web e le app possono avere varie parti mobili tra cui creativi, elaborazione del server frontale, elaborazione del server, API e archiviazione dei dati. AI può collegare uno qualsiasi di questi componenti.
Sul front-end, è possibile collegare comandi vocali, interfacce di chatbot o elementi creativi WebGL reattivi. Nella parte posteriore, i database utilizzano algoritmi intelligenti per massimizzare la velocità e l'analisi. Le API possono fornire uno strato di astrazione da una vasta gamma di funzioni AI, dalle previsioni alla formazione collettiva.
Se stai appena iniziando come sviluppatore e hai bisogno di alcuni puntatori, scoprilo Come fare un'app , o possiamo aiutarti a scegliere quale Builder del sito web , web hosting Servizio e deposito cloud. usare.
La lavorazione del linguaggio naturale (NLP) si concentra sulle interazioni tra macchine e lingue umane. È l'obiettivo di NLP di elaborare e analizzare i vasti quantità di dati linguistici per migliorare la comunicazione naturale tra umani e macchine. Questo campo di AI include il riconoscimento vocale, la comprensione del linguaggio e la generazione di linguaggio naturale. La nostra attenzione sarà la comprensione della lingua naturale, il processo di analisi e determinare il significato o l'intento di un testo.
Ci sono diversi concetti comuni a NLP:
Esistono numerosi approcci tecnici per analizzare e elaborare i dati. Indipendentemente dal quale lo strumento NLP usi, dovrai affrontare i passaggi comuni dell'analisi e dell'analisi. In genere il testo è separato in blocchi logici. Questi blocchi sono analizzati contro dati formati o basi di conoscenza e valori assegnati, solitamente comprendenti da 0,0 a 1,0 per riflettere il livello di fiducia nell'analisi.
Useremo la nuova API del linguaggio naturale sviluppato da Google per questo tutorial. Ci sono numerose API disponibili ma Google ha alcuni bei vantaggi, incluso il cloud computing, la velocità, una base utente incredibilmente grande e l'apprendimento automatico della macchina. I motori e gli strumenti di ricerca di Google hanno utilizzato AI per anni. Quindi stai sfruttando tutto quell'esperienza e imparando usando i suoi servizi di fronte al pubblico.
API incorpora facilmente in qualsiasi progetto. Ciò consente di risparmiare un sacco di tempo rispetto alla codifica a mano la propria NLP. La sua API riposante astratta ti consente di integrarsi con quasi tutte le lingue che desideri attraverso chiamate di riccioli comuni o uno dei numerosi SDK disponibili. Ci sono alcuni trucchi da allestire ma ci lavoreremo attraverso un passo alla volta.
Clicca sull'icona in alto a destra dell'immagine per ingrandirlo.
Vacillare Console di piattaforma cloud di Google e creare un nuovo progetto o seleziona uno esistente con cui lavorare. Il servizio è gratuito da utilizzare fino ad iniziare a fare un grande volume di richieste API. Potrebbe essere necessario associare informazioni sulla fatturazione con l'account quando attivi l'API, ma questo non è caricato a basso volume e puoi rimuovere i servizi dopo aver effettuato il test se lo desideri.
Sfoglia a Biblioteca API. e selezionare l'API NL. Una volta abilitato, dovresti vedere un piccolo controllo verde e il messaggio 'API abilitato "accanto ad esso.
Dovrai configurare a Account di servizio per questo servizio. Dal momento che organizzeremo l'utilizzo come un servizio tipico, questa è la migliore pratica. Funziona anche meglio con il flusso di autenticazione.
Una volta che hai un progetto con l'API abilitato e un account di servizio è possibile scaricare la tua chiave privata come file JSON. Prendi nota della posizione del file, in modo da poterlo utilizzare nei passaggi successivi.
Se hai problemi con i primi passi c'è una guida Qui Questo aiuta, che finisce con il download della chiave JSON.
Quindi, è necessario impostare il Google_application_credentials. Variabile ambientale, quindi è possibile accedere alle nostre chiamate API. Questo punta al tuo file JSON che hai appena scaricato e ti salva dover digitare il percorso ogni volta. Apri una nuova finestra del terminale e usa il comando Esporta come:
export GOOGLE_APPLICATION_CREDENTIALS="/Users/username/Downloads/[file name].json"
Sostituisci il [nome del file] Con il tuo file chiave privato e usa il percorso del tuo file.
Su Windows puoi fare la stessa cosa tramite la riga di comando, come questa:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\[FILE_NAME].json"
Nota: se si chiude il terminale o la finestra della console, potrebbe essere necessario eseguirlo di nuovo per impostare la variabile.
Ora sei pronto a scavare nell'utilizzo dell'API e vedere NLP in azione. Utilizzerai il ricciolo per fare test rapidi dell'API. Puoi anche utilizzare questo metodo dal tuo codice.
Le richieste di ricerche possono essere apportate nella maggior parte delle lingue, il che significa che è possibile effettuare le chiamate direttamente nella riga di comando o assegnare il risultato a una variabile nella lingua a scelta. Guarda qui Per alcuni suggerimenti rapidi sull'uso del ricciolo.
Proviamo una richiesta di prova, con una frase semplice. Lo correremo attraverso il Analizzatrici Endpoint.
Nell'interfaccia del terminale o della riga di comando, immettere il seguente comando:
Curl -x post \
-H "Autorizzazione: Portatore" $ (GCloud Auth Application-Default Stampa-Access-token) \
-H "Content-Type: Application / JSON; CHARSET = UTF-8" \
--Data "{
'documento':{
'Tipo': 'Plain_Text',
"Contenuto": "John McCarthy è uno dei padri fondatori dell'intelligenza artificiale".
},
'Encodictype': 'utf8'
} "" https://language.googleapis.com/v1/documents:analyzeenties"
Dovresti vedere un risultato JSON dopo l'esecuzione. Potresti essere richiesto la prima volta che usi questo per attivare l'API o consentire l'accesso. Puoi rispondere a "Sì" o "Y" a quel momento e dovrebbe restituire il JSON dopo quello.
Restituirà una serie di voci, simili a quelle come questa prima per la voce "John McCarthy".
{
"Nome": "John McCarthy",
"Tipo": "Persona",
"Metadati": {
"Wikipedia_url": "https://en.wikipedia.org/wiki/john_mccarthy_(computer_scientist)",
"Mid": "/ m / 01svfj"
},
"Salience": 0.40979216,
"Menzioni": [
{
"testo": {
"Contenuto": "John McCarthy",
"Begin BeGiaffset": 0
},
"Tipo": "corretto"
}
]
},
Nota: È possibile utilizzare un URL invece di testo di contenuto nel parametro Contenuto dell'istruzione CURL.
Puoi vedere nell'elenco delle entità campione, il nome identificato e il. genere , che l'AI determinato è a PERSONA . Ha anche trovato una partita di wikipedia per il nome e restituito questo. Questo può essere utile, dal momento che potresti usare quell'URL come contenuto per una seconda richiesta all'API e ottenere ancora più entità e informazioni su questo. Puoi anche vedere il rilevanza Valore a 0.4, che indica un'importanza relativa significativa dell'entità nel contesto del testo che abbiamo fornito. Puoi anche vedere che è correttamente identificato come Corretto , che si riferisce al tipo di sostantivo (un nome corretto), oltre a quanti occorrenze (menzioni) dell'entità nel testo.
L'API restituirà i valori per tutte le enti chiave nel testo che invii. Questo da solo può essere estremamente utile per l'elaborazione di ciò che un utente potrebbe comunicare alla tua app. Indipendentemente da ciò che la frase contenuta, c'è una buona possibilità che si tratta della persona, John McCarthy, e potremmo cercare alcune informazioni per l'utente basato su questo da solo. Potremmo anche rispondere in un modo che riflette la nostra comprensione questa affermazione si riferisce a una persona.
Puoi continuare a utilizzare questo metodo per testare le chiamate che useremo. Puoi anche configurare SDK locale in una lingua che preferisci e integer nella tua app.
È ora di creare una semplice app basata sul Web per dimostrare come integrare l'API in progetti.
Per le app NLP è comune utilizzare Python o Nodo. Per mostrare la versatilità di usare le API, useremo lo SDK PHP. Se desideri modificare il codice in una lingua diversa c'è una grande risorsa di SDKS Qui .
Inizia assicurandoti di avere una cartella di progetto impostata sul tuo server locale o remoto. Se non lo hai già, ottieni compositore e installare alla cartella del progetto. Potresti avere compositore già installato a livello globale e anche questo va bene.
Eseguire il seguente comando compositore per installare i file del fornitore sul tuo progetto:
PHP -R "Copia ('https://getcompositor.org/installer', 'compositore-setup.php');
php -r "se (hash_file ( 'sha384', 'compositore setup.php') === '93b54496392c06277467 0ac18b134c3b3a95e5a5e5 c8f1a9f115f203b75bf9a129d5 daa8ba6a13e2cc8a1da080 6388a8') {echo 'installatore certificati';} else {echo 'installatore corrotta'; unlink (' compositore-setup.php ');} echo php_eol; "
Compositore PHP-Setup.php
PHP -R "scollegante ('compositore-setup.php');"
PHP Composer.Phar richiede Google / cloud-Language
Composer crea una cartella del fornitore nella cartella del progetto e installa tutte le dipendenze per te.
Se si è bloccato l'impostazione di questo e vuoi usare PHP, puoi controllare questa risorsa Installazione del compositore .
Se stai seguendo insieme in PHP, crea un nuovo file PHP nella cartella del progetto. Impostalo Comunque tu ti piace ma includi un semplice modulo HTML per inviare rapidamente il testo.
Ecco un file PHP di esempio con il modulo:
& lt ;! DOCTYPE HTML & GT;
& lt; html & gt;
& lt; head & gt;
& lt; Titolo & GT; NET - Tutorial NLP & LT; / Titolo & GT;
& lt; / head & gt;
& lt; corpo e GT;
& lt; Form & GT;
& lt; P & GT; & Lt; Input Type = 'Text' ID = "Content" Nome = "Content" segnaposto = "Cosa posso analizzare?" / & gt; & lt; / P & GT;
& lt; P & GT; & lt; Input Type = 'Invia' Nome = 'Invia' ID = 'Invia' Value = 'Analyze' & GT; & Lt; / P & GT;
& lt; / Form & GT;
& lt; div class = "Risultati" e GT;
& lt;? php
// codice PHP va qui //
Se (vuoto ($ _ ricevi ["contenuto"])) {die (); }
$ content = $ _Get ["contenuto"];
? & GT;
& lt; / div & gt;
& lt; / corpo e GT;
& lt; / html & gt;
Il codice include un file HTML di base con un modulo, insieme a un segnaposto per il tuo codice PHP. Il codice inizia semplicemente controllando l'esistenza della variabile di contenuto (presentato dal modulo). Se non è ancora presentato, esce e non fa nulla.
Simile al passo che abbiamo fatto in precedenza quando si utilizza la chiamata Curl della riga di comando, abbiamo bisogno di impostare il Google_application_credentials. variabile. Questo è essenziale per ottenerlo per autenticare.
In PHP usiamo il putenv. comando per impostare una variabile di ambiente. L'autenticazione creata dall'SDK scade, quindi è necessario includere questo nel tuo codice per afferrarlo e impostalo ogni volta.
Aggiungi questo codice Avanti nel tuo codice PHP:
PUTENV ('Google_Application_Credentials = / Users / RichardMattka / Download / Tutorial NLP 1-1027228343dc.json');
Sostituisci il percorso e il nome del file come hai fatto prima con il tuo.
Quindi, aggiungi la biblioteca e inizializzare il Languageclient. classe nel tuo codice. Aggiungi questo codice accanto alla tua sezione codice PHP:
richiedono __dir__. '/vendor/autoload.php';
Usa Google \ cloud \ Language \ LanguageClient;
$ projectid = 'nlp-tutorial-1-1543506531329';
$ lingua = nuovo languageclient ([
'ProjectID' = & GT; $ ProjectId.
]);
Inizia richiedendo il vendolo Autoload. Questo è simile a Python o in nodo se hai bisogno delle tue dipendenze. Importa il. Languageclient. Quindi, per fare uso della classe. Definisci il tuo. ProjectId. . Se non sei sicuro di cosa sia questo, puoi cercarlo nella tua console GCP, in cui hai impostato il progetto in origine. Infine, crea un nuovo Languageclient. oggetto usando il tuo. ProjectId. e assegnalo al $ Lingua variabile.
Ora sei pronto per iniziare a utilizzare l'API NLP nel tuo codice. È possibile inviare il contenuto dal modulo all'API e ottenere il risultato. Per ora visualizzerai il risultato come JSON sullo schermo. In pratica è possibile valutare i risultati e utilizzarli in qualsiasi modo che desideri. È possibile rispondere all'utente in base ai risultati, cercare ulteriori informazioni o compiti eseguiti.
Per la ricapazione, l'analisi dell'entità restituirà informazioni sulla "cosa" o le "cose" trovate nel testo.
$ Risultato = $ Language- & GT; Analyzeenties ($ content);
foreach ($ risultati- & gt; entità () come $ e) {
echo "& lt; div class = 'risultato' & gt;";
$ Risultato = json_code ($ e, json_pretty_print);
Echo $ Risultato;
echo "& lt; / div & gt;";
}
Questo codice invia il contenuto dal modulo inviato al Analizzatrici endpoint e memorizza il risultato nel $ Risultato variabile. Allora, è restituito l'elenco delle entità $ Risultato- & GT; Entità () . Per renderlo un po 'più leggibile, è possibile formattarlo come JSON prima di emettere sullo schermo. Di nuovo, questo è solo un esempio per mostrarti come usarlo. Potresti elaborarlo e reagire ai risultati però è necessario.
Invece di conoscere il "cosa" del contenuto, può anche essere prezioso conoscere il sentimento. Come si sente l'utente? Come si sentono per le entità nelle loro comunicazioni?
Aggiorna il codice per utilizzare il AnalizzantiSentimenti. Endpoint. Ciò valuterà sia le entità come prima, ma restituiranno anche un punteggio di sentimento per ciascuno.
$ Risultato = $ Language- & GT; AnalyzeentySentiment ($ content);
foreach ($ risultati- & gt; entità () come $ e) {
echo "& lt; div class = 'risultato' & gt;";
$ Risultato = json_code ($ e, json_pretty_print);
Echo $ Risultato;
echo "& lt; / div & gt;";
}
Test con il contenuto tramite il modulo, "Star Wars è il miglior film di tutti i tempi", vedrai un risultato simile a questo:
{"Nome": "Star Wars", "Tipo": "Work_of_Art", "Metadata": {"Mid": "\ / m \ / 06mmr", "wikipedia_url": "https: \ / \ / en.wikipedia.org \ / wiki \ / star_wars "}," Salience ": 0.63493526," Menzioni ": [{" Testo ": {" Content ":" Star Wars "," Begin Begin Big Bevers ": 0}," Tipo ": 0} : "Corretto", "sentimento": {"grandezza": 0.6, "Punteggio": 0.6}}], "Sentiment": {"Magnitudo": 0.6, "Punteggio": 0.6}}
{"Nome": "Movie", "Tipo": "Work_of_Art", "Metadata": [], "Salienience": 0.36506474, "Menzioni": [{"Testo": {"Content": "Movie", " Begin Begin BeGioffset ": 22}," Tipo ":" Comune "," Sentiment ": {" Magnitudo ": 0.9," Punteggio ": 0.9}}]," Sentiment ": {" Magnitudo ": 0.9," Punteggio ": 0.9 }}
Questo mostra un punteggio di sentimento positivo di valore significativo. Non solo ora conosci le parole chiave che l'utente sta comunicando ma anche come ci sentono. La tua app può rispondere in modo appropriato in base a questi dati. Hai una chiara identificazione di "Star Wars" come soggetto primario con alta salienza. Hai un collegamento Wikipedia per prendere più informazioni se vuoi eseguire quell'URL attraverso la stessa chiamata API. Sapevi anche che l'utente si senta positivo a riguardo. Puoi anche vedere che la dichiarazione pesa il sentimento positivo sulla qualità di esso come film. Molto bello
Prova a sperimentare con altri endpoint. Nello specifico, controlla il Analysyntax. e ClassifyText. endpoint. Questi ti danno ancora più parti di dati vocali e classificazione delle entità del contenuto.
Questo articolo è stato originariamente pubblicato in questione 315 di netto , la rivista best-seller del mondo per web designer e sviluppatori. Comprare il problema 315 qui o Iscriviti qui .
Articoli Correlati:
Quando concepti creature in Zbrush, presentando la tua idea come grigi, inesorabile pezzo di 3D Art. può rendere ..
In questo tutorial, ti mostreremo come creare un pezzo di 3D Art. caratterizzato da un effetto di testo tridimensi..
Quando ho passato per la prima volta da un flusso di lavoro tradizionale a un'illustrazione digitale, il mio tecnic..
L'acquerello è un mezzo incredibile che, con il diritto tecniche d'arte. può essere usato per realizzare le imma..
Layout per il web è sempre stato limitato, non è mai stato nulla di veramente dedicato a rendere il contenuto facile da visuali..
Il punto forte di Houdini è sempre stato la sua natura procedurale. Con alcuni nodi e un piccolo set di espressioni, è possibil..
Non importa il tuo uso finale, la maggior parte delle scene centrata su una struttura artificiale beneficerà di un tocco di fogl..
In questo tutorial, ti mostrerò come dipingere le rune mistiche che sembrano brillare. La mia formula per la pittura delle cose ..