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_interpreter zijn, 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. |
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor