Oggi siamo lieti di annunciare che i modelli di fondazione Code Llama, sviluppati da Meta, sono disponibili per i clienti tramite JumpStart di Amazon SageMaker da distribuire con un clic per eseguire l'inferenza. Code Llama è un modello di linguaggio di grandi dimensioni (LLM) all'avanguardia in grado di generare codice e linguaggio naturale sul codice sia da istruzioni di codice che di linguaggio naturale. Puoi provare questo modello con SageMaker JumpStart, un hub di machine learning (ML) che fornisce accesso ad algoritmi, modelli e soluzioni ML in modo da poter iniziare rapidamente con il ML. In questo post spieghiamo come individuare e distribuire il modello Code Llama tramite SageMaker JumpStart.
Codice Lama
Code Llama è un modello rilasciato da Meta basato su Llama 2. Questo modello all'avanguardia è progettato per migliorare la produttività delle attività di programmazione per gli sviluppatori aiutandoli a creare codice di alta qualità e ben documentato. I modelli eccellono in Python, C++, Java, PHP, C#, TypeScript e Bash e hanno il potenziale per far risparmiare tempo agli sviluppatori e rendere più efficienti i flussi di lavoro del software.
È disponibile in tre varianti, progettate per coprire un'ampia varietà di applicazioni: il modello fondamentale (Code Llama), un modello specializzato Python (Code Llama Python) e un modello che segue le istruzioni per comprendere le istruzioni del linguaggio naturale (Code Llama Instruct). Tutte le varianti di Code Llama sono disponibili in quattro dimensioni: parametri 7B, 13B, 34B e 70B. Le varianti base e istruzione 7B e 13B supportano il riempimento in base al contenuto circostante, rendendole ideali per le applicazioni di assistente codice. I modelli sono stati progettati utilizzando Llama 2 come base e poi addestrati su 500 miliardi di token di dati di codice, con la versione specializzata Python addestrata su 100 miliardi di token incrementali. I modelli Code Llama forniscono generazioni stabili con un massimo di 100,000 token di contesto. Tutti i modelli vengono addestrati su sequenze di 16,000 token e mostrano miglioramenti su input fino a 100,000 token.
Il modello è reso disponibile sotto lo stesso licenza comunitaria come Llama 2.
Modelli di fondazione in SageMaker
SageMaker JumpStart fornisce l'accesso a una gamma di modelli provenienti da hub di modelli popolari, tra cui Hugging Face, PyTorch Hub e TensorFlow Hub, che puoi utilizzare all'interno del flusso di lavoro di sviluppo ML in SageMaker. I recenti progressi nel machine learning hanno dato origine a una nuova classe di modelli noti come modelli di fondazione, che vengono generalmente addestrati su miliardi di parametri e sono adattabili a un'ampia categoria di casi d'uso, come il riepilogo del testo, la generazione di arte digitale e la traduzione linguistica. Poiché l'addestramento di questi modelli è costoso, i clienti desiderano utilizzare i modelli di base già addestrati esistenti e perfezionarli in base alle necessità, anziché addestrare questi modelli da soli. SageMaker fornisce un elenco curato di modelli tra cui puoi scegliere sulla console SageMaker.
Puoi trovare modelli di fondazione di diversi fornitori di modelli all'interno di SageMaker JumpStart, consentendoti di iniziare rapidamente con i modelli di fondazione. È possibile trovare modelli di base basati su attività o fornitori di modelli diversi ed esaminare facilmente le caratteristiche del modello e i termini di utilizzo. Puoi anche provare questi modelli utilizzando un widget dell'interfaccia utente di prova. Se desideri utilizzare un modello di base su larga scala, puoi farlo senza uscire da SageMaker utilizzando notebook predefiniti dei fornitori di modelli. Poiché i modelli sono ospitati e distribuiti su AWS, puoi essere certo che i tuoi dati, siano essi utilizzati per la valutazione o per l'utilizzo del modello su larga scala, non verranno mai condivisi con terze parti.
Scopri il modello Code Llama in SageMaker JumpStart
Per distribuire il modello Code Llama 70B, completare i seguenti passaggi in Amazon Sage Maker Studio:
- Nella home page di SageMaker Studio, scegli inizio di salto nel pannello di navigazione.
- Cerca i modelli Code Llama e scegli il modello Code Llama 70B dall'elenco dei modelli visualizzati.
Puoi trovare maggiori informazioni sul modello sulla scheda modello Code Llama 70B.
Lo screenshot seguente mostra le impostazioni dell'endpoint. Puoi modificare le opzioni o utilizzare quelle predefinite.
- Accettare il Contratto di licenza con l'utente finale (EULA) e scegliere Schierare.
Verrà avviato il processo di distribuzione dell'endpoint, come mostrato nello screenshot seguente.
Distribuisci il modello con SageMaker Python SDK
In alternativa, è possibile eseguire la distribuzione tramite il notebook di esempio scegliendo Apri taccuino nella pagina dei dettagli del modello di Classic Studio. Il notebook di esempio fornisce indicazioni end-to-end su come distribuire il modello per l'inferenza e pulire le risorse.
Per eseguire la distribuzione utilizzando il notebook, iniziamo selezionando un modello appropriato, specificato dal file model_id
. Puoi distribuire uno qualsiasi dei modelli selezionati su SageMaker con il seguente codice:
Questo distribuisce il modello su SageMaker con configurazioni predefinite, inclusi il tipo di istanza predefinito e le configurazioni VPC predefinite. È possibile modificare queste configurazioni specificando valori non predefiniti in Modello JumpStart. Tieni presente che per impostazione predefinita, accept_eula
è impostato su False
. Devi impostare accept_eula=True
per distribuire correttamente l'endpoint. In tal modo, accetti il contratto di licenza utente e la politica di utilizzo accettabile come menzionato in precedenza. Puoi anche scaricare il contratto di licenza.
Richiama un endpoint SageMaker
Dopo la distribuzione dell'endpoint, è possibile eseguire l'inferenza utilizzando Boto3 o SageMaker Python SDK. Nel codice seguente utilizziamo SageMaker Python SDK per chiamare il modello per l'inferenza e stampare la risposta:
La funzione print_response
prende un carico utile costituito dal carico utile e dalla risposta del modello e stampa l'output. Code Llama supporta molti parametri durante l'esecuzione dell'inferenza:
- lunghezza massima – Il modello genera testo fino a raggiungere la lunghezza dell'output (che include la lunghezza del contesto di input).
max_length
. Se specificato, deve essere un numero intero positivo. - max_new_tokens – Il modello genera testo fino al raggiungimento della lunghezza dell'output (esclusa la lunghezza del contesto di input).
max_new_tokens
. Se specificato, deve essere un numero intero positivo. - num_raggi – Specifica il numero di raggi utilizzati nella ricerca golosa. Se specificato, deve essere un numero intero maggiore o uguale a
num_return_sequences
. - no_repeat_ngram_size – Il modello assicura che una sequenza di parole di
no_repeat_ngram_size
non viene ripetuto nella sequenza di output. Se specificato, deve essere un numero intero positivo maggiore di 1. - temperatura – Questo controlla la casualità nell'output. Più alto
temperature
risulta in una sequenza di output con parole a bassa probabilità e inferioretemperature
risulta in una sequenza di output con parole ad alta probabilità. Setemperature
è 0, il risultato è una decodifica avida. Se specificato, deve essere un float positivo. - early_stopping - Se
True
, la generazione del testo termina quando tutte le ipotesi del fascio raggiungono il token di fine frase. Se specificato, deve essere booleano. - do_campione - Se
True
, il modello campiona la parola successiva in base alla probabilità. Se specificato, deve essere booleano. - top_k – In ogni passaggio della generazione del testo, il modello campiona solo da
top_k
parole molto probabili. Se specificato, deve essere un numero intero positivo. - in alto_p – In ogni fase della generazione del testo, il modello campiona il più piccolo insieme possibile di parole con probabilità cumulativa
top_p
. Se specificato, deve essere un float compreso tra 0 e 1. - return_full_text - Se
True
, il testo in input farà parte del testo generato in output. Se specificato, deve essere booleano. Il valore predefinito èFalse
. - Stop – Se specificato, deve essere un elenco di stringhe. La generazione del testo si interrompe se viene generata una qualsiasi delle stringhe specificate.
È possibile specificare qualsiasi sottoinsieme di questi parametri durante il richiamo di un endpoint. Successivamente, mostriamo un esempio di come richiamare un endpoint con questi argomenti.
Completamento del codice
Gli esempi seguenti dimostrano come eseguire il completamento del codice in cui la risposta prevista dell'endpoint è la naturale continuazione del prompt.
Per prima cosa eseguiamo il seguente codice:
Otteniamo il seguente output:
Per il nostro prossimo esempio, eseguiamo il seguente codice:
Otteniamo il seguente output:
Generazione del codice
Gli esempi seguenti mostrano la generazione di codice Python utilizzando Code Llama.
Per prima cosa eseguiamo il seguente codice:
Otteniamo il seguente output:
Per il nostro prossimo esempio, eseguiamo il seguente codice:
Otteniamo il seguente output:
Questi sono alcuni esempi di attività relative al codice che utilizzano Code Llama 70B. Puoi utilizzare il modello per generare codice ancora più complicato. Ti invitiamo a provarlo utilizzando i tuoi casi d'uso ed esempi relativi al codice!
ripulire
Dopo aver testato gli endpoint, assicurati di eliminare gli endpoint di inferenza SageMaker e il modello per evitare di incorrere in addebiti. Utilizza il seguente codice:
Conclusione
In questo post abbiamo introdotto Code Llama 70B su SageMaker JumpStart. Code Llama 70B è un modello all'avanguardia per la generazione di codice da istruzioni in linguaggio naturale e codice. Puoi distribuire il modello con pochi semplici passaggi in SageMaker JumpStart e quindi utilizzarlo per eseguire attività relative al codice come la generazione e l'inserimento del codice. Come passaggio successivo, prova a utilizzare il modello con i tuoi casi d'uso e dati relativi al codice.
Circa gli autori
Dottor Kyle Ulrich è uno scienziato applicato del team JumpStart di Amazon SageMaker. I suoi interessi di ricerca includono algoritmi scalabili di apprendimento automatico, visione artificiale, serie temporali, parametri bayesiani non parametrici e processi gaussiani. Ha conseguito il dottorato di ricerca presso la Duke University e ha pubblicato articoli su NeurIPS, Cell e Neuron.
Dottor Farooq Sabir è Senior Artificial Intelligence and Machine Learning Specialist Solutions Architect presso AWS. Ha conseguito un dottorato di ricerca e un master in ingegneria elettrica presso l'Università del Texas ad Austin e un master in informatica presso il Georgia Institute of Technology. Ha oltre 15 anni di esperienza lavorativa e gli piace anche insegnare e fare da mentore agli studenti universitari. In AWS, aiuta i clienti a formulare e risolvere i loro problemi aziendali in data science, machine learning, visione artificiale, intelligenza artificiale, ottimizzazione numerica e domini correlati. Con sede a Dallas, in Texas, lui e la sua famiglia amano viaggiare e fare lunghi viaggi.
Giugno vinto è un product manager con SageMaker JumpStart. Il suo obiettivo è rendere i modelli di base facilmente individuabili e utilizzabili per aiutare i clienti a creare applicazioni di intelligenza artificiale generativa. La sua esperienza in Amazon include anche applicazioni per lo shopping mobile e consegna dell'ultimo miglio.
- 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/code-llama-70b-is-now-available-in-amazon-sagemaker-jumpstart/
- :ha
- :È
- :non
- :Dove
- $ SU
- 000
- 1
- 10
- 100
- 11
- 12
- 13
- 14
- 15 anni
- 15%
- 16
- 22
- 25
- 500
- 7
- 80
- 9
- a
- WRI
- Accetta
- accettabile
- accettazione
- accesso
- avanzamenti
- Accordo
- AI
- Algoritmi
- Tutti
- anche
- Amazon
- Amazon Sage Maker
- JumpStart di Amazon SageMaker
- Amazon Web Services
- an
- ed
- Annunciare
- in qualsiasi
- Applicazioni
- applicazioni
- applicato
- opportuno
- SONO
- argomenti
- Arte
- artificiale
- intelligenza artificiale
- Intelligenza artificiale e apprendimento automatico
- AS
- Assistant
- assicurato
- At
- austin
- disponibile
- evitare
- AWS
- base
- basato
- bash
- bayesiano
- BE
- Larghezza
- perché
- fra
- Miliardo
- Miliardi di gettoni
- miliardi
- entrambi
- bolla
- costruire
- costruito
- affari
- by
- C++
- chiamata
- Materiale
- capace
- carta
- trasportare
- casi
- Categoria
- cella
- il cambiamento
- caratteristiche
- oneri
- Scegli
- la scelta
- classe
- classico
- cavedano
- clicca
- codice
- College
- Venire
- viene
- completamento di una
- completamento
- complicato
- computer
- Informatica
- Visione computerizzata
- Consistente
- consolle
- contenuto
- contesto
- continuazione
- controlli
- coprire
- creare
- a cura
- Clienti
- Dallas
- dati
- scienza dei dati
- Decodifica
- Predefinito
- consegna
- dimostrare
- schierare
- schierato
- deployment
- Distribuisce
- progettato
- dettaglio
- sviluppato
- sviluppatori
- Mercato
- diverso
- digitale
- Arte digitale
- scopri
- do
- fare
- domini
- Duca
- Università del Duca
- ogni
- In precedenza
- facilmente
- efficiente
- consentendo
- incoraggiare
- fine
- da un capo all'altro
- endpoint
- progettato
- Ingegneria
- assicura
- pari
- errore
- la valutazione
- Anche
- esempio
- Esempi
- Excel
- Tranne
- eccitato
- esclusa
- esistente
- previsto
- costoso
- esperienza
- esponenziale
- Faccia
- famiglia
- pochi
- Trovate
- Nome
- galleggiante
- si concentra
- i seguenti
- Nel
- Fondazione
- fondamentale
- quattro
- da
- function
- generare
- generato
- genera
- la generazione di
- ELETTRICA
- generazioni
- generativo
- AI generativa
- Georgia
- ottenere
- dato
- Go
- maggiore
- Avido
- guida
- Avere
- he
- Aiuto
- aiutare
- aiuta
- alta qualità
- superiore
- il suo
- detiene
- Casa
- host
- ospitato
- Come
- Tutorial
- HTTPS
- Hub
- mozzi
- i
- ideale
- if
- importare
- competenze
- miglioramenti
- in
- includere
- inclusi
- Compreso
- incrementale
- informazioni
- ingresso
- Ingressi
- esempio
- Istituto
- istruzioni
- Intelligence
- interessi
- introdotto
- IT
- Java
- jpg
- conosciuto
- kyle
- Lingua
- grandi
- Cognome
- apprendimento
- partenza
- Lunghezza
- Licenza
- probabilità
- probabile
- piace
- Lista
- Lama
- LLM
- Lunghi
- amore
- inferiore
- macchina
- machine learning
- fatto
- make
- Fare
- direttore
- molti
- menzionato
- mentore
- Meta
- miglio
- ML
- Mobile
- modello
- modelli
- Scopri di più
- più efficiente
- maggior parte
- MS
- devono obbligatoriamente:
- Naturale
- Navigazione
- Bisogno
- di applicazione
- mai
- New
- GENERAZIONE
- Nota
- taccuino
- adesso
- numero
- of
- on
- ONE
- quelli
- esclusivamente
- ottimizzazione
- Opzioni
- or
- nostro
- su
- produzione
- ancora
- proprio
- pagina
- vetro
- documenti
- parametri
- parte
- parti
- per
- Eseguire
- esecuzione
- phd
- PHP
- Platone
- Platone Data Intelligence
- PlatoneDati
- politica
- Popolare
- positivo
- possibile
- Post
- potenziale
- Predictor
- Stampa
- stampe
- problemi
- processi
- i processi
- Prodotto
- product manager
- della produttività
- Programmazione
- istruzioni
- fornire
- fornitori
- fornisce
- pubblicato
- Python
- pytorch
- rapidamente
- casualità
- gamma
- piuttosto
- raggiungere
- raggiunge
- recente
- relazionato
- rilasciato
- ripetuto
- riparazioni
- Risorse
- risposta
- REST
- Risultati
- ritorno
- invertire
- recensioni
- Aumento
- strada
- Correre
- running
- sagemaker
- Inferenza di SageMaker
- stesso
- Risparmi
- scalabile
- Scala
- Scienze
- Scienziato
- sdk
- Cerca
- selezionato
- Selezione
- anziano
- condanna
- Sequenza
- Serie
- Servizi
- set
- impostazioni
- condiviso
- Shopping
- mostrare attraverso le sue creazioni
- mostrato
- Spettacoli
- Un'espansione
- Dimensioni
- So
- Software
- Soluzioni
- RISOLVERE
- alcuni
- specialista
- specializzata
- specificato
- specificando
- stabile
- inizia a
- iniziato
- state-of-the-art
- step
- Passi
- Interrompe
- Corda
- Gli studenti
- studio
- Con successo
- tale
- supporto
- supporti
- sicuro
- Circostante
- prende
- task
- team
- Tecnologia
- tensorflow
- condizioni
- test
- testato
- Texas
- testo
- di
- che
- Il
- loro
- Li
- si
- poi
- Strumenti Bowman per analizzare le seguenti finiture:
- Terza
- terzi
- questo
- tre
- Attraverso
- tempo
- Serie storiche
- a
- token
- Tokens
- top
- Treni
- allenato
- Traduzione
- viaggiare
- attraversare
- vero
- prova
- Digitare
- Dattiloscritto
- tipicamente
- ui
- per
- e una comprensione reciproca
- Università
- fino a quando
- utilizzabile
- Impiego
- uso
- utilizzato
- Utente
- utilizzando
- APPREZZIAMO
- Valori
- varietà
- versione
- via
- visione
- camminare
- volere
- we
- sito web
- servizi web
- WELL
- sono stati
- quando
- se
- quale
- while
- largo
- widget di
- volere
- con
- entro
- senza
- Word
- parole
- Lavora
- flusso di lavoro
- flussi di lavoro
- scrivere
- anni
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro