Finjustering av grundmodell
Viktigt!
Den här funktionen finns i offentlig förhandsversion i följande regioner: centralus
, eastus
, eastus2
, och .northcentralus
westus
Med Foundation Model Fine-tuning (nu en del av Mosaic AI Model Training) kan du använda dina egna data för att anpassa en grundmodell för att optimera dess prestanda för ditt specifika program. Genom att utföra fullständig parameterjustering eller kontinuerlig träning av en grundmodell kan du träna din egen modell med betydligt mindre data-, tids- och beräkningsresurser än att träna en modell från grunden.
Med Databricks har du allt på en enda plattform: dina egna data att använda för träning, grundmodellen att träna, kontrollpunkter som sparats i MLflow och modellen som registrerats i Unity Catalog och redo att distribueras.
Se Självstudie: Skapa och distribuera en grundmodell Finjusteringskörning för att lära dig hur du skapar en körning med hjälp av API:et för finjustering av grundmodell och granska sedan resultaten och distribuera modellen med hjälp av Databricks UI och Mosaic AI Model Serving.
Vad är finjustering av grundmodell?
Med grundmodellens finjustering kan du använda Databricks-API:et eller användargränssnittet för att finjustera eller träna en grundmodell ytterligare.
Med hjälp av finjustering av grundmodell kan du:
- Träna en modell med dina anpassade data, med kontrollpunkterna sparade i MLflow. Du behåller fullständig kontroll över den tränade modellen.
- Registrera modellen automatiskt i Unity Catalog, vilket möjliggör enkel distribution med modelltjänst.
- Träna ytterligare en färdig, proprietär modell genom att läsa in vikterna för en tidigare tränad modell.
Databricks rekommenderar att du provar att finjustera foundationmodellen om:
- Du har provat några skott och vill ha bättre resultat.
- Du har provat prompt engineering på en befintlig modell och vill ha bättre resultat.
- Du vill ha fullständigt ägarskap över en anpassad modell för datasekretess.
- Du är svarstidskänslig eller kostnadskänslig och vill använda en mindre, billigare modell med dina uppgiftsspecifika data.
Uppgifter som stöds
Grundmodellens finjustering stöder följande användningsfall:
- Chatten har slutförts: Rekommenderad uppgift. Träna din modell på chattloggar mellan en användare och en AI-assistent. Det här formatet kan användas både för faktiska chattloggar och som standardformat för frågesvar och konversationstext. Texten formateras automatiskt i lämpligt format för den specifika modellen. Se exempel på chattmallar i HuggingFace-dokumentationen för mer information om mallar.
- Instruktion finjustering: Träna din modell på strukturerade prompt-response-data. Använd det här alternativet om du vill anpassa din modell till en ny uppgift, ändra svarsstilen eller lägga till instruktioner. Den här uppgiften tillämpar inte automatiskt någon formatering på dina data och rekommenderas endast när anpassad dataformatering krävs.
- Fortsatt förträning: Träna din modell med ytterligare textdata. Använd det här alternativet om du vill lägga till ny kunskap i en modell eller fokusera en modell på en specifik domän.
Krav
- En Databricks-arbetsyta i någon av följande Azure-regioner:
centralus
, ,eastus
eastus2
,northcentralus
ellerwestus
. - Foundation Model Finjusterings-API:er installerade med .
pip install databricks_genai
- Databricks Runtime 12.2 LTS ML eller senare om dina data finns i en Delta-tabell.
Se Förbereda data för Foundation Model Finjustering för information om nödvändiga indataformat.
Rekommenderad datastorlek för modellträning
Databricks rekommenderar att du först tränar med en till fyra epoker. När du har utvärderat din finjusterade modell kan du börja träna med en till två epoker om du vill att modellutdata ska likna dina träningsdata.
Om modellprestandan minskar avsevärt för uppgifter som inte representeras i dina finjusteringsdata, eller om modellen verkar mata ut exakta kopior av dina finjusteringsdata, rekommenderar Databricks att minska antalet träningsepoker.
För att justera instruktioner och avsluta chattar bör du tillhandahålla tillräckligt med token för minst en fullständig kontextlängd för modellen. Till exempel 131072 token för meta-llama/Llama-3.2-3B-Instruct
.
För fortsatt förträning rekommenderar Databricks minst 1,5 miljoner token för att få en modell av högre kvalitet som lär sig dina anpassade data.
Modeller som stöds
I följande tabell visas modeller som stöds. Se modelllicenser för den tillämpliga modelllicensen och information om godtagbar användningsprincip.
För att fortsätta stödja de mest toppmoderna modellerna kan Databricks uppdatera modeller som stöds eller dra tillbaka äldre modeller. Se modeller som ska dras tillbaka.
Modell | Maximal kontextlängd | Kommentar |
---|---|---|
meta-llama/Llama-3.2-1B |
131072 | |
meta-llama/Llama-3.2-1B-Instruct |
131072 | |
meta-llama/Llama-3.2-3B |
131072 | |
meta-llama/Llama-3.2-3B-Instruct |
131072 | |
meta-llama/Meta-Llama-3.1-70B |
131072 | |
meta-llama/Meta-Llama-3.1-70B-Instruct |
131072 | |
meta-llama/Meta-Llama-3.1-8B |
131072 | |
meta-llama/Meta-Llama-3.1-8B-Instruct |
131072 |
Modeller som ska dras tillbaka
I följande tabell visas modeller som stöds och som är planerade att dras tillbaka. Se Pensionerade modeller för pensionerade modeller, planerade pensionsdatum för modeller och rekommenderade ersättningsmodeller.
Viktigt!
Efter den 30 januari 2025 har Meta Llama 3.1 405B-modellfamiljen dragits tillbaka. Se Äldre modeller för rekommenderade ersättningsmodeller.
Modell | Maximal kontextlängd | Kommentar |
---|---|---|
mistralai/Mistral-7B-v0.1 |
32768 | Den här modellen stöds inte längre efter den 30 april 2025. |
mistralai/Mistral-7B-Instruct-v0.2 |
32768 | Den här modellen stöds inte längre efter den 30 april 2025. |
mistralai/Mixtral-8x7B-v0.1 |
32768 | Den här modellen stöds inte längre efter den 30 april 2025. |
databricks/dbrx-base |
32768 | Den här modellen stöds inte längre efter den 30 april 2025. |
databricks/dbrx-instruct |
32768 | Den här modellen stöds inte längre efter den 30 april 2025. |
modelllicenser
Följande tabell innehåller tillämplig modelllicens och principinformation om godtagbar användning för de modellfamiljer som stöds.
Modellfamilj | Licens och godtagbar användningsprincip |
---|---|
Meta Llama 3.2 | Meta Llama 3.2 är licensierad enligt LLAMA 3.2 Community License, Copyright © Meta Platforms, Inc. Alla rättigheter reserverade. Kunderna ansvarar för att säkerställa att de följer villkoren i den här licensen och llama 3.2-principen för godtagbar användning. |
Meta Llama 3.1 | Meta Llama 3.1 är licensierad enligt LLAMA 3.1 Community License, Copyright © Meta Platforms, Inc. Alla rättigheter reserverade. Kunderna ansvarar för att säkerställa efterlevnaden av tillämpliga modelllicenser. |
DBRX | DBRX tillhandahålls under och omfattas av Databricks Open Model License, Copyright © Databricks, Inc. Alla rättigheter reserverade. Kunderna ansvarar för att säkerställa efterlevnaden av tillämpliga modelllicenser, inklusive policyn för godtagbar användning av Databricks. |
Använda finjustering av grundmodell
Finjustering av grundmodellen är tillgänglig med hjälp av databricks_genai
SDK. I följande exempel skapas och startas en träningskörning som använder data från Unity Catalog-volymer. Mer information finns i Skapa en träningskörning med hjälp av API :et för finjustering av foundation-modellen.
from databricks.model_training import foundation_model as fm
model = 'meta-llama/Meta-Llama-3.1-8B-Instruct'
# UC Volume with JSONL formatted data
train_data_path = 'dbfs:/Volumes/main/mydirectory/ift/train.jsonl'
register_to = 'main.mydirectory'
run = fm.create(
model=model,
train_data_path=train_data_path,
register_to=register_to,
)
Se instruktionens finjustering: Den namngivna demoanteckningsboken För entitetsigenkänning finns ett exempel på finjustering av instruktioner som går igenom dataförberedelser, finjustering av träningskörningskonfiguration och distribution.
Begränsningar
Stora datamängder (10B+ token) stöds inte på grund av beräkningstillgänglighet.
För fortsatt förträning är arbetsbelastningar begränsade till 60–256 MB-filer. Filer som är större än 1 GB kan orsaka längre bearbetningstider.
Databricks strävar efter att göra de senaste toppmoderna modellerna tillgängliga för anpassning med hjälp av Foundation Model Fine-tuning. När nya modeller blir tillgängliga kan åtkomst till äldre modeller från API:et eller användargränssnittet tas bort, äldre modeller kan vara inaktuella eller modeller som stöds uppdateras. Se Underhållsprincip för generativa AI-modeller.
Om du har konfigurerat Azure Private Link på din arbetsyta, stöder finjustering av grundmodeller endast Azure-arbetsytor i
eastus2
.Om du har konfigurerat Private Link på lagringen rekommenderar Databricks att du använder Unity Catalog-tabeller.
Om du har brandväggar aktiverade på Azure Data Lake Storage-kontot som lagrar dina data i Unity Catalog måste du vitlista trafik från Databricks serverlösa dataplattformskluster för att kunna använda finjustering av grundmodeller. Kontakta ditt Databricks-kontoteam för mer information och möjliga anpassade lösningar.