Azure OpenAI Assistants kódértelmező (előzetes verzió)
A kódértelmező lehetővé teszi, hogy az asszisztens API Python-kódot írjon és futtasson egy tesztkörnyezetben. Ha a kódértelmező engedélyezve van, az asszisztens képes a kód iteratív futtatására a nagyobb kihívást jelentő kódolási, matematikai és adatelemzési problémák megoldásához. Ha az Asszisztens nem futtatható kódot ír, a kódon iterálhat úgy, hogy módosítja és futtatja a különböző kódot, amíg a kód végrehajtása sikeres nem lesz.
Fontos
A kódértelmező az Azure OpenAI használatának tokenalapú díjain túl további díjakkal is jár. Ha az asszisztense egyszerre két különböző szálon hívja meg a kódértelmezőt, két kódértelmező munkamenet jön létre. Minden munkamenet alapértelmezés szerint egy órán keresztül aktív.
Feljegyzés
- A fájlkeresés asszisztensenként akár 10 000 fájlt is betölthet – 500-szor több, mint korábban. Gyors, többszálas keresésekkel támogatja a párhuzamos lekérdezéseket, és továbbfejlesztett újrarangsorolást és lekérdezés-újraírást is kínál.
- A vektortároló egy új objektum az API-ban. Miután hozzáadnak egy fájlt egy vektortárolóhoz, a rendszer automatikusan elemzi, darabolja és beágyazza azt, és készen áll a keresésre. A vektortárolók segédeken és szálakon átnyúlóan is használhatók, így egyszerűbbé téve a fájlkezelést és a számlázást.
- Hozzáadtuk a
tool_choice
paraméter támogatását, amely egy adott eszköz (például fájlkeresés, kódértelmező vagy függvény) egy adott futtatáshoz való kényszerítésére használható.
Kódértelmező támogatása
Támogatott modellek
A modellek lap a legfrissebb információkat tartalmazza azokról a régiókról/modellekről, ahol az asszisztensek és a kódértelmezők támogatottak.
Javasoljuk, hogy a legújabb modellekkel rendelkező asszisztenseket használja az új funkciók, valamint a nagyobb környezetablakok és a naprakészebb betanítási adatok kihasználásához.
API-verziók
2024-02-15-preview
2024-05-01-preview
Támogatott fájltípusok
Fájlformátum | MIME-típus |
---|---|
c. | szöveg/x-c |
.Cpp | szöveg/x-c++ |
.csv | alkalmazás/csv |
.docx | application/vnd.openxmlformats-officedocument.wordprocessingml.document |
.html | szöveg/html |
.java | text/x-java |
.json | application/json |
.md | szöveg/markdown |
alkalmazás/pdf | |
.php | text/x-php |
.pptx | application/vnd.openxmlformats-officedocument.presentationml.presentation |
.py | szöveg/x-python |
.py | text/x-script.python |
.rb | szöveg/x-ruby |
.Tex | szöveg/x-tex |
.txt | text/plain |
.Css | szöveg/css |
.jpeg | kép/jpeg |
.jpg | kép/jpeg |
.js | text/javascript |
.gif | kép/gif |
.png | kép/png |
.kátrány | alkalmazás/x-tar |
.Ts | application/typescript |
.xlsx | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
.xml | application/xml vagy "text/xml" |
.zip | alkalmazás/zip |
Fájlfeltöltési API-referencia
Az asszisztensek ugyanazt az API-t használják a fájlfeltöltéshez, mint a finomhangolást. Fájl feltöltésekor meg kell adnia a célparaméter megfelelő értékét.
Kódértelmező engedélyezése
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"}]
)
Fájl feltöltése a Kódértelmezőhöz
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")
)
# Upload a file with an "assistants" purpose
file = client.files.create(
file=open("speech.py", "rb"),
purpose='assistants'
)
# Create an assistant using the file ID
assistant = client.beta.assistants.create(
instructions="You are an AI assistant that can write code to help answer math questions.",
model="gpt-4-1106-preview",
tools=[{"type": "code_interpreter"}],
file_ids=[file.id]
)
Fájl továbbítása egy adott szálra
Amellett, hogy a fájlokat akadálymentessé teszi az Asszisztensek szintjén, átadhatja a fájlokat, hogy csak egy adott szálhoz legyenek elérhetők.
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")
)
thread = client.beta.threads.create(
messages=[
{
"role": "user",
"content": "I need to solve the equation `3x + 11 = 14`. Can you help me?",
"file_ids": ["file.id"] # file id will look like: "assistant-R9uhPxvRKGH3m0x5zBOhMjd2"
}
]
)
A Code Interpret által létrehozott fájlok letöltése
A Kódértelmező által létrehozott fájlok az Asszisztens üzenetválaszaiban találhatók
{
"id": "msg_oJbUanImBRpRran5HSa4Duy4",
"assistant_id": "asst_eHwhP4Xnad0bZdJrjHO2hfB4",
"content": [
{
"image_file": {
"file_id": "assistant-1YGVTvNzc2JXajI5JU9F0HMD"
},
"type": "image_file"
},
# ...
}
Ezeket a létrehozott fájlokat úgy töltheti le, hogy átadja a fájlokat a files API-nak:
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")
)
image_data = client.files.content("assistant-abc123")
image_data_bytes = image_data.read()
with open("./my-image.png", "wb") as file:
file.write(image_data_bytes)
Lásd még
- Fájlfeltöltési API-referencia
- Assistants API-referencia
- További információ az Asszisztensek használatáról a Segédekről szóló útmutatónk segítségével.
- Azure OpenAI Assistants API-minták