API för Azure OpenAI Assistants (förhandsversion)

Assistenter, en ny funktion i Azure OpenAI Service, är nu tillgängliga i offentlig förhandsversion. Api för assistenter gör det enklare för utvecklare att skapa program med avancerade copilot-liknande upplevelser som kan söka igenom data, föreslå lösningar och automatisera uppgifter.

  • Assistenter kan anropa Azure OpenAI:s modeller med specifika instruktioner för att finjustera deras personlighet och funktioner.
  • Assistenter kan komma åt flera verktyg parallellt. Dessa kan vara både Azure OpenAI-värdbaserade verktyg som kodtolkare och filsökning, eller verktyg som du skapar, är värd för och åtkomst via funktionsanrop.
  • Assistenter kan komma åt beständiga trådar. Trådar förenklar UTVECKLINGEN av AI-program genom att lagra meddelandehistoriken och trunkera den när konversationen blir för lång för modellens kontextlängd. Du skapar en tråd en gång och lägger helt enkelt till Meddelanden till den när användarna svarar.
  • Assistenter kan komma åt filer i flera format. Antingen som en del av skapandet eller som en del av trådar mellan assistenter och användare. När du använder verktyg kan assistenter också skapa filer (till exempel bilder eller kalkylblad) och citera filer som de refererar till i meddelandena som de skapar.

Översikt

Tidigare behövde anpassade AI-assistenter tunga lyft även för erfarna utvecklare. Api:et för chattavslut är enkelt och kraftfullt, men är i sig tillståndslöst, vilket innebär att utvecklare var tvungna att hantera konversationstillstånd och chatttrådar, verktygsintegreringar, hämta dokument och index och köra kod manuellt.

Api:et Assistants är den tillståndskänsliga utvecklingen av API:et för chattens slutförande och tillhandahåller en lösning för dessa utmaningar. Api för assistenter stöder beständiga automatiskt hanterade trådar. Det innebär att du som utvecklare inte längre behöver utveckla system för hantering av konversationstillstånd och kringgå en modells begränsningar för kontextfönster. Api:et Assistenter hanterar automatiskt optimeringarna för att hålla tråden under det maximala kontextfönstret för den valda modellen. När du har skapat en tråd kan du helt enkelt lägga till nya meddelanden i den när användarna svarar. Assistenter kan också komma åt flera verktyg parallellt, om det behövs. Dessa verktyg innefattar:

Dricks

Det finns ingen ytterligare prissättning eller kvot för att använda assistenter om du inte använder kodtolkaren eller filsökningsverktygen.

Api för assistenter bygger på samma funktioner som driver OpenAI:s GPT-produkt. Vissa möjliga användningsfall sträcker sig från AI-drivna produktrekommendatorer, försäljningsanalytikerapp, kodningsassistent, Q&A-chattrobot för anställda med mera. Börja bygga på lekplatsen för assistenter utan kod i Azure AI Studio eller börja skapa med API:et.

Viktigt!

Om du hämtar data som inte är betrodda med funktionsanrop, kodtolkare eller filsökning med filindata och funktioner för assistenttrådar kan det äventyra säkerheten för assistenten eller det program som använder assistenten. Lär dig mer om minskningsmetoder här.

Assistenter lekplats

Vi ger en genomgång av assistenternas lekplats i vår snabbstartsguide. Detta ger en kodfri miljö för att testa funktionerna i assistenter.

Komponenter för assistenter

Ett diagram som visar komponenterna i en assistent.

Komponent Beskrivning
Assistent Anpassad AI som använder Azure OpenAI-modeller tillsammans med verktyg.
Tråd En konversationssession mellan en assistent och en användare. Trådar lagrar meddelanden och hanterar automatiskt trunkering för att passa in innehåll i en modells kontext.
Meddelande Ett meddelande som skapats av en assistent eller en användare. Meddelanden kan innehålla text, bilder och andra filer. Meddelanden lagras som en lista i tråden.
Springa Aktivering av en assistent för att börja köras baserat på innehållet i tråden. Assistenten använder sin konfiguration och trådens meddelanden för att utföra uppgifter genom att anropa modeller och verktyg. Som en del av en Körning lägger assistenten till meddelanden i tråden.
Kör steg En detaljerad lista över steg som assistenten vidtog som en del av en körning. En assistent kan anropa verktyg eller skapa meddelanden under körningen. Genom att undersöka körningssteg kan du förstå hur assistenten kommer till sina slutliga resultat.

Assistentens dataåtkomst

För närvarande är assistenter, trådar, meddelanden och filer som skapats för assistenter begränsade på Azure OpenAI-resursnivå. Därför kan alla som har åtkomst till Azure OpenAI-resursen eller API-nyckelåtkomsten läsa/skriva assistenter, trådar, meddelanden och filer.

Vi rekommenderar starkt följande kontroller för dataåtkomst:

  • Implementera auktorisering. Innan du utför läsningar eller skrivningar på assistenter, trådar, meddelanden och filer kontrollerar du att slutanvändaren har behörighet att göra det.
  • Begränsa åtkomsten till Azure OpenAI-resurser och API-nycklar. Överväg noggrant vem som har åtkomst till Azure OpenAI-resurser där assistenter används och associerade API-nycklar.
  • Granska rutinmässigt vilka konton/individer som har åtkomst till Azure OpenAI-resursen. API-nycklar och åtkomst på resursnivå möjliggör en mängd olika åtgärder, inklusive läsning och ändring av meddelanden och filer.
  • Aktivera diagnostikinställningar för att tillåta långsiktig spårning av vissa aspekter av Azure OpenAI-resursens aktivitetslogg.

Parametrar

API:et Assistenter har stöd för flera parametrar som gör att du kan anpassa assistenternas utdata. Med tool_choice parametern kan du tvinga assistenten att använda ett angivet verktyg. Du kan också skapa meddelanden med assistant rollen för att skapa anpassade konversationshistoriker i trådar. temperature, top_p, response_format kan du finjustera svar ytterligare. Mer information finns i referensdokumentationen.

Hantering av kontextfönster

Assistenter trunkerar automatiskt text för att säkerställa att den håller sig inom modellens maximala kontextlängd. Du kan anpassa det här beteendet genom att ange de maximala token som du vill att en körning ska använda och/eller det maximala antalet senaste meddelanden som du vill inkludera i en körning.

Maximalt antal slutförda och maximala prompttoken

Om du vill styra tokenanvändningen i en enda Körning anger du max_prompt_tokens och max_completion_tokens när du skapar Körningen. Dessa gränser gäller för det totala antalet token som används i alla slutföranden under körningens livscykel.

Om du till exempel initierar en Körning med max_prompt_tokens värdet 500 och max_completion_tokens är inställd på 1 000 kommer den första slutförandet att trunkera tråden till 500 token och begränsa utdata till 1 000 token. Om endast 200 prompttoken och 300 slutförandetoken används i det första slutförandet har den andra slutförandet tillgängliga gränser på 300 prompttoken och 700 slutförandetoken.

Om ett slutförande når gränsen avslutas max_completion_tokens Körningen med statusen ofullständig och information kommer att anges i incomplete_details fältet för Kör-objektet.

När du använder filsökningsverktyget rekommenderar vi att du anger max_prompt_tokens till inte mindre än 20 000. För längre konversationer eller flera interaktioner med filsökning kan du överväga att öka den här gränsen till 50 000, eller helst ta bort max_prompt_tokens gränserna helt och hållet för att få resultat av högsta kvalitet.

Trunkeringsstrategi

Du kan också ange en trunkeringsstrategi för att styra hur tråden ska återges i modellens kontextfönster. Om du använder en trunkeringsstrategi av typen auto använder du OpenAI:s standardstrategi för trunkering. Om du använder en trunkeringsstrategi av typen last_messages kan du ange antalet av de senaste meddelandena som ska inkluderas i kontextfönstret.

Se även