Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazoni veebiteenused

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazoni veebiteenused

Täna on meil hea meel teatada, et Mixtral-8x7B Suur keelemudel (LLM), mille on välja töötanud Mistral AI, on klientidele saadaval selle kaudu Amazon SageMaker JumpStart ühe klõpsuga juurutamiseks järelduste tegemiseks. Mixtral-8x7B LLM on eelkoolitatud hõre ekspertmudelite segu, mis põhineb 7 miljardi parameetriga selgrool ja kaheksa eksperti iga edasisuunamiskihi kohta. Saate seda mudelit proovida SageMaker JumpStartiga, masinõppe (ML) keskusega, mis pakub juurdepääsu algoritmidele ja mudelitele, et saaksite ML-iga kiiresti alustada. Selles postituses kirjeldame, kuidas Mixtral-8x7B mudelit avastada ja kasutusele võtta.

Mis on Mixtral-8x7B

Mixtral-8x7B on Mistral AI välja töötatud alusmudel, mis toetab inglis-, prantsuse-, saksa-, itaalia- ja hispaaniakeelset teksti koos koodi genereerimise võimalustega. See toetab mitmesuguseid kasutusjuhtumeid, nagu teksti kokkuvõte, klassifitseerimine, teksti lõpetamine ja koodi lõpetamine. See käitub vestlusrežiimis hästi. Mudeli lihtsa kohandatavuse demonstreerimiseks on Mistral AI välja andnud ka Mixtral-8x7B-juhiste mudeli vestluse kasutusjuhtudeks, mida on peenhäälestatud mitmesuguste avalikult kättesaadavate vestluste andmekogude abil. Mixtral mudelitel on suur konteksti pikkus kuni 32,000 XNUMX märgini.

Mixtral-8x7B pakub märkimisväärseid jõudluse täiustusi võrreldes eelmiste tipptasemel mudelitega. Selle hõre ekspertide arhitektuur võimaldab saavutada paremaid tulemusi 9-st 12-st loomuliku keele töötlemise (NLP) etalonist, mida testis Mistral AI. Mixtral sobib või ületab mudelite jõudlust kuni 10 korda oma suurusest. Kasutades ainult murdosa parameetreid märgi kohta, saavutab see kiirema järelduskiiruse ja väiksema arvutuskulu võrreldes samaväärse suurusega tihedate mudelitega – näiteks kokku 46.7 miljardit parameetrit, kuid ühe märgi kohta kasutatakse ainult 12.9 miljardit. See suure jõudluse, mitmekeelse toe ja arvutusliku tõhususe kombinatsioon muudab Mixtral-8x7B ahvatlevaks valikuks NLP-rakenduste jaoks.

Mudel on piiranguteta kasutamiseks saadaval lubava Apache 2.0 litsentsi alusel.

Mis on SageMaker JumpStart

SageMaker JumpStartiga saavad ML-i praktikud valida kasvava nimekirja kõige paremini toimivatest aluskreemide mudelitest. ML-praktikud saavad sihtotstarbeliselt kasutusele võtta sihtasutuse mudelid Amazon SageMaker eksemplare võrgust eraldatud keskkonnas ja kohandada mudeleid SageMakeri abil mudeli koolituseks ja juurutamiseks.

Nüüd saate mõne klõpsuga avastada ja juurutada Mixtral-8x7B Amazon SageMaker Studio või programmiliselt SageMaker Python SDK kaudu, mis võimaldab teil tuletada mudeli jõudlust ja MLOps-i juhtelemente SageMakeri funktsioonidega, nagu Amazon SageMakeri torujuhtmed, Amazon SageMakeri silurvõi konteineri palke. Mudel on juurutatud AWS-i turvalises keskkonnas ja teie VPC kontrolli all, aidates tagada andmete turvalisust.

Avastage mudeleid

Juurdepääs Mixtral-8x7B alusmudelitele on SageMakeri JumpStarti kaudu SageMaker Studio kasutajaliideses ja SageMaker Python SDK-s. Selles jaotises käsitleme SageMaker Studio mudelite leidmist.

SageMaker Studio on integreeritud arenduskeskkond (IDE), mis pakub ühtset veebipõhist visuaalset liidest, kus pääsete juurde sihipäraselt loodud tööriistadele, et sooritada kõiki ML-i arendusetappe alates andmete ettevalmistamisest kuni ML-mudelite loomise, koolitamise ja juurutamiseni. Lisateavet SageMaker Studio alustamise ja seadistamise kohta leiate aadressilt Amazon SageMaker Studio.

SageMaker Studios pääsete SageMaker JumpStarti juurde, valides KiirStart navigeerimispaanil.

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

SageMaker JumpStarti sihtlehelt saate otsida otsingukastist "Mixtral". Näete otsingutulemusi, mis näitavad Mixtral 8x7B ja Mixtral 8x7B Instruct.

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

Saate valida mudelikaardi, et vaadata mudeli üksikasju, nagu litsents, koolituseks kasutatud andmed ja kasutusviis. Samuti leiate juurutada nuppu, mida saate kasutada mudeli juurutamiseks ja lõpp-punkti loomiseks.

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

Mudeli juurutamine

Juurutamine algab siis, kui valite juurutada. Pärast juurutamise lõppu on loodud lõpp-punkt. Saate lõpp-punkti testida, edastades näidistulemuspäringu kasuliku koormuse või valides SDK abil testimisvaliku. Kui valite SDK kasutamise, näete näidiskoodi, mida saate kasutada SageMaker Studio eelistatud märkmikuredaktoris.

SDK abil juurutamiseks alustame mudeli Mixtral-8x7B valimisega, mille määrab model_id with value huggingface-llm-mixtral-8x7b. Saate SageMakeris juurutada mis tahes valitud mudelitest järgmise koodiga. Samamoodi saate juurutada Mixtral-8x7B käsu, kasutades selle enda mudeli ID-d:

from sagemaker.jumpstart.model import JumpStartModel model = JumpStartModel(model_id="huggingface-llm-mixtral-8x7b")
predictor = model.deploy()

See juurutab mudeli SageMakeris vaikekonfiguratsioonidega, sealhulgas eksemplari vaiketüübi ja VPC vaikekonfiguratsioonidega. Saate neid konfiguratsioone muuta, määrates sisse mittevaikeväärtused KiirStartModel.

Pärast selle juurutamist saate SageMakeri ennustaja kaudu juurutatud lõpp-punkti kohta järeldusi teha:

payload = {"inputs": "Hello!"} predictor.predict(payload)

Näidisjuhised

Saate Mixtral-8x7B mudeliga suhelda nagu iga standardse teksti genereerimise mudeliga, kus mudel töötleb sisendjada ja väljastab jada ennustatud järgmised sõnad. Selles jaotises pakume näidisviipasid.

Koodi genereerimine

Kasutades eelmist näidet, saame kasutada järgmisi koodi genereerimise viipasid:

# Code generation
payload = { "inputs": "Write a program to compute factorial in python:", "parameters": { "max_new_tokens": 200, },
}
predictor.predict(payload)

Saate järgmise väljundi:

Input Text: Write a program to compute factorial in python:
Generated Text:
Factorial of a number is the product of all the integers from 1 to that number. For example, factorial of 5 is 1*2*3*4*5 = 120. Factorial of 0 is 1. Factorial of a negative number is not defined. The factorial of a number can be written as n!. For example, 5! = 120. ## Write a program to compute factorial in python ```
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1) print(factorial(5))
``` Output: ```
120
``` ## Explanation: In the above program, we have defined a function called factorial which takes a single argument n. If n is equal to 0, then we return 1. Otherwise, we return n multiplied by the factorial of n-1. We then call the factorial function with the argument 5 and print the result. The output of the program is 120, which is the factorial of 5. ## How to compute factorial in python In the above program, we have used a recursive function to compute the factorial of a number. A recursive function is a function that calls itself. In this case, the factorial function calls itself with the argument n-1. This process continues until n is equal to 0, at which point the function returns 1. The factorial of a number can also be computed using a loop. For example, the following program uses a for loop to compute the factorial of a number: ```
def factorial(n):
result = 1
for i in range(1, n+1):
result *= i
return result

Tundeanalüüsi nõuanne

Mixtral 8x7B puhul saate sentimentide analüüsi teha, kasutades järgmist viipa.

payload = { "inputs": """
Tweet: "I hate it when my phone battery dies."
Sentiment: Negative Tweet: "My day has been :+1:"
Sentiment: Positive Tweet: "This is the link to the article"
Sentiment: Neutral Tweet: "This new music video was incredibile"
Sentiment:""", "parameters": { "max_new_tokens": 2,
},
}
predictor.predict(payload)

Saate järgmise väljundi:

Input Text: Tweet: "I hate it when my phone battery dies."
Sentiment: Negative
###
Tweet: "My day has been :+1:"
Sentiment: Positive
###
Tweet: "This is the link to the article"
Sentiment: Neutral
###
Tweet: "This new music video was incredibile"
Sentiment:
Generated Text:  Positive

Küsimustele vastamise juhised

Saate Mixtral-8x7B puhul kasutada järgmist küsimusele vastamise viipa:

# Question answering
payload = { "inputs": "Could you remind me when was the C programming language invented?", "parameters": { "max_new_tokens": 100, },
}
query_endpoint(payload)

Saate järgmise väljundi:

Input Text: Could you remind me when was the C programming language invented?
Generated Text: C was invented in 1972 by Dennis Ritchie at Bell Labs. C is a general-purpose programming language. It was invented to write the UNIX operating system. C is a structured programming language. It is a middle-level language. It is a procedural language. C is a compiled language. It is a portable language. C is a case-sensitive language. It is a free-form language

Mixtral-8x7B Juhend

Mixtral-8x7B juhistega häälestatud versioon aktsepteerib vormindatud juhiseid, kus vestlusrollid peavad algama kasutajaviibaga ning vaheldumisi kasutajajuhiste ja assistendi vahel (mudelvastus). Käskude vormingut tuleb rangelt järgida, vastasel juhul genereerib mudel mitteoptimaalseid väljundeid. Käsumudeli viipa koostamiseks kasutatav mall on määratletud järgmiselt.

<s> [INST] Instruction [/INST] Model answer</s> [INST] Follow-up instruction [/INST]]

Pange tähele, et <s> ja </s> on stringi alguse (BOS) ja stringi lõpu (EOS) erimärgid, kusjuures [INST] ja [/INST] on tavalised stringid.

Järgmine kood näitab, kuidas saate vormindada viipa käsuvormingus:

from typing import Dict, List def format_instructions(instructions: List[Dict[str, str]]) -> List[str]: """Format instructions where conversation roles must alternate user/assistant/user/assistant/...""" prompt: List[str] = [] for user, answer in zip(instructions[::2], instructions[1::2]): prompt.extend(["<s>", "[INST] ", (user["content"]).strip(), " [/INST] ", (answer["content"]).strip(), "</s>"]) prompt.extend(["<s>", "[INST] ", (instructions[-1]["content"]).strip(), " [/INST] ","</s>"]) return "".join(prompt) def print_instructions(prompt: str, response: str) -> None: bold, unbold = '33[1m', '33[0m' print(f"{bold}> Input{unbold}n{prompt}nn{bold}> Output{unbold}n{response[0]['generated_text']}n")

Teadmiste otsimine

Teadmiste hankimise viipa jaoks saate kasutada järgmist koodi.

instructions = [{"role": "user", "content": "what is the recipe of mayonnaise?"}]
prompt = format_instructions(instructions)
payload = { "inputs": prompt, "parameters": {"max_new_tokens": 315, "do_sample": True}
}
response=predictor.predict(payload)
print_instructions(prompt, response)

Saate järgmise väljundi:

> Input
<s>[INST] what is the recipe of mayonnaise? [/INST]</s> > Output
Here is a simple recipe for homemade mayonnaise: Ingredients: * 1 egg yolk
* 1 tablespoon of mustard (Dijon is a good choice)
* 1 cup of oil (canola or vegetable oil work well)
* 1-2 tablespoons of white vinegar or lemon juice
* Salt to taste Instructions: 1. In a medium bowl, whisk together the egg yolk and mustard. It is important that these ingredients are at room temperature.
2. Start adding the oil drop by drop, whisking continuously. This step is crucial to ensure that the mayonnaise emulsifies and does not separate.
3. Once you have added about a quarter of the oil and the mixture has thickened, you can start adding the oil in a thin stream, still whisking constantly.
4. When all the oil has been incorporated and the mayonnaise is thick, whisk in the vinegar or lemon juice and salt to taste.
5. If the mayonnaise is too thick, you can thin it with a little water.
6. Store the mayonnaise in the refrigerator and use within a few days. Note: It is important to use pasteurized eggs or egg yolks when making homemade mayonnaise to reduce the risk of foodborne illness.

Kodeerimine

Mixtral mudelid võivad demonstreerida kodeerimisülesannete võrdlusaluseid, nagu on näidatud järgmises koodis:

instructions = [
{ "role": "user", "content": "In Bash, how do I list all text files in the current directory (excluding subdirectories) that have been modified in the last month?",
}
]
prompt = format_instructions(instructions)
payload = { "inputs": prompt, "parameters": {"max_new_tokens": 256, "do_sample": True, "temperature": 0.2}
}
response=predictor.predict(payload)
print_instructions(prompt, response)

Saate järgmise väljundi:

> Input
<s>[INST] In Bash, how do I list all text files in the current directory (excluding subdirectories) that have been modified in the last month? [/INST]</s>
> Output
ef{0.15cm} To list all text files in the current directory that have been modified in the last month, you can use a combination of the `find` and `grep` commands in Bash. Here's the command you're looking for: ```bash
find . -maxdepth 1 -type f -name "*.txt" -mtime -30
``` Let's break down this command: - `find .` starts a search in the current directory.
- `-maxdepth 1` limits the search to the current directory only (excluding subdirectories).
- `-type f` specifies that you're looking for files.
- `-name "*.txt"` filters the results to only include files with a `.txt` extension.
- `-mtime -30` filters the results to only include files modified within the last 30 days. This command will output the paths of all text files in the current directory that have been modified in the last month.

Matemaatika ja arutluskäik

Mixtral mudelid näitavad ka matemaatika täpsuse tugevusi:

instructions = [
{ "role": "user", "content": "I bought an ice cream for 6 kids. Each cone was $1.25 and I paid with a $10 bill. How many dollars did I get back? Explain first before answering.",
}
]
prompt = format_instructions(instructions)
payload = { "inputs": prompt, "parameters": {"max_new_tokens": 600, "do_sample": True, "temperature": 0.2}
}
response=predictor.predict(payload)
print_instructions(prompt, response)

Mixtral-mudelid võivad anda arusaamist, nagu on näidatud järgmises matemaatilise loogika väljundis:

> Input
<s>[INST] I bought an ice cream for 6 kids. Each cone was $1.25 and I paid with a $10 bill. How many dollars did I get back? Explain first before answering. [/INST] </s>
> Output
First, let's calculate the total cost of the ice cream cones. Since each cone costs $1.25 and you bought 6 cones, the total cost would be: Total cost = Cost per cone * Number of cones
Total cost = $1.25 * 6
Total cost = $7.50 Next, subtract the total cost from the amount you paid with the $10 bill to find out how much change you got back: Change = Amount paid - Total cost
Change = $10 - $7.50
Change = $2.50 So, you got $2.50 back.

Koristage

Kui olete märkmiku käitamise lõpetanud, kustutage kõik protsessi käigus loodud ressursid, et teie arveldamine peataks. Kasutage järgmist koodi:

predictor.delete_model()
predictor.delete_endpoint()

Järeldus

Selles postituses näitasime teile, kuidas SageMaker Studios Mixtral-8x7B kasutamist alustada ja mudelit järelduste tegemiseks juurutada. Kuna vundamendimudelid on eelkoolitatud, võivad need aidata vähendada koolitus- ja infrastruktuurikulusid ning võimaldada kohandamist teie kasutusjuhtumitele. Alustamiseks külastage SageMaker Studios SageMaker JumpStart.

Vahendid


Autoritest

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Rachna Chadha on AWS-i strateegiliste kontode pealahendusarhitekt AI/ML. Rachna on optimist, kes usub, et tehisintellekti eetiline ja vastutustundlik kasutamine võib tulevikus ühiskonda parandada ning tuua majanduslikku ja sotsiaalset õitsengut. Vabal ajal meeldib Rachnale perega aega veeta, matkata ja muusikat kuulata.

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Dr Kyle Ulrich on rakendusteadlane Amazon SageMakeri sisseehitatud algoritmid meeskond. Tema uurimishuvide hulka kuuluvad skaleeritavad masinõppe algoritmid, arvutinägemine, aegridad, Bayesi mitteparameetrid ja Gaussi protsessid. Tema doktorikraad on pärit Duke'i ülikoolist ja ta on avaldanud töid NeurIPSis, Cell ja Neuron.

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Christopher Whitten on tarkvaraarendaja JumpStart meeskonnas. Ta aitab mudelite valikul skaleerida ja integreerida mudeleid teiste SageMakeri teenustega. Chris on kirglik tehisintellekti leviku kiirendamise vastu erinevates ärivaldkondades.

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Dr Fabio Nonato de Paula on GenAI SA vanemjuht, spetsialist, kes aitab mudelipakkujatel ja klientidel generatiivset AI-d AWS-is skaleerida. Fabio kirg on demokratiseerida juurdepääs generatiivsele AI-tehnoloogiale. Väljaspool tööd võite leida Fabio Sonoma Valley mägedes oma mootorrattaga sõitmas või ComiXologyt lugemas.

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Dr Ashish Khetan on vanemrakendusteadlane, kellel on Amazon SageMaker sisseehitatud algoritmid ja aitab välja töötada masinõppe algoritme. Ta sai doktorikraadi Illinoisi Urbana-Champaigni ülikoolist. Ta on aktiivne masinõppe ja statistiliste järelduste uurija ning avaldanud palju artikleid NeurIPS, ICML, ICLR, JMLR, ACL ja EMNLP konverentsidel.

Mixtral-8x7B on nüüd saadaval rakenduses Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Karl Albertsen juhib Amazon SageMaker Algorithms ja JumpStart, SageMakeri masinõppekeskuse tooteid, tehnikat ja teadust. Ta on kirglik masinõppe rakendamisest äriväärtuse avamiseks.

Ajatempel:

Veel alates AWS-i masinõpe