Delen via


Naslaginformatie voor assistenten-API (preview)

Notitie

  • Bestanden zoeken kan maximaal 10.000 bestanden per assistent opnemen - 500 keer meer dan voorheen. Het is snel, ondersteunt parallelle query's via zoekopdrachten met meerdere threads en biedt verbeterde herrankering en herschrijven van query's.
    • Vector Store is een nieuw object in de API. Zodra een bestand is toegevoegd aan een vectorarchief, wordt het automatisch geparseerd, gesegmenteerd en ingesloten, zodat het kan worden doorzocht. Vectorarchieven kunnen worden gebruikt voor assistenten en threads, waardoor bestandsbeheer en facturering worden vereenvoudigd.
  • We hebben ondersteuning toegevoegd voor de tool_choice parameter die kan worden gebruikt om het gebruik van een specifiek hulpprogramma (zoals het zoeken van bestanden, code-interpreter of een functie) in een bepaalde uitvoering af te dwingen.

Dit artikel bevat referentiedocumentatie voor Python en REST voor de nieuwe Assistants-API (preview). Meer uitgebreide stapsgewijze richtlijnen vindt u in de introductiehandleiding.

Een assistent maken

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants?api-version=2024-05-01-preview

Maak een assistent met een model en instructies.

Aanvraagtekst

Name Type Vereist Beschrijving
model tekenreeks Vereist Modelimplementatienaam van het model dat moet worden gebruikt.
naam tekenreeks of null Optioneel De naam van de assistent. De maximale lengte is 256 tekens.
beschrijving tekenreeks of null Optioneel De beschrijving van de assistent. De maximale lengte is 512 tekens.
Instructies tekenreeks of null Optioneel De systeeminstructies die de assistent gebruikt. De maximale lengte is 256.000 tekens.
tools matrix Optioneel De standaardwaarde is []. Een lijst met hulpprogramma's die zijn ingeschakeld voor de assistent. Er kunnen maximaal 128 hulpprogramma's per assistent zijn. Hulpprogramma's kunnen momenteel van het type code_interpreterzijn, of function. Een function beschrijving mag maximaal 1024 tekens bevatten.
file_ids matrix Optioneel De standaardwaarde is []. Een lijst met bestands-id's die aan deze assistent zijn gekoppeld. Er kunnen maximaal 20 bestanden aan de assistent zijn gekoppeld. Bestanden worden gerangschikt op de aanmaakdatum in oplopende volgorde.
metagegevens map Optioneel Set van 16 sleutel-waardeparen die aan een object kunnen worden gekoppeld. Dit kan handig zijn voor het opslaan van aanvullende informatie over het object in een gestructureerde indeling. Sleutels mogen maximaal 64 tekens lang zijn en waarden mogen maximaal 512 tekens lang zijn.
temperatuur getal of null Optioneel Standaardwaarde is 1. Bepaalt welke steekproeftemperatuur moet worden gebruikt, tussen 0 en 2. Hogere waarden zoals 0,8 zorgen ervoor dat de uitvoer willekeuriger wordt, terwijl lagere waarden zoals 0,2 ervoor zorgen dat de uitvoer meer gericht en deterministisch wordt.
top_p getal of null Optioneel Standaardwaarde is 1. Een alternatief voor steekproeven met temperatuur, zogenaamde kernsampling, waarbij het model rekening houdt met de resultaten van de tokens met top_p waarschijnlijkheidsmassa. 0,1 betekent dus dat alleen de tokens die de top 10% kansdichtheid omvatten, worden beschouwd. Over het algemeen raden we u aan deze of temperatuur te wijzigen, maar niet beide.
response_format tekenreeks of object Optioneel Hiermee geeft u de indeling op die het model moet uitvoeren. Compatibel met GPT-4 Turbo en alle GPT-3.5 Turbo-modellen sinds gpt-3.5-turbo-1106. Als u deze parameter instelt om de JSON-modus in te { "type": "json_object" } schakelen, wat garandeert dat het bericht dat het model genereert, geldige JSON is. Belangrijk is dat u bij het gebruik van de JSON-modus ook het model moet instrueren om zelf JSON te produceren met behulp van een systeem- of gebruikersbericht. Zonder deze instructie kan het model een onverwerkte witruimtestroom genereren totdat de generatie de tokenlimiet bereikt, wat resulteert in een langlopende en schijnbaar 'vastgelopen' aanvraag. Bovendien kan de inhoud van het bericht gedeeltelijk worden afgekapt als u gebruikt finish_reason="length", wat aangeeft dat de generatie is overschreden max_tokens of dat het gesprek de maximale contextlengte heeft overschreden.

Retouren

Een assistentobject .

Voorbeeld van aanvraag voor assistent maken

from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

assistant = client.beta.assistants.create(
  instructions="You are an AI assistant that can write code to help answer math questions",
  model="<REPLACE WITH MODEL DEPLOYMENT NAME>", # replace with model deployment name. 
  tools=[{"type": "code_interpreter"}]
)

Assistentbestand maken

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}/files?api-version=2024-05-01-preview

Maak een assistentbestand door een File bijlage toe te voegen aan een assistant.

Padparameters

Parameter Type Vereist Beschrijving
assistant_id tekenreeks Vereist De id van de assistent waaraan het bestand moet worden gekoppeld.

Aanvraagbody

Name Type Vereist Beschrijving
file_id tekenreeks Vereist Een bestands-id (met purpose="assistenten") die de assistent moet gebruiken. Handig voor hulpprogramma's zoals code_interpreter die toegang hebben tot bestanden.

Retouren

Een assistentbestandsobject .

Voorbeeld van aanvraag voor assistentbestand maken

from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

assistant_file = client.beta.assistants.files.create(
  assistant_id="asst_abc123",
  file_id="assistant-abc123"
)
print(assistant_file)

Lijstassistenten

GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants?api-version=2024-05-01-preview

Retourneert een lijst met alle assistenten.

Queryparameters

Parameter Type Vereist Beschrijving
limit geheel getal Optioneel Een limiet voor het aantal objecten dat moet worden geretourneerd. De limiet kan variëren tussen 1 en 100 en de standaardwaarde is 20.
order tekenreeks Optioneel : standaardwaarden voor desc Sorteervolgorde op de created_at tijdstempel van de objecten. asc voor oplopende volgorde en desc voor aflopende volgorde.
after tekenreeks Optioneel Een cursor voor gebruik in paginering. after is een object-id die uw plaats in de lijst definieert. Als u bijvoorbeeld een lijstaanvraag indient en 100 objecten ontvangt die eindigen op obj_foo, kan de volgende aanroep na=obj_foo worden opgenomen om de volgende pagina van de lijst op te halen.
before tekenreeks Optioneel Een cursor voor gebruik in paginering. before is een object-id die uw plaats in de lijst definieert. Als u bijvoorbeeld een lijstaanvraag indient en 100 objecten ontvangt die eindigen op obj_foo, kan de volgende aanroep vóór=obj_foo worden opgenomen om de vorige pagina van de lijst op te halen.

Retouren

Een lijst met assistentobjecten

Voorbeelden van lijstassistenten

from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_assistants = client.beta.assistants.list(
    order="desc",
    limit="20",
)
print(my_assistants.data)

Assistentbestanden weergeven

GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}/files?api-version=2024-05-01-preview

Retourneert een lijst met assistentbestanden.

Padparameters

Parameter Type Vereist Beschrijving
assistant_id tekenreeks Vereist De id van de assistent waartoe het bestand behoort.

Queryparameters

Parameter Type Vereist Beschrijving
limit geheel getal Optioneel Een limiet voor het aantal objecten dat moet worden geretourneerd. De limiet kan variëren tussen 1 en 100 en de standaardwaarde is 20.
order tekenreeks Optioneel : standaardwaarden voor desc Sorteervolgorde op de created_at tijdstempel van de objecten. asc voor oplopende volgorde en desc voor aflopende volgorde.
after tekenreeks Optioneel Een cursor voor gebruik in paginering. after is een object-id die uw plaats in de lijst definieert. Als u bijvoorbeeld een lijstaanvraag indient en 100 objecten ontvangt die eindigen op obj_foo, kan de volgende aanroep na=obj_foo worden opgenomen om de volgende pagina van de lijst op te halen.
before tekenreeks Optioneel Een cursor voor gebruik in paginering. before is een object-id die uw plaats in de lijst definieert. Als u bijvoorbeeld een lijstaanvraag indient en 100 objecten ontvangt die eindigen op obj_foo, kan de volgende aanroep vóór=obj_foo worden opgenomen om de vorige pagina van de lijst op te halen.

Retouren

Een lijst met assistentbestandsobjecten

Voorbeeld van lijstassistentbestanden

from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

assistant_files = client.beta.assistants.files.list(
  assistant_id="asst_abc123"
)
print(assistant_files)

Assistent ophalen

GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-05-01-preview

Hiermee haalt u een assistent op.

Padparameters

Parameter Type Vereist Beschrijving
assistant_id tekenreeks Vereist De id van de assistent die moet worden opgehaald.

Retouren

Het assistentobject dat overeenkomt met de opgegeven id.

Voorbeeld van de assistent ophalen

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_assistant = client.beta.assistants.retrieve("asst_abc123")
print(my_assistant)

Assistentbestand ophalen

GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}/files/{file-id}?api-version=2024-05-01-preview

Hiermee haalt u een Assistent-bestand op.

Padparameters

Parameter Type Vereist Beschrijving
assistant_id tekenreeks Vereist De id van de assistent waartoe het bestand behoort.
file_id tekenreeks Vereist De id van het bestand dat we krijgen

Retouren

Het assistentbestandsobject dat overeenkomt met de opgegeven id

Voorbeeld van het ophalen van assistentbestand

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

assistant_file = client.beta.assistants.files.retrieve(
  assistant_id="asst_abc123",
  file_id="assistant-abc123"
)
print(assistant_file)

Assistent wijzigen

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-05-01-preview

Hiermee wijzigt u een assistent.

Padparameters

Parameter Type Vereist Beschrijving
assistant_id tekenreeks Vereist De id van de assistent waartoe het bestand behoort.

Hoofdtekst van aanvraag

Parameter Type Vereist Beschrijving
model Optioneel De naam van de modelimplementatie van het model dat moet worden gebruikt.
name tekenreeks of null Optioneel De naam van de assistent. De maximale lengte is 256 tekens.
description tekenreeks of null Optioneel De beschrijving van de assistent. De maximale lengte is 512 tekens.
instructions tekenreeks of null Optioneel De systeeminstructies die de assistent gebruikt. De maximale lengte is 32768 tekens.
tools matrix Optioneel De standaardwaarde is []. Een lijst met hulpprogramma's die zijn ingeschakeld voor de assistent. Er kunnen maximaal 128 hulpprogramma's per assistent zijn. Hulpprogramma's kunnen van het type code_interpreter of functie zijn. Een function beschrijving mag maximaal 1024 tekens bevatten.
file_ids matrix Optioneel De standaardwaarde is []. Een lijst met bestands-id's die aan deze assistent zijn gekoppeld. Er kunnen maximaal 20 bestanden aan de assistent zijn gekoppeld. Bestanden worden gerangschikt op de aanmaakdatum in oplopende volgorde. Als een bestand eerder aan de lijst is toegevoegd, maar niet wordt weergegeven in de lijst, wordt het uit de assistent verwijderd.
metadata map Optioneel Set van 16 sleutel-waardeparen die aan een object kunnen worden gekoppeld. Dit kan handig zijn voor het opslaan van aanvullende informatie over het object in een gestructureerde indeling. Sleutels mogen maximaal 64 tekens lang zijn en waarden mogen maximaal 512 tekens lang zijn.

Retouren

Het gewijzigde assistentobject.

Voorbeeld van wijzigingsassistent

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_updated_assistant = client.beta.assistants.update(
  "asst_abc123",
  instructions="You are an HR bot, and you have access to files to answer employee questions about company policies. Always respond with info from either of the files.",
  name="HR Helper",
  tools=[{"type": "code-interpreter"}],
  model="gpt-4", #model = model deployment name
  file_ids=["assistant-abc123", "assistant-abc456"],
)

print(my_updated_assistant)

Assistent verwijderen

DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-05-01-preview

Een assistent verwijderen.

Padparameters

Parameter Type Vereist Beschrijving
assistant_id tekenreeks Vereist De id van de assistent waartoe het bestand behoort.

Retouren

Verwijderingsstatus.

Voorbeeldassistent verwijderen

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

response = client.beta.assistants.delete("asst_abc123")
print(response)

Assistentbestand verwijderen

DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}/files/{file-id}?api-version=2024-05-01-preview

Een assistentbestand verwijderen.

Padparameters

Parameter Type Vereist Beschrijving
assistant_id tekenreeks Vereist De id van de assistent waartoe het bestand behoort.
file_id tekenreeks Vereist De id van het te verwijderen bestand

Retouren

Status van bestandsverwijdering

Voorbeeld van een assistentbestand verwijderen

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

deleted_assistant_file = client.beta.assistants.files.delete(
    assistant_id="asst_abc123",
    file_id="assistant-abc123"
)
print(deleted_assistant_file)

Api-verwijzing voor het uploaden van bestanden

Assistenten gebruiken dezelfde API voor het uploaden van bestanden als het afstemmen van bestanden. Bij het uploaden van een bestand moet u een geschikte waarde opgeven voor de doelparameter.

Assistentobject

Veld Type Omschrijving
id tekenreeks De id waarnaar kan worden verwezen in API-eindpunten.
object tekenreeks Het objecttype, dat altijd assistent is.
created_at geheel getal De Unix-tijdstempel (in seconden) voor het moment waarop de assistent is gemaakt.
name tekenreeks of null De naam van de assistent. De maximale lengte is 256 tekens.
description tekenreeks of null De beschrijving van de assistent. De maximale lengte is 512 tekens.
model tekenreeks De naam van de te gebruiken modelimplementatienaam.
instructions tekenreeks of null De systeeminstructies die de assistent gebruikt. De maximale lengte is 32768 tekens.
tools matrix Een lijst met hulpprogramma's die is ingeschakeld voor de assistent. Er kunnen maximaal 128 hulpprogramma's per assistent zijn. Hulpprogramma's kunnen van het type code_interpreter of functie zijn. Een function beschrijving mag maximaal 1024 tekens bevatten.
file_ids matrix Een lijst met bestands-id's die aan deze assistent zijn gekoppeld. Er kunnen maximaal 20 bestanden aan de assistent zijn gekoppeld. Bestanden worden gerangschikt op de aanmaakdatum in oplopende volgorde.
metadata map Set van 16 sleutel-waardeparen die aan een object kunnen worden gekoppeld. Dit kan handig zijn voor het opslaan van aanvullende informatie over het object in een gestructureerde indeling. Sleutels mogen maximaal 64 tekens lang zijn en waarden mogen maximaal 512 tekens lang zijn.

Assistentbestandsobject

Veld Type Omschrijving
id tekenreeks De id waarnaar kan worden verwezen in API-eindpunten.
object tekenreeks Het objecttype, dat altijd is assistant.file
created_at geheel getal De Unix-tijdstempel (in seconden) voor wanneer het assistentbestand is gemaakt.
assistant_id tekenreeks De assistent-id waaraan het bestand is gekoppeld.