Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga
Usługa agenta usługi Azure AI Foundry jest teraz ogólnie dostępna, co zapewnia więcej narzędzi i lepszych funkcji przedsiębiorstwa. Zalecamy korzystanie z nowej usługi w celu uzyskania najnowszych aktualizacji i ulepszeń funkcji.
Interpreter kodu umożliwia interfejsowi API Asystenta pisanie i uruchamianie kodu w języku Python w piaskownicowym środowisku wykonawczym. Po włączeniu interpretera kodów asystent może uruchamiać kod iteracyjnie, aby rozwiązać trudniejsze problemy z kodem, matematyką i analizą danych. Gdy Asystent zapisuje kod, który nie może uruchomić, może iterować ten kod, modyfikując i uruchamiając inny kod do momentu pomyślnego wykonania kodu.
Ważne
Z interpreterem kodów wiążą się dodatkowe opłaty poza opłatami opartymi na tokenach za użycie usługi Azure OpenAI. Jeśli asystent wywołuje interpretera kodów jednocześnie w dwóch różnych wątkach, tworzone są dwie sesje interpretera kodów. Każda sesja jest domyślnie aktywna przez 1 godzinę z limitem czasu bezczynności 30 minut.
Obsługa interpretera kodu
Obsługiwane modele
Strona modeli zawiera najbardziej aktualne informacje dotyczące regionów/modeli, w których obsługiwane są asystenty i interpreter kodu.
Zalecamy używanie asystentów z najnowszymi modelami, aby korzystać z nowych funkcji, większych okien kontekstowych i bardziej aktualnych danych treningowych.
Wersje interfejsu API
- Rozpoczynanie w
2024-02-15-preview
Typy obsługiwanych plików
Format pliku | Typ MIME |
---|---|
.c | tekst/x-c |
.cpp | text/x-c++ |
.csv | aplikacja/csv |
.docx | application/vnd.openxmlformats-officedocument.wordprocessingml.document |
.html | tekst/html |
.java | text/x-java |
.json | aplikacja/json |
.md | tekst/markdown |
aplikacja/plik PDF | |
.php | text/x-php |
.pptx | application/vnd.openxmlformats-officedocument.presentationml.presentation |
.Py | text/x-python |
.Py | text/x-script.python |
.Rb | tekst/x-ruby |
.tex | text/x-tex |
txt | tekst/zwykły |
.css | tekst/css |
.jpeg | image/jpeg |
.jpg | image/jpeg |
js | text/javascript |
.gif | obraz/gif |
.png | image/png |
.tar | aplikacja/x-tar |
.Ts | application/typescript |
.xlsx | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
.xml | application/xml lub "text/xml" |
.zip | aplikacja/zip |
Specyfikacja interfejsu API przesyłania plików
Asystenci używają tego samego interfejsu API do przekazywania plików w ramach dostrajania. Podczas przekazywania pliku należy określić odpowiednią wartość parametru purpose.
Włączanie interpretera kodu
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"}]
)
Przekazywanie pliku dla interpretera kodu
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"}],
tool_resources={"code_interpreter":{"file_ids":[file.id]}}
)
Przekazywanie pliku do pojedynczego wątku
Oprócz udostępniania plików na poziomie Asystentów można przekazywać pliki, aby były dostępne tylko dla określonego wątku.
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"
}
]
)
Pobieranie plików generowanych przez interpreter kodu
Pliki generowane przez interpreter kodu można znaleźć w odpowiedziach na komunikaty Asystenta
{
"id": "msg_oJbUanImBRpRran5HSa4Duy4",
"assistant_id": "asst_eHwhP4Xnad0bZdJrjHO2hfB4",
"content": [
{
"image_file": {
"file_id": "assistant-1YGVTvNzc2JXajI5JU9F0HMD"
},
"type": "image_file"
},
# ...
}
Te wygenerowane pliki można pobrać, przekazując pliki do interfejsu API plików:
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)
Zobacz też
- Dokumentacja interfejsu API przekazywania plików
- Dokumentacja interfejsu API asystentów
- Dowiedz się więcej na temat korzystania z asystentów, korzystając z naszego przewodnika z instrukcjami dotyczącymi asystentów.
- Przykłady interfejsu API asystentów openAI platformy Azure