Passa al contenuto principale
Background

Crea un chatbot LLM basato sull'edge

Impara a creare un chatbot LLM con Akamai Functions e l'inferencing basato sulle GPU, quindi distribuiscilo a livello globale.

Riepilogo con indicazione di data e ora

Riepilogo con indicazione di data e ora

[00:00-00:58] Introduzione: Thorsten Hans presenta il tutorial sulla creazione di un'applicazione chatbot basata su LLM sull'Akamai Cloud utilizzando istanze di GPU Linode, Ollama, Spin e Akamai Functions.

[00:58-02:22] Panoramica dell'architettura: spiegazione del diagramma di sistema multilivello, che illustra in dettaglio l'istanza di Linode con una GPU NVIDIA che esegue Ollama e Akamai Functions che ospita l'applicazione Spin (front-end Astro e API TypeScript) con un archivio chiave-valore distribuito.

[02:22-03:30] Spin e i componenti dell'applicazione: panoramica su Spin come sistema CNCF WebAssembly e spiegazione dei due componenti dell'applicazione: il front-end Astro e l'API TypeScript.

[03:30-06:21] Flusso di memorizzazione nella cache e logica delle API: procedura dettagliata su come l'API TypeScript elabora le richieste, interroga l'archivio chiave-valore distribuito per fornire le risposte memorizzate nella cache, applica una costruzione immediata e sistemi di protezione per nuove query e memorizza nella cache le risposte generate.

[06:21-09:03] Configurazione dell'infrastruttura con Terraform: approfondisci la configurazione Terraform, mostrando il provider di Linode, il provisioning delle istanze con le GPU NVIDIA dedicate e la logica di polling del null provider.

[09:03-10:05] Configurazione di firewall e rete: esame della configurazione del firewall Linode in Terraform, che specifica le regole per l'accesso SSH e il traffico API HTTP Ollama sulla porta 11434.

[10:05-12:26] Installazione del driver cloud-init e delle GPU: analisi degli script linode.yaml cloud-init che automatizzano gli aggiornamenti dei pacchetti, l'installazione dei driver delle GPU, i riavvii del sistema e l'inizializzazione del servizio Ollama.

[12:26-14:49] Esecuzione del provisioning di Terraform: esecuzione del comando terraform apply per la creazione dell'infrastruttura cloud, seguita da un rapido avanzamento del processo di provisioning di circa cinque minuti.

[14:49-16:07] File manifest dell'applicazione Spin (spin.toll): esame di spin.toml, con dettagli su trigger HTTP, instradamento dei componenti, variabili di ambiente, accesso all'archivi chiave-valore e autorizzazioni dell'host in uscita.

[16:07-17:53] Implementazione di API e sistemi di protezione: descrizione dettagliata del codice di index.ts, handler.ts e guardrails.ts, che spiega la verifica della richiesta, i limiti di lunghezza degli input (500 caratteri) e la corrispondenza dello schema regex per prevenire gli attacchi di prompt injection.

[17:53-19:30] Cronologia delle sessioni e memorizzazione nella cache dell'archivio chiave-valore: spiegazione del monitoraggio delle sessioni basato sui cookie e dell'implementazione di kvService.ts per il controllo e la restituzione delle risposte alle query memorizzate nella cache dall'archivio chiave-valore.

[19:30-20:54] Invocazione del modello LLM tramite LangChain: esame dettagliato di llaService.ts che mostra l'assemblaggio dei prompt (prompt di sistema, cronologia della sessione, query dell'utente) e l'invocazione dei modelli LLM utilizzando i pacchetti LangChain JS e Ollama.

[20:54-21:38] Dipendenze dei pacchetti: revisione del package.json che mostra le dipendenze di Spin SDK e LangChain necessarie per la creazione dell'applicazione WebAssembly.

[21:38-22:27] Compilazione di WebAssembly: esecuzione di una build di Spin nel terminale per compilare i componenti di front-end e API presenti negli obiettivi .wasm.

[22:27-23:59] Implementazione di Akamai Functions: autenticazione tramite spin aka login ed esecuzione spin aka deploy con variabili ambientali per pubblicare l'applicazione WebAssembly a livello globale.

Condividi