I clienti del settore sanitario e delle scienze della vita (HCLS) stanno adottando l’intelligenza artificiale generativa come strumento per ottenere di più dai propri dati. I casi d'uso includono il riepilogo dei documenti per aiutare i lettori a concentrarsi sui punti chiave di un documento e la trasformazione del testo non strutturato in formati standardizzati per evidenziare attributi importanti. Con formati di dati unici e rigorosi requisiti normativi, i clienti sono alla ricerca di scelte per selezionare il modello più performante ed economico, nonché della capacità di eseguire la personalizzazione necessaria (ottimizzazione) per adattarla al proprio caso d'uso aziendale. In questo post ti guideremo attraverso la distribuzione di un modello LLM (Large Language Model) Falcon utilizzando JumpStart di Amazon SageMaker e utilizzare il modello per riassumere documenti lunghi con LangChain e Python.
Panoramica della soluzione
Amazon Sage Maker si basa sull'esperienza ventennale di Amazon nello sviluppo di applicazioni ML reali, tra cui consigli sui prodotti, personalizzazione, acquisti intelligenti, robotica e dispositivi ad assistenza vocale. SageMaker è un servizio gestito idoneo all'HIPAA che fornisce strumenti che consentono a data scientist, ingegneri ML e analisti aziendali di innovare con il ML. All'interno di SageMaker c'è Amazon Sage Maker Studio, un ambiente di sviluppo integrato (IDE) creato appositamente per flussi di lavoro ML collaborativi che, a loro volta, contengono un'ampia varietà di soluzioni di avvio rapido e modelli ML preaddestrati in un hub integrato chiamato SageMaker JumpStart. Con SageMaker JumpStart puoi utilizzare modelli preaddestrati, come Falcon LLM, con notebook di esempio predefiniti e supporto SDK per sperimentare e distribuire questi potenti modelli di trasformatori. Puoi utilizzare SageMaker Studio e SageMaker JumpStart per distribuire ed eseguire query sul tuo modello generativo nel tuo account AWS.
Puoi anche assicurarti che i dati del payload dell'inferenza non lascino il tuo VPC. Puoi eseguire il provisioning di modelli come endpoint a tenant singolo e distribuirli con l'isolamento della rete. Inoltre, puoi curare e gestire l'insieme selezionato di modelli che soddisfano i tuoi requisiti di sicurezza utilizzando la funzionalità di hub di modelli privati all'interno di SageMaker JumpStart e archiviando lì i modelli approvati. SageMaker è nell'ambito di applicazione HIPAABAA, SOC123e HITRUST QCS.
Il Falco LLM è un modello linguistico di grandi dimensioni, formato dai ricercatori del Technology Innovation Institute (TII) su oltre 1 trilione di token utilizzando AWS. Falcon ha molte varianti diverse, con i suoi due costituenti principali Falcon 40B e Falcon 7B, composti rispettivamente da 40 miliardi e 7 miliardi di parametri, con versioni ottimizzate addestrate per compiti specifici, come seguire le istruzioni. Falcon esegue bene una varietà di attività, tra cui il riepilogo del testo, l'analisi dei sentimenti, la risposta alle domande e la conversazione. Questo post fornisce una procedura dettagliata che puoi seguire per distribuire Falcon LLM nel tuo account AWS, utilizzando un'istanza notebook gestita tramite SageMaker JumpStart per sperimentare il riepilogo del testo.
L'hub del modello SageMaker JumpStart include notebook completi per distribuire ed eseguire query su ciascun modello. Al momento della stesura di questo articolo, sono disponibili sei versioni di Falcon nell'hub modello SageMaker JumpStart: Falcon 40B Instruct BF16, Falcon 40B BF16, Falcon 180B BF16, Falcon 180B Chat BF16, Falcon 7B Instruct BF16 e Falcon 7B BF16. Questo post utilizza il modello Falcon 7B Instruct.
Nelle sezioni seguenti, mostriamo come iniziare con il riepilogo dei documenti distribuendo Falcon 7B su SageMaker Jumpstart.
Prerequisiti
Per questo tutorial avrai bisogno di un account AWS con un dominio SageMaker. Se non disponi già di un dominio SageMaker, fai riferimento a Integrazione nel dominio Amazon SageMaker per crearne uno.
Distribuisci Falcon 7B utilizzando SageMaker JumpStart
Per distribuire il tuo modello, completa i seguenti passaggi:
- Passa al tuo ambiente SageMaker Studio dalla console SageMaker.
- All'interno dell'IDE, sotto SageMaker JumpStart nel pannello di navigazione, scegli Modelli, taccuini, soluzioni.
- Distribuisci il modello Falcon 7B Instruct su un endpoint per l'inferenza.
Questo aprirà la scheda modello per il modello Falcon 7B Instruct BF16. In questa pagina puoi trovare il Schierare or Treni opzioni e collegamenti per aprire i taccuini di esempio in SageMaker Studio. Questo post utilizzerà il notebook di esempio di SageMaker JumpStart per distribuire il modello.
- Scegli Apra il taccuino.
- Esegui le prime quattro celle del notebook per distribuire l'endpoint Falcon 7B Instruct.
Puoi visualizzare i modelli JumpStart distribuiti sul file Asset JumpStart lanciati .
- Nel riquadro di navigazione, sotto SageMaker Jumpstartscegli Asset JumpStart lanciati.
- Scegliere il Endpoint del modello scheda per visualizzare lo stato dell'endpoint.
Con l'endpoint Falcon LLM distribuito, sei pronto per eseguire query sul modello.
Esegui la tua prima query
Per eseguire una query, completare i seguenti passaggi:
- Sulla Compila il menù, scegliere New ed Taccuino per aprire un nuovo blocco note.
Puoi anche scaricare il taccuino completato qui.
- Seleziona l'immagine, il kernel e il tipo di istanza quando richiesto. Per questo post scegliamo l'immagine Data Science 3.0, il kernel Python 3 e l'istanza ml.t3.medium.
- Importa i moduli Boto3 e JSON inserendo le seguenti due righe nella prima cella:
- Rassegna Stampa MAIUSC + INVIO per far funzionare la cella.
- Successivamente, puoi definire una funzione che chiamerà il tuo endpoint. Questa funzione prende un payload del dizionario e lo utilizza per richiamare il client runtime SageMaker. Quindi deserializza la risposta e stampa l'input e il testo generato.
Il payload include il prompt come input, insieme ai parametri di inferenza che verranno passati al modello.
- Puoi utilizzare questi parametri con la richiesta per ottimizzare l'output del modello per il tuo caso d'uso:
Interrogazione con una richiesta di riepilogo
Questo post utilizza un documento di ricerca di esempio per dimostrare il riepilogo. Il file di testo di esempio riguarda il riepilogo automatico del testo nella letteratura biomedica. Completa i seguenti passaggi:
- Scaricare il PDF e copiare il testo in un file denominato
document.txt
. - In SageMaker Studio, scegli l'icona di caricamento e carica il file nella tua istanza di SageMaker Studio.
Fuori dagli schemi, Falcon LLM fornisce supporto per il riepilogo del testo.
- Creiamo una funzione che utilizzi tecniche di ingegneria rapida per riepilogare
document.txt
:
Noterai che per i documenti più lunghi viene visualizzato un errore: Falcon, insieme a tutti gli altri LLM, ha un limite al numero di token passati come input. Possiamo aggirare questo limite utilizzando le funzionalità di riepilogo avanzate di LangChain, che consentono di passare un input molto più grande a LLM.
Importa ed esegui una catena di riepilogo
LangChain è una libreria software open source che consente a sviluppatori e data scientist di creare, ottimizzare e distribuire rapidamente applicazioni generative personalizzate senza gestire complesse interazioni ML, comunemente utilizzata per astrarre molti dei casi d'uso comuni per modelli linguistici di intelligenza artificiale generativa in pochi righe di codice. Il supporto di LangChain per i servizi AWS include il supporto per gli endpoint SageMaker.
LangChain fornisce un'interfaccia accessibile ai LLM. Le sue funzionalità includono strumenti per la creazione di modelli tempestivi e il concatenamento di prompt. Queste catene possono essere utilizzate per riassumere documenti di testo più lunghi di quanto supportato dal modello linguistico in una singola chiamata. È possibile utilizzare una strategia di riduzione della mappa per riepilogare documenti lunghi suddividendoli in parti gestibili, riassumendoli e combinandoli (e riepilogando nuovamente, se necessario).
- Installiamo LangChain per iniziare:
- Importa i moduli pertinenti e suddividi il lungo documento in blocchi:
- Per far funzionare LangChain in modo efficace con Falcon, è necessario definire le classi di gestione del contenuto predefinite per input e output validi:
- È possibile definire prompt personalizzati come
PromptTemplate
oggetti, il veicolo principale per la richiesta con LangChain, per l'approccio di riepilogo con riduzione della mappa. Questo è un passaggio facoltativo perché i prompt di mappatura e combinazione vengono forniti per impostazione predefinita se i parametri all'interno della chiamata per caricare la catena di riepilogo (load_summarize_chain
) non sono definiti.
- LangChain supporta LLM ospitati su endpoint di inferenza SageMaker, quindi invece di utilizzare l'SDK AWS Python, puoi inizializzare la connessione tramite LangChain per una maggiore accessibilità:
- Infine, puoi caricare una catena di riepilogo ed eseguire un riepilogo sui documenti di input utilizzando il seguente codice:
Perché il verbose
parametro è impostato su True
, vedrai tutti gli output intermedi dell'approccio map-reduce. Ciò è utile per seguire la sequenza degli eventi per arrivare ad un riepilogo finale. Con questo approccio di riduzione della mappa, puoi riepilogare in modo efficace i documenti molto più a lungo di quanto normalmente consentito dal limite massimo di token di input del modello.
ripulire
Dopo aver finito di utilizzare l'endpoint di inferenza, è importante eliminarlo per evitare di incorrere in costi inutili attraverso le seguenti righe di codice:
Utilizzo di altri modelli di fondazione in SageMaker JumpStart
L'utilizzo di altri modelli di base disponibili in SageMaker JumpStart per il riepilogo dei documenti richiede un sovraccarico minimo per la configurazione e la distribuzione. Gli LLM variano occasionalmente in base alla struttura dei formati di input e output e, man mano che nuovi modelli e soluzioni predefinite vengono aggiunti a SageMaker JumpStart, a seconda dell'implementazione dell'attività, potrebbe essere necessario apportare le seguenti modifiche al codice:
- Se stai eseguendo il riepilogo tramite il file
summarize()
(il metodo senza utilizzare LangChain), potrebbe essere necessario modificare la struttura JSON del filepayload
parametro, nonché la gestione della variabile di risposta nel filequery_endpoint()
function - Se stai eseguendo il riepilogo tramite LangChain's
load_summarize_chain()
metodo, potrebbe essere necessario modificare il fileContentHandlerTextSummarization
classe, in particolare iltransform_input()
edtransform_output()
funzioni, per gestire correttamente il carico utile previsto da LLM e l'output restituito da LLM
I modelli di base variano non solo in fattori quali la velocità e la qualità dell'inferenza, ma anche nei formati di input e output. Fare riferimento alla pagina delle informazioni pertinenti del LLM sugli input e output previsti.
Conclusione
Il modello Falcon 7B Instruct è disponibile sull'hub del modello SageMaker JumpStart e funziona su una serie di casi d'uso. Questo post ha dimostrato come distribuire il tuo endpoint Falcon LLM nel tuo ambiente utilizzando SageMaker JumpStart ed eseguire i tuoi primi esperimenti da SageMaker Studio, consentendoti di prototipare rapidamente i tuoi modelli e passare senza problemi a un ambiente di produzione. Con Falcon e LangChain puoi riassumere in modo efficace documenti di lunga durata nel settore sanitario e delle scienze della vita su larga scala.
Per ulteriori informazioni sull'utilizzo dell'intelligenza artificiale generativa su AWS, fare riferimento a Annuncio di nuovi strumenti per creare con l'IA generativa su AWS. Puoi iniziare a sperimentare e creare prove di concetto di riepilogo dei documenti per le tue applicazioni GenAI orientate all'assistenza sanitaria e alle scienze della vita utilizzando il metodo descritto in questo post. Quando Roccia Amazzonica è generalmente disponibile, pubblicheremo un post di follow-up che mostra come implementare il riepilogo dei documenti utilizzando Amazon Bedrock e LangChain.
Informazioni sugli autori
John Kitaoka è un Solutions Architect presso Amazon Web Services. John aiuta i clienti a progettare e ottimizzare i carichi di lavoro AI/ML su AWS per aiutarli a raggiungere i propri obiettivi aziendali.
Josh Famestad è un Solutions Architect presso Amazon Web Services. Josh lavora con clienti del settore pubblico per creare ed eseguire approcci basati sul cloud per soddisfare le priorità aziendali.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoData.Network Generativo verticale Ai. Potenzia te stesso. Accedi qui.
- PlatoAiStream. Intelligenza Web3. Conoscenza amplificata. Accedi qui.
- PlatoneESG. Carbonio, Tecnologia pulita, Energia, Ambiente, Solare, Gestione dei rifiuti. Accedi qui.
- Platone Salute. Intelligence sulle biotecnologie e sulle sperimentazioni cliniche. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/create-an-hcls-document-summarization-application-with-falcon-using-amazon-sagemaker-jumpstart/
- :ha
- :È
- :non
- $ SU
- 1
- 10
- 100
- 11
- 12
- 14
- 150
- 16
- 1M
- 20
- 40
- 400
- 50
- 500
- 7
- a
- capacità
- ABSTRACT
- accetta
- accessibilità
- accessibile
- Il mio account
- Raggiungere
- aggiunto
- Adottando
- ancora
- AI
- AI / ML
- Tutti
- permesso
- Consentire
- consente
- a fianco di
- già
- anche
- Amazon
- Amazon Sage Maker
- JumpStart di Amazon SageMaker
- Amazon Web Services
- an
- .
- Gli analisti
- ed
- animali
- animali
- Applicazioni
- applicazioni
- approccio
- approcci
- approvato
- SONO
- in giro
- AS
- At
- gli attributi
- Automatico
- disponibile
- evitare
- AWS
- basato
- BE
- perché
- iniziare
- crede
- Miliardo
- biomedico
- stile di vita
- perno
- Scatola
- Rompere
- Rottura
- costruire
- Costruzione
- costruito
- affari
- ma
- by
- chiamata
- detto
- Materiale
- Può ottenere
- funzionalità
- capacità
- carta
- Custodie
- casi
- Celle
- catena
- Catene
- il cambiamento
- Modifiche
- scelte
- Scegli
- la scelta
- classe
- classi
- cliente
- Cloud
- codice
- collaborativo
- combinare
- combinando
- Uncommon
- comunemente
- rispetto
- completamento di una
- Completato
- complesso
- Compreso
- concetto
- conciso
- veloce
- consolle
- contenere
- contenuto
- costo effettivo
- Costi
- creare
- costume
- Clienti
- personalizzazione
- dati
- scienza dei dati
- decenni
- Predefinito
- definire
- consegnare
- dimostrare
- dimostrato
- Dipendente
- schierare
- schierato
- distribuzione
- deployment
- Design
- sviluppatori
- in via di sviluppo
- Mercato
- dispositivi
- diverso
- do
- documento
- documenti
- non
- dominio
- Dont
- giù
- scaricare
- ogni
- terra
- in maniera efficace
- enable
- endpoint
- Ingegneria
- Ingegneri
- migliorata
- garantire
- entrare
- Ambiente
- errore
- eventi
- esempio
- eseguire
- previsto
- aspetta
- esperienza
- esperimento
- esperimenti
- Faccia
- Fattori
- falso
- Caratteristiche
- pochi
- Compila il
- finale
- Trovate
- Nome
- in forma
- Focus
- seguire
- i seguenti
- Nel
- Fondazione
- quattro
- da
- function
- funzioni
- Inoltre
- generalmente
- generare
- generato
- generativo
- AI generativa
- ottenere
- Obiettivi
- maggiore
- maniglia
- Manovrabilità
- Avere
- assistenza sanitaria
- Aiuto
- aiuta
- Highlight
- ospitato
- Come
- Tutorial
- HTML
- HTTPS
- Hub
- ICON
- if
- Immagine
- realizzare
- implementazione
- importare
- importante
- in
- includere
- inclusi
- Compreso
- informazioni
- innovare
- Innovazione
- ingresso
- Ingressi
- install
- esempio
- invece
- Istituto
- istruzioni
- integrato
- Intelligente
- interazioni
- Interfaccia
- ai miglioramenti
- da solo
- IT
- SUO
- John
- json
- ad appena
- Le
- Lingua
- grandi
- superiore, se assunto singolarmente.
- lanciato
- Lasciare
- Biblioteca
- Vita
- Life Sciences
- LIMITE
- Linee
- Collegamento
- letteratura
- LLM
- caricare
- Lunghi
- più a lungo
- cerca
- Principale
- make
- gestire
- maneggevole
- gestito
- gestione
- molti
- mappatura
- massimo
- Maggio..
- medie
- Menu
- metodo
- minimo
- ML
- modello
- modelli
- modificare
- moduli
- Scopri di più
- maggior parte
- molti
- Navigazione
- necessaria
- Bisogno
- di applicazione
- Rete
- New
- NIH
- normalmente
- taccuino
- Avviso..
- numero
- oggetti
- of
- on
- ONE
- esclusivamente
- aprire
- open source
- Software open source
- OTTIMIZZA
- Opzioni
- Altro
- delineato
- produzione
- ancora
- proprio
- pagina
- vetro
- Carta
- parametro
- parametri
- Passato
- Eseguire
- esecuzione
- esegue
- personalizzazione
- Platone
- Platone Data Intelligence
- PlatoneDati
- punti
- Post
- potente
- Stampa
- stampe
- un bagno
- processi
- Prodotto
- Produzione
- prove
- prototipo
- fornire
- purché
- fornisce
- fornitura
- la percezione
- pubblicare
- Python
- qualità
- domanda
- rapidamente
- rapidamente
- lettori
- pronto
- mondo reale
- raccomandazioni
- riferimento
- normativo
- pertinente
- Requisiti
- richiede
- riparazioni
- ricercatori
- rispettivamente
- risposta
- ritorno
- robotica
- Correre
- sagemaker
- Inferenza di SageMaker
- Scala
- Scienze
- SCIENZE
- scienziati
- portata
- sdk
- senza soluzione di continuità
- sezioni
- settore
- problemi di
- vedere
- selezionato
- AUTO
- sentimento
- Sequenza
- servizio
- Servizi
- set
- regolazione
- Shopping
- Corti
- mostrare attraverso le sue creazioni
- singolo
- SIX
- So
- Software
- Soluzioni
- specifico
- in particolare
- velocità
- inizia a
- iniziato
- Stato dei servizi
- step
- Passi
- memorizzare
- Strategia
- Strict
- La struttura
- studio
- tale
- riassumere
- SOMMARIO
- supporto
- supporti
- prende
- Task
- task
- tecniche
- Tecnologia
- Innovazione tecnologica
- testo
- di
- che
- Il
- loro
- Li
- poi
- Là.
- Strumenti Bowman per analizzare le seguenti finiture:
- questo
- Attraverso
- a
- insieme
- token
- Tokens
- strumenti
- allenato
- trasformatore
- trasformazione
- transizione
- Trilione
- vero
- TURNO
- lezione
- seconda
- Digitare
- indefinito
- unico
- inutile
- Caricamento
- uso
- caso d'uso
- utilizzato
- usa
- utilizzando
- variabile
- varietà
- veicolo
- versioni
- via
- Visualizza
- camminare
- walkthrough
- we
- sito web
- servizi web
- WELL
- Che
- quando
- quale
- largo
- volere
- con
- entro
- senza
- Lavora
- flussi di lavoro
- lavoro
- lavori
- scrivere
- scrittura
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro