Sdílet prostřednictvím


Uložené dokončování a destilování Azure OpenAI (Preview)

Uložené dokončování umožňuje zachytit historii konverzací z relací dokončení chatu, aby se používaly jako datové sady pro vyhodnocení a vyladění.

Podpora uložených dokončování

Podpora rozhraní API

Podpora byla poprvé přidána do 2024-10-01-preview

Typ nasazení

Aktuálně podporují pouze Standard nasazení modelů uložené dokončování.

Dostupnost modelů a oblastí

Oblast o1-preview, 2024-09-12 o1-mini, 2024-09-12 gpt-4o, 2024-08-06 gpt-4o, 2024-05-13 gpt-4o-mini, 2024-07-18
Švédsko – střed
Severní střed USA - - - -
USA – východ 2 - - - -

Konfigurace uložených dokončení

Pokud chcete povolit uložené dokončování pro nasazení Azure OpenAI, store nastavte parametr na True. Pomocí parametru metadata můžete rozšířit uloženou datovou sadu dokončení o další informace.

import os
from openai import AzureOpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider

token_provider = get_bearer_token_provider(
    DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default"
)

client = AzureOpenAI(
  azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT"), 
  azure_ad_token_provider=token_provider,
  api_version="2024-10-01-preview"
)

completion = client.chat.completions.create(
    
    model="gpt-4o", # replace with model deployment name
    store= True,
    metadata =  {
    "user": "admin",
    "category": "docs-test",
  },
    messages=[
    {"role": "system", "content": "Provide a clear and concise summary of the technical content, highlighting key concepts and their relationships. Focus on the main ideas and practical implications."},
    {"role": "user", "content": "Ensemble methods combine multiple machine learning models to create a more robust and accurate predictor. Common techniques include bagging (training models on random subsets of data), boosting (sequentially training models to correct previous errors), and stacking (using a meta-model to combine base model predictions). Random Forests, a popular bagging method, create multiple decision trees using random feature subsets. Gradient Boosting builds trees sequentially, with each tree focusing on correcting the errors of previous trees. These methods often achieve better performance than single models by reducing overfitting and variance while capturing different aspects of the data."}
    ]   
)

print(completion.choices[0].message)


Po povolení uložených dokončování pro nasazení Azure OpenAI se začnou zobrazovat na portálu Azure AI Foundry v podokně Uložené dokončování.

Snímek obrazovky s uloženými dokončeními uživatelského prostředí

Destilace

Destilace umožňuje převést vaše uložené doplňování na jemně vyladěnou datovou sadu. Běžným případem použití je použití uložených dokončení s větším výkonnějším modelem pro konkrétní úlohu a následné použití uložených dokončení k trénování menšího modelu na vysoce kvalitních příkladech interakcí modelu.

Při destilování se vyžaduje minimálně 10 uložených dokončení, ale doporučuje se poskytnout stovky až tisíce uložených dokončení, aby bylo možné dosáhnout nejlepších výsledků.

  1. V podokně Uložené dokončování na portálu Azure AI Foundry pomocí možností Filtru vyberte dokončení, se kterými chcete model trénovat.

  2. Chcete-li začít destilovat, vyberte Destil

    Snímek obrazovky s uloženými doplňovacími funkcemi User Experience (Uživatelské prostředí) se zvýrazněným destilem

  3. Vyberte model, který chcete doladit s datovou sadou dokončení uloženého dokončení.

    Snímek obrazovky s výběrem uloženého modelu destilace dokončení

  4. Ověřte, jakou verzi modelu chcete vyladit:

    Snímek obrazovky s uloženou verzí destilace dokončení

  5. Soubor .jsonl s náhodně vygenerovaným názvem se vytvoří jako trénovací datová sada z uložených dokončení. Vyberte soubor >Další.

    Poznámka:

    Uložené soubory pro destilační destilační přípravu nelze získat přístup přímo a nelze je exportovat externě nebo stáhnout.

    Snímek obrazovky s uloženým souborem JSONL trénovací datové sady pro dokončení

Zbývající kroky odpovídají typickým krokům ladění Azure OpenAI. Další informace najdete v naší příručce Začínáme s vyladěním.

Hodnocení

Vyhodnocení velkých jazykových modelů je kritickým krokem při měření jejich výkonu v různých úlohách a dimenzích. To je zvlášť důležité pro jemně vyladěné modely, kdy je důležité vyhodnotit zvýšení výkonu (nebo ztráty) z trénování. Důkladné vyhodnocení vám může pomoct pochopit, jak mohou různé verze modelu ovlivnit vaši aplikaci nebo scénář.

Uložené dokončování je možné použít jako datovou sadu pro spouštění vyhodnocení.

  1. V podokně Uložené dokončování na portálu Azure AI Foundry použijte možnosti filtru a vyberte dokončení, která chcete být součástí testovací datové sady.

  2. Pokud chcete nakonfigurovat vyhodnocení, vyberte Vyhodnotit.

    Snímek obrazovky s uloženým podoknem dokončení s vybraným vyhodnocením

  3. Tím se spustí podokno Vyhodnocení s předem vyplněným .jsonl souborem s náhodně vygenerovaným názvem, který se vytvoří jako testovací datová sada z uložených dokončení.

    Poznámka:

    K uloženým datovým souborům vyhodnocení dokončení nelze přistupovat přímo a nelze je exportovat externě nebo stáhnout.

    Snímek obrazovky s podoknem vyhodnocení

Další informace o vyhodnocení najdete v tématu Začínáme se zkušebními verzemi.

Řešení problému

Potřebuji speciální oprávnění k používání uložených dokončování?

Přístup k uloženým dokončováním se řídí dvěma akcemi DataAction:

  • Microsoft.CognitiveServices/accounts/OpenAI/stored-completions/read
  • Microsoft.CognitiveServices/accounts/OpenAI/stored-completions/action

Ve výchozím nastavení Cognitive Services OpenAI Contributor má přístup k oběma těmto oprávněním:

Snímek obrazovky s oprávněními k dokončení uloženým

Návody odstranit uložená data?

Data je možné odstranit odstraněním přidruženého prostředku Azure OpenAI. Pokud chcete odstranit pouze uložená data dokončení, musíte otevřít případ se zákaznickou podporou.

Kolik uložených dat dokončení můžu uložit?

Můžete uložit maximálně 10 GB dat.

Můžu zabránit povolení uložených dokončení v předplatném?

Pokud chcete zakázat uložené dokončování na úrovni předplatného, budete muset otevřít případ se zákaznickou podporou.

TypeError: Completions.create() získal neočekávaný argument Store.

K této chybě dochází v případě, že používáte starší verzi klientské knihovny OpenAI, která před vydáním uložené funkce dokončení předchází. Spusťte pip install openai --upgrade.