Logo Zephyrnet

Esplorazione dello streaming in tempo reale per applicazioni di intelligenza artificiale generativa | Servizi Web di Amazon

Data:

I Foundation Model (FM) sono modelli di machine learning (ML) di grandi dimensioni addestrati su un ampio spettro di set di dati generalizzati e senza etichetta. I FM, come suggerisce il nome, forniscono le basi per costruire applicazioni downstream più specializzate e sono unici nella loro adattabilità. Possono eseguire un'ampia gamma di attività diverse, come l'elaborazione del linguaggio naturale, la classificazione delle immagini, la previsione delle tendenze, l'analisi del sentiment e la risposta alle domande. Questa scala e l’adattabilità generale sono ciò che rende i FM diversi dai tradizionali modelli ML. I FM sono multimodali; funzionano con diversi tipi di dati come testo, video, audio e immagini. I modelli linguistici di grandi dimensioni (LLM) sono un tipo di FM e sono pre-addestrati su grandi quantità di dati di testo e in genere hanno usi applicativi come la generazione di testo, chatbot intelligenti o riepilogo.

Lo streaming di dati facilita il flusso costante di informazioni diverse e aggiornate, migliorando la capacità dei modelli di adattarsi e generare output più accurati e contestualmente rilevanti. Questa integrazione dinamica dei dati in streaming consente IA generativa applicazioni per rispondere prontamente alle mutevoli condizioni, migliorando la loro adattabilità e le prestazioni complessive in vari compiti.

Per capirlo meglio, immagina un chatbot che aiuti i viaggiatori a prenotare il loro viaggio. In questo scenario, il chatbot necessita di accesso in tempo reale all’inventario della compagnia aerea, allo stato dei voli, all’inventario degli hotel, alle ultime variazioni di prezzo e altro ancora. Questi dati provengono solitamente da terze parti e gli sviluppatori devono trovare un modo per importarli ed elaborare le modifiche ai dati man mano che si verificano.

L'elaborazione batch non è la soluzione migliore in questo scenario. Quando i dati cambiano rapidamente, l'elaborazione in batch può comportare l'utilizzo di dati obsoleti da parte del chatbot, fornendo informazioni imprecise al cliente, con un impatto sull'esperienza complessiva del cliente. L'elaborazione del flusso, tuttavia, può consentire al chatbot di accedere ai dati in tempo reale e di adattarsi ai cambiamenti di disponibilità e prezzo, fornendo la migliore guida al cliente e migliorando l'esperienza del cliente.

Un altro esempio è una soluzione di osservabilità e monitoraggio basata sull’intelligenza artificiale in cui i FM monitorano i parametri interni in tempo reale di un sistema e producono avvisi. Quando il modello rileva un'anomalia o un valore metrico anomalo, dovrebbe immediatamente produrre un avviso e avvisare l'operatore. Tuttavia, il valore di dati così importanti diminuisce significativamente nel tempo. Idealmente, queste notifiche dovrebbero essere ricevute entro pochi secondi o addirittura mentre stanno accadendo. Se gli operatori ricevono queste notifiche pochi minuti o ore dopo che sono avvenute, tale informazione non è utilizzabile e ha potenzialmente perso il suo valore. Puoi trovare casi d'uso simili in altri settori come la vendita al dettaglio, la produzione automobilistica, l'energia e il settore finanziario.

In questo post, discutiamo del motivo per cui lo streaming di dati è una componente cruciale delle applicazioni di intelligenza artificiale generativa a causa della sua natura in tempo reale. Discutiamo del valore dei servizi di streaming di dati AWS come Streaming gestito da Amazon per Apache Kafka (Amazzonia MSK), Flussi di dati di Amazon Kinesis, Servizio gestito da Amazon per Apache Flinke Firehose dati Amazon Kinesis nella creazione di applicazioni di intelligenza artificiale generativa.

Apprendimento contestuale

Gli LLM vengono addestrati con dati point-in-time e non hanno la capacità intrinseca di accedere a nuovi dati al momento dell'inferenza. Man mano che vengono visualizzati nuovi dati, sarà necessario perfezionare o addestrare ulteriormente il modello. Questa non è solo un'operazione costosa, ma anche molto limitante nella pratica perché la velocità di generazione di nuovi dati supera di gran lunga la velocità di messa a punto. Inoltre, gli LLM mancano di comprensione contestuale e si affidano esclusivamente ai dati di addestramento e sono quindi inclini alle allucinazioni. Ciò significa che possono generare una risposta fluida, coerente e sintatticamente corretta ma sostanzialmente errata. Sono inoltre privi di rilevanza, personalizzazione e contesto.

Gli LLM, tuttavia, hanno la capacità di apprendere dai dati che ricevono dal contesto per rispondere in modo più accurato senza modificare i pesi del modello. Questo è chiamato apprendimento contestualee può essere utilizzato per produrre risposte personalizzate o fornire una risposta accurata nel contesto delle politiche dell'organizzazione.

Ad esempio, in un chatbot, gli eventi di dati potrebbero riguardare un inventario di voli e hotel o variazioni di prezzo che vengono costantemente inseriti in un motore di archiviazione di streaming. Inoltre, gli eventi dei dati vengono filtrati, arricchiti e trasformati in un formato consumabile utilizzando un processore di flusso. Il risultato viene reso disponibile all'applicazione interrogando lo snapshot più recente. Lo snapshot viene aggiornato costantemente tramite l'elaborazione del flusso; pertanto, i dati aggiornati vengono forniti nel contesto di una richiesta utente al modello. Ciò consente al modello di adattarsi agli ultimi cambiamenti di prezzo e disponibilità. Il diagramma seguente illustra un flusso di lavoro di base per l'apprendimento in contesto.

Un approccio di apprendimento in contesto comunemente utilizzato consiste nell'utilizzare una tecnica chiamata Retrieval Augmented Generation (RAG). In RAG, fornisci le informazioni rilevanti come la politica più rilevante e i record dei clienti insieme alla domanda dell'utente al prompt. In questo modo, LLM genera una risposta alla domanda dell'utente utilizzando informazioni aggiuntive fornite come contesto. Per ulteriori informazioni su RAG, fare riferimento a Risposta alle domande utilizzando Retrieval Augmented Generation con modelli di base in Amazon SageMaker JumpStart.

Un'applicazione di intelligenza artificiale generativa basata su RAG può produrre solo risposte generiche basate sui dati di addestramento e sui documenti pertinenti nella base di conoscenza. Questa soluzione non è sufficiente quando si prevede una risposta personalizzata quasi in tempo reale dall'applicazione. Ad esempio, ci si aspetta che un chatbot di viaggio consideri le prenotazioni attuali dell'utente, l'inventario disponibile di hotel e voli e altro ancora. Inoltre, i dati personali rilevanti del cliente (comunemente noti come profilo cliente unificato) è solitamente soggetto a modifiche. Se viene utilizzato un processo batch per aggiornare il database dei profili utente dell'IA generativa, il cliente potrebbe ricevere risposte insoddisfacenti basate su vecchi dati.

In questo post, discutiamo dell'applicazione dell'elaborazione del flusso per migliorare una soluzione RAG utilizzata per creare agenti di risposta alle domande con contesto dall'accesso in tempo reale a profili cliente unificati e base di conoscenza organizzativa.

Aggiornamenti del profilo cliente quasi in tempo reale

I record dei clienti vengono generalmente distribuiti negli archivi dati all'interno di un'organizzazione. Affinché la tua applicazione di intelligenza artificiale generativa possa fornire un profilo cliente pertinente, accurato e aggiornato, è fondamentale creare pipeline di dati in streaming in grado di eseguire la risoluzione dell'identità e l'aggregazione dei profili negli archivi dati distribuiti. I processi di streaming inseriscono costantemente nuovi dati per sincronizzarli tra i sistemi e possono eseguire arricchimenti, trasformazioni, unioni e aggregazioni in finestre temporali in modo più efficiente. Gli eventi Change Data Capture (CDC) contengono informazioni sul record di origine, sugli aggiornamenti e sui metadati come ora, origine, classificazione (inserimento, aggiornamento o eliminazione) e l'iniziatore della modifica.

Il diagramma seguente illustra un flusso di lavoro di esempio per l'inserimento e l'elaborazione dello streaming CDC per i profili cliente unificati.

In questa sezione verranno discussi i componenti principali di un modello di streaming CDC necessario per supportare le applicazioni di intelligenza artificiale generativa basate su RAG.

Ingestione di streaming CDC

Un replicatore CDC è un processo che raccoglie le modifiche ai dati da un sistema di origine (solitamente leggendo i log delle transazioni o i binlog) e scrive gli eventi CDC con lo stesso identico ordine in cui si sono verificati in un flusso di dati o in un argomento in streaming. Ciò comporta un'acquisizione basata su log con strumenti come Servizio di migrazione del database AWS (AWS DMS) o connettori open source come Debezium per Apache Kafka connect. Apache Kafka Connect fa parte dell'ambiente Apache Kafka e consente l'acquisizione di dati da varie origini e la consegna a diverse destinazioni. Puoi eseguire il tuo connettore Apache Kafka Amazon MSK Connect in pochi minuti senza preoccuparsi della configurazione, dell'impostazione e del funzionamento di un cluster Apache Kafka. Devi solo caricare il codice compilato del tuo connettore su Servizio di archiviazione semplice Amazon (Amazon S3) e configura il connettore con la configurazione specifica del tuo carico di lavoro.

Esistono anche altri metodi per acquisire le modifiche ai dati. Per esempio, Amazon DynamoDB fornisce una funzionalità per lo streaming dei dati CDC Stream di Amazon DynamoDB o Kinesis Data Streams. Amazon S3 fornisce un trigger per richiamare un file AWS Lambda funzione quando viene memorizzato un nuovo documento.

Archiviazione in streaming

L'archiviazione in streaming funziona come buffer intermedio per archiviare gli eventi CDC prima che vengano elaborati. L'archiviazione in streaming fornisce un'archiviazione affidabile per i dati in streaming. In base alla progettazione, è altamente disponibile e resiliente ai guasti dell'hardware o del nodo e mantiene l'ordine degli eventi così come vengono scritti. L'archiviazione in streaming può archiviare eventi di dati in modo permanente o per un determinato periodo di tempo. Ciò consente ai processori di flusso di leggere da una parte del flusso in caso di errore o necessità di rielaborazione. Kinesis Data Streams è un servizio di dati in streaming serverless che semplifica l'acquisizione, l'elaborazione e l'archiviazione dei flussi di dati su larga scala. Amazon MSK è un servizio completamente gestito, altamente disponibile e sicuro fornito da AWS per l'esecuzione di Apache Kafka.

Elaborazione del flusso

I sistemi di elaborazione del flusso dovrebbero essere progettati per il parallelismo per gestire un elevato throughput di dati. Dovrebbero partizionare il flusso di input tra più attività in esecuzione su più nodi di calcolo. Le attività dovrebbero essere in grado di inviare il risultato di un'operazione a quella successiva sulla rete, rendendo possibile l'elaborazione dei dati in parallelo durante l'esecuzione di operazioni come join, filtraggio, arricchimento e aggregazioni. Le applicazioni di elaborazione del flusso dovrebbero essere in grado di elaborare eventi in relazione all'ora dell'evento per i casi d'uso in cui gli eventi potrebbero arrivare in ritardo o il calcolo corretto si basa sull'ora in cui si verificano gli eventi anziché sull'ora del sistema. Per ulteriori informazioni, fare riferimento a Nozioni di tempo: tempo dell'evento e tempo dell'elaborazione.

I processi di flusso producono continuamente risultati sotto forma di eventi di dati che devono essere inviati a un sistema di destinazione. Un sistema di destinazione potrebbe essere qualsiasi sistema in grado di integrarsi direttamente con il processo o tramite archiviazione in streaming come intermediario. A seconda del framework scelto per l'elaborazione del flusso, avrai diverse opzioni per i sistemi di destinazione a seconda dei connettori sink disponibili. Se decidi di scrivere i risultati su un archivio di streaming intermedio, puoi creare un processo separato che legga gli eventi e applichi le modifiche al sistema di destinazione, ad esempio eseguendo un connettore sink Apache Kafka. Indipendentemente dall'opzione scelta, i dati CDC necessitano di una gestione aggiuntiva a causa della loro natura. Poiché gli eventi CDC trasportano informazioni sugli aggiornamenti o sulle eliminazioni, è importante che si uniscano nel sistema di destinazione nell'ordine corretto. Se le modifiche vengono applicate nell'ordine sbagliato, il sistema di destinazione non sarà sincronizzato con la sua origine.

Apache Flink è un potente framework di elaborazione del flusso noto per la sua bassa latenza e capacità di throughput elevato. Supporta l'elaborazione del tempo degli eventi, la semantica di elaborazione esattamente una volta e un'elevata tolleranza agli errori. Inoltre, fornisce supporto nativo per i dati CDC tramite una struttura speciale chiamata tabelle dinamiche. Le tabelle dinamiche imitano le tabelle del database di origine e forniscono una rappresentazione a colonne dei dati in streaming. I dati nelle tabelle dinamiche cambiano con ogni evento elaborato. È possibile aggiungere, aggiornare o eliminare nuovi record in qualsiasi momento. Le tabelle dinamiche astraggono la logica aggiuntiva che devi implementare per ciascuna operazione di record (inserimento, aggiornamento, eliminazione) separatamente. Per ulteriori informazioni, fare riferimento a Tabelle dinamiche.

Con Servizio gestito da Amazon per Apache Flink, puoi eseguire processi Apache Flink e integrarli con altri servizi AWS. Non ci sono server e cluster da gestire e non c'è alcuna infrastruttura di elaborazione e archiviazione da configurare.

Colla AWS è un servizio di estrazione, trasformazione e caricamento (ETL) completamente gestito, il che significa che AWS gestisce il provisioning, il dimensionamento e la manutenzione dell'infrastruttura per te. Sebbene sia noto principalmente per le sue funzionalità ETL, AWS Glue può essere utilizzato anche per applicazioni di streaming Spark. AWS Glue può interagire con servizi di dati in streaming come Kinesis Data Streams e Amazon MSK per l'elaborazione e la trasformazione dei dati CDC. AWS Glue può anche integrarsi perfettamente con altri servizi AWS come Lambda, Funzioni AWS Stepe DynamoDB, fornendoti un ecosistema completo per la creazione e la gestione di pipeline di elaborazione dati.

Profilo cliente unificato

Superare l’unificazione del profilo cliente tra una varietà di sistemi di origine richiede lo sviluppo di solide pipeline di dati. Sono necessarie pipeline di dati in grado di portare e sincronizzare tutti i record in un unico archivio dati. Questo archivio dati fornisce alla tua organizzazione la visualizzazione olistica dei record dei clienti necessaria per l'efficienza operativa delle applicazioni di intelligenza artificiale generativa basate su RAG. Per creare un archivio dati di questo tipo, la soluzione migliore sarebbe un archivio dati non strutturato.

Un grafico di identità è una struttura utile per creare un profilo cliente unificato perché consolida e integra i dati dei clienti provenienti da varie fonti, garantisce l'accuratezza e la deduplicazione dei dati, offre aggiornamenti in tempo reale, collega approfondimenti tra sistemi, consente la personalizzazione, migliora l'esperienza del cliente e supporta la conformità normativa. Questo profilo cliente unificato consente all’applicazione di intelligenza artificiale generativa di comprendere e interagire con i clienti in modo efficace e di aderire alle normative sulla privacy dei dati, migliorando in definitiva l’esperienza del cliente e favorendo la crescita del business. Puoi creare la tua soluzione di grafico dell'identità utilizzando Amazon Nettuno, un servizio di database a grafo veloce, affidabile e completamente gestito.

AWS fornisce alcune altre offerte di servizi di archiviazione NoSQL gestiti e serverless per oggetti chiave-valore non strutturati. AmazonDocumentDB (con compatibilità MongoDB) è un'azienda veloce, scalabile, altamente disponibile e completamente gestita banca dati dei documenti servizio che supporta carichi di lavoro JSON nativi. DynamoDB è un servizio di database NoSQL completamente gestito che fornisce prestazioni veloci e prevedibili con scalabilità perfetta.

Aggiornamenti della knowledge base organizzativa quasi in tempo reale

Analogamente ai record dei clienti, gli archivi di conoscenze interne come le politiche aziendali e i documenti organizzativi sono suddivisi in silos nei sistemi di archiviazione. Si tratta in genere di dati non strutturati e vengono aggiornati in modo non incrementale. L'uso di dati non strutturati per le applicazioni di intelligenza artificiale è efficace utilizzando gli incorporamenti di vettori, che è una tecnica per rappresentare dati ad alta dimensione come file di testo, immagini e file audio come numerici multidimensionali.

AWS ne fornisce diversi servizi del motore vettoriale, come Amazon OpenSearch senza server, Amazon Kendrae Edizione compatibile con Amazon Aurora PostgreSQL con l'estensione pgvector per memorizzare incorporamenti di vettori. Le applicazioni di intelligenza artificiale generativa possono migliorare l'esperienza dell'utente trasformando il prompt dell'utente in un vettore e utilizzarlo per interrogare il motore vettoriale per recuperare informazioni contestualmente rilevanti. Sia il prompt che i dati vettoriali recuperati vengono poi passati al LLM per ricevere una risposta più precisa e personalizzata.

Il diagramma seguente illustra un esempio di flusso di lavoro di elaborazione del flusso per gli incorporamenti di vettori.

I contenuti della knowledge base devono essere convertiti in incorporamenti vettoriali prima di essere scritti nell'archivio dati vettoriali. Roccia Amazzonica or Amazon Sage Maker può aiutarti ad accedere al modello che preferisci ed esporre un endpoint privato per questa conversione. Inoltre, puoi utilizzare librerie come LangChain per l'integrazione con questi endpoint. La creazione di un processo batch può aiutarti a convertire il contenuto della knowledge base in dati vettoriali e a memorizzarlo inizialmente in un database vettoriale. Tuttavia, è necessario fare affidamento su un intervallo per rielaborare i documenti per sincronizzare il database vettoriale con le modifiche al contenuto della knowledge base. Con un numero elevato di documenti, questo processo può essere inefficiente. Tra questi intervalli, gli utenti della tua applicazione di intelligenza artificiale generativa riceveranno risposte in base al vecchio contenuto o riceveranno una risposta imprecisa perché il nuovo contenuto non è ancora vettorizzato.

L'elaborazione del flusso è una soluzione ideale per queste sfide. Inizialmente produce eventi in base ai documenti esistenti e monitora ulteriormente il sistema di origine e crea un evento di modifica del documento non appena si verificano. Questi eventi possono essere archiviati nell'archivio di streaming e attendono di essere elaborati da un processo di streaming. Un processo di streaming legge questi eventi, carica il contenuto del documento e trasforma il contenuto in una serie di token di parole correlati. Ogni token si trasforma ulteriormente in dati vettoriali tramite una chiamata API a un FM incorporante. I risultati vengono inviati per l'archiviazione all'archivio vettoriale tramite un operatore sink.

Se utilizzi Amazon S3 per archiviare i tuoi documenti, puoi creare un'architettura di origine eventi basata sui trigger di modifica degli oggetti S3 per Lambda. Una funzione Lambda può creare un evento nel formato desiderato e scriverlo nel tuo spazio di archiviazione in streaming.

Puoi anche utilizzare Apache Flink per l'esecuzione come processo di streaming. Apache Flink fornisce il connettore sorgente FileSystem nativo, che può rilevare i file esistenti e leggerne inizialmente il contenuto. Successivamente, può monitorare continuamente il file system per individuare nuovi file e acquisirne il contenuto. Il connettore supporta la lettura di una serie di file da file system distribuiti come Amazon S3 o HDFS con un formato di testo normale, Avro, CSV, Parquet e altro e produce un record in streaming. Essendo un servizio completamente gestito, Managed Service per Apache Flink rimuove il sovraccarico operativo derivante dalla distribuzione e dalla manutenzione dei lavori Flink, consentendoti di concentrarti sulla creazione e sul ridimensionamento delle tue applicazioni di streaming. Con una perfetta integrazione nei servizi di streaming AWS come Amazon MSK o Kinesis Data Streams, fornisce funzionalità come scalabilità automatica, sicurezza e resilienza, fornendo applicazioni Flink affidabili ed efficienti per la gestione dei dati di streaming in tempo reale.

In base alle tue preferenze DevOps, puoi scegliere tra Kinesis Data Streams o Amazon MSK per archiviare i record di streaming. Kinesis Data Streams semplifica le complessità legate alla creazione e alla gestione di applicazioni di dati in streaming personalizzate, consentendoti di concentrarti sulla derivazione di insight dai dati anziché sulla manutenzione dell'infrastruttura. I clienti che utilizzano Apache Kafka spesso optano per Amazon MSK per la sua semplicità, scalabilità e affidabilità nella supervisione dei cluster Apache Kafka all'interno dell'ambiente AWS. In quanto servizio completamente gestito, Amazon MSK si fa carico delle complessità operative associate alla distribuzione e alla manutenzione dei cluster Apache Kafka, consentendoti di concentrarti sulla costruzione e sull'espansione delle tue applicazioni di streaming.

Poiché un'integrazione API RESTful si adatta alla natura di questo processo, è necessario un framework che supporti un modello di arricchimento con stato tramite chiamate API RESTful per tenere traccia degli errori e riprovare per la richiesta non riuscita. Apache Flink è ancora una volta un framework in grado di eseguire operazioni stateful alla velocità della memoria. Per comprendere i modi migliori per effettuare chiamate API tramite Apache Flink, fare riferimento a Modelli comuni di arricchimento dei dati in streaming in Amazon Kinesis Data Analytics per Apache Flink.

Apache Flink fornisce connettori sink nativi per la scrittura di dati su archivi dati vettoriali come Amazon Aurora per PostgreSQL con pgvector o Servizio Amazon OpenSearch con VectorDB. In alternativa, puoi organizzare l'output del lavoro Flink (dati vettorizzati) in un argomento MSK o un flusso di dati Kinesis. OpenSearch Service fornisce supporto per l'acquisizione nativa da flussi di dati Kinesis o argomenti MSK. Per ulteriori informazioni, fare riferimento a Presentazione di Amazon MSK come origine per l'acquisizione di Amazon OpenSearch ed Caricamento di dati in streaming da Amazon Kinesis Data Streams.

Analisi e messa a punto del feedback

È importante che i responsabili delle operazioni dati e gli sviluppatori di intelligenza artificiale/ML ottengano informazioni dettagliate sulle prestazioni dell'applicazione di intelligenza artificiale generativa e dei FM in uso. Per raggiungere questo obiettivo, è necessario creare pipeline di dati che calcolino dati importanti sugli indicatori chiave di prestazione (KPI) in base al feedback degli utenti e alla varietà di log e metriche dell'applicazione. Queste informazioni sono utili alle parti interessate per ottenere informazioni in tempo reale sulle prestazioni di FM, sull'applicazione e sulla soddisfazione complessiva degli utenti sulla qualità del supporto che ricevono dall'applicazione. È inoltre necessario raccogliere e archiviare la cronologia delle conversazioni per ottimizzare ulteriormente i tuoi FM per migliorare la loro capacità di eseguire attività specifiche del dominio.

Questo caso d'uso si adatta molto bene al dominio dell'analisi dello streaming. La tua applicazione dovrebbe archiviare ogni conversazione nell'archivio di streaming. La tua applicazione può richiedere agli utenti la loro valutazione dell'accuratezza di ciascuna risposta e la loro soddisfazione generale. Questi dati possono essere in un formato binario o in formato testo libero. Questi dati possono essere archiviati in un flusso di dati Kinesis o in un argomento MSK ed essere elaborati per generare KPI in tempo reale. Puoi utilizzare FM per l'analisi del sentiment degli utenti. I FM possono analizzare ciascuna risposta e assegnare una categoria di soddisfazione dell'utente.

L'architettura di Apache Flink consente l'aggregazione complessa dei dati in finestre temporali. Fornisce inoltre il supporto per le query SQL sul flusso di eventi di dati. Pertanto, utilizzando Apache Flink, puoi analizzare rapidamente gli input grezzi dell'utente e generare KPI in tempo reale scrivendo query SQL familiari. Per ulteriori informazioni, fare riferimento a API di tabella e SQL.

Con Servizio gestito da Amazon per Apache Flink Studio, puoi creare ed eseguire applicazioni di elaborazione del flusso Apache Flink utilizzando SQL, Python e Scala standard in un notebook interattivo. I notebook Studio sono basati su Apache Zeppelin e utilizzano Apache Flink come motore di elaborazione del flusso. I notebook Studio combinano perfettamente queste tecnologie per rendere l'analisi avanzata sui flussi di dati accessibile agli sviluppatori con tutte le competenze. Con il supporto per le funzioni definite dall'utente (UDF), Apache Flink consente di creare operatori personalizzati da integrare con risorse esterne come FM per eseguire attività complesse come l'analisi del sentiment. È possibile utilizzare le UDF per calcolare varie metriche o arricchire i dati grezzi del feedback degli utenti con approfondimenti aggiuntivi come il sentiment degli utenti. Per saperne di più su questo modello, fare riferimento a Affrontare in modo proattivo le preoccupazioni dei clienti in tempo reale con GenAI, Flink, Apache Kafka e Kinesis.

Con Managed Service per Apache Flink Studio, puoi distribuire il tuo notebook Studio come lavoro di streaming con un clic. Puoi utilizzare i connettori sink nativi forniti da Apache Flink per inviare l'output allo storage che preferisci o inserirlo in un flusso di dati Kinesis o in un argomento MSK. Amazon RedShift e OpenSearch Service sono entrambi ideali per l'archiviazione di dati analitici. Entrambi i motori forniscono supporto di acquisizione nativo da Kinesis Data Streams e Amazon MSK tramite una pipeline di streaming separata verso un data lake o un data warehouse per l'analisi.

Amazon Redshift utilizza SQL per analizzare dati strutturati e semi-strutturati in data warehouse e data lake, utilizzando hardware e machine learning progettati da AWS per offrire il miglior rapporto qualità-prezzo su larga scala. Il servizio OpenSearch offre funzionalità di visualizzazione basate su OpenSearch Dashboards e Kibana (versioni da 1.5 a 7.10).

È possibile utilizzare il risultato di tale analisi combinato con i dati richiesti dall'utente per ottimizzare la FM quando necessario. SageMaker è il modo più semplice per mettere a punto i tuoi FM. L'utilizzo di Amazon S3 con SageMaker fornisce un'integrazione potente e perfetta per ottimizzare i tuoi modelli. Amazon S3 funge da soluzione di storage di oggetti scalabile e durevole, consentendo l'archiviazione e il recupero semplici di set di dati di grandi dimensioni, dati di training e artefatti del modello. SageMaker è un servizio ML completamente gestito che semplifica l'intero ciclo di vita ML. Utilizzando Amazon S3 come backend di storage per SageMaker, puoi sfruttare la scalabilità, l'affidabilità e la convenienza di Amazon S3, integrandolo perfettamente con le funzionalità di formazione e distribuzione di SageMaker. Questa combinazione consente una gestione efficiente dei dati, facilita lo sviluppo di modelli collaborativi e garantisce che i flussi di lavoro ML siano semplificati e scalabili, migliorando in definitiva l'agilità e le prestazioni complessive del processo ML. Per ulteriori informazioni, fare riferimento a Ottimizza Falcon 7B e altri LLM su Amazon SageMaker con @remote decorator.

Con un connettore sink del file system, i processi Apache Flink possono fornire dati ad Amazon S3 in file in formato aperto (come JSON, Avro, Parquet e altri) come oggetti dati. Se preferisci gestire il tuo data Lake utilizzando un framework Data Lake transazionale (come Apache Hudi, Apache Iceberg o Delta Lake), tutti questi framework forniscono un connettore personalizzato per Apache Flink. Per ulteriori dettagli, fare riferimento a Crea una pipeline source-to-data lake a bassa latenza utilizzando Amazon MSK Connect, Apache Flink e Apache Hudi.

Sommario

Per un'applicazione di intelligenza artificiale generativa basata su un modello RAG, è necessario prendere in considerazione la creazione di due sistemi di archiviazione dei dati e creare operazioni sui dati che li mantengano aggiornati con tutti i sistemi di origine. I processi batch tradizionali non sono sufficienti per elaborare la dimensione e la diversità dei dati necessari per integrarli con la tua applicazione di intelligenza artificiale generativa. I ritardi nell'elaborazione delle modifiche nei sistemi di origine determinano una risposta imprecisa e riducono l'efficienza della tua applicazione di intelligenza artificiale generativa. Lo streaming dei dati consente di acquisire dati da una varietà di database su vari sistemi. Ti consente inoltre di trasformare, arricchire, unire e aggregare dati provenienti da molte fonti in modo efficiente e quasi in tempo reale. Lo streaming dei dati fornisce un'architettura dati semplificata per raccogliere e trasformare le reazioni o i commenti in tempo reale degli utenti sulle risposte dell'applicazione, aiutandoti a fornire e archiviare i risultati in un data Lake per la messa a punto del modello. Lo streaming dei dati ti aiuta inoltre a ottimizzare le pipeline di dati elaborando solo gli eventi di modifica, consentendoti di rispondere alle modifiche dei dati in modo più rapido ed efficiente.

Scopri Servizi di streaming dati AWS e inizia a creare la tua soluzione di streaming dati.


Informazioni sugli autori

Alì Alemì è un architetto di soluzioni specializzato in streaming presso AWS. Ali fornisce consulenza ai clienti AWS con le migliori pratiche architetturali e li aiuta a progettare sistemi di dati di analisi in tempo reale che siano affidabili, sicuri, efficienti ed economici. Lavora a ritroso dai casi d'uso dei clienti e progetta soluzioni di dati per risolvere i loro problemi aziendali. Prima di entrare in AWS, Ali ha supportato diversi clienti del settore pubblico e partner di consulenza AWS nel loro percorso di modernizzazione delle applicazioni e migrazione al cloud.

Imtiaz (Taz) ha detto è il leader tecnologico mondiale per l'analisi presso AWS. Gli piace interagire con la community su tutto ciò che riguarda dati e analisi. Può essere raggiunto tramite LinkedIn.

spot_img

L'ultima intelligenza

spot_img