Aracılığıyla paylaş


Azure OpenAI Yardımcıları Kod Yorumlayıcısı (Önizleme)

Not

Azure AI Foundry Agent Hizmeti, daha fazla araç ve daha iyi kurumsal özellikler sağlayan Genel Kullanıma sunuldu. En son özellik güncelleştirmeleri ve iyileştirmeleri için yeni hizmeti kullanmanızı öneririz.

Kod Yorumlayıcısı, Yardımcılar API'sinin korumalı bir yürütme ortamında Python kodu yazmasına ve çalıştırmasına olanak tanır. Kod Yorumlayıcısı etkinleştirildiğinde, Yardımcınız daha zorlu kod, matematik ve veri analizi sorunlarını çözmek için kodu yinelemeli olarak çalıştırabilir. Yardımcınız çalıştırılamıyor kodu yazdığında, kod yürütme başarılı olana kadar farklı kodu değiştirip çalıştırarak bu kodu yineleyebilir.

Önemli

Kod Yorumlayıcısı'nda, Azure OpenAI kullanımı için alınan belirteç tabanlı ücretlerin ötesinde ek ücretler söz konusudur. Yardımcınız kod yorumlayıcısını aynı anda iki farklı iş parçacığında çağırırsa iki kod yorumlayıcısı oturumu oluşturulur. Her oturum varsayılan olarak 1 saat boyunca etkindir ve boşta kalma süresi 30 dakikadır.

Kod yorumlayıcı desteği

Desteklenen modeller

Modeller sayfası , Yardımcıların ve kod yorumlayıcının desteklendiği bölgeler/modeller hakkında en güncel bilgileri içerir.

Yeni özelliklerden, daha büyük bağlam pencerelerinden ve daha güncel eğitim verilerinden yararlanmak için yardımcıları en son modellerle kullanmanızı öneririz.

API Sürümleri

  • Başlangıç: 2024-02-15-preview

Desteklenen dosya türleri

Dosya biçimi MIME Türü
c. metin/x-c
.Cpp text/x-c++
.csv uygulama/csv
.docx Uygulama türü: application/vnd.openxmlformats-officedocument.wordprocessingml.document
.html metin/html
.java text/x-java
.json uygulama/json
.md text/markdown
.pdf uygulama/pdf
.php text/x-php
.pptx application/vnd.openxmlformats-officedocument.presentationml.presentation
.py text/x-python
.py text/x-script.python
.Rb text/x-ruby
.Tex metin/x-tex
.txt düz metin
.Css metin/css
.jpeg resim/jpeg
.jpg resim/jpeg
.js text/javascript
.gif resim/gif
.png resim/png
.tar application/x-tar
.Ts application/typescript
.xlsx application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xml application/xml veya "text/xml"
.zip Uygulama/zip

Dosya yükleme API'si başvurusu

Yardımcılar, dosya yükleme için ince ayar ile aynı API'yi kullanır. Bir dosyayı karşıya yüklerken, amaç parametresi için uygun bir değer belirtmeniz gerekir.

Kod Yorumlayıcısını Etkinleştirme

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"}]
)

Kod Yorumlayıcı için karşıya dosya yükleme

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]}}
)

Dosyayı tek bir iş parçacığına geçirme

Dosyaları Yardımcılar düzeyinde erişilebilir hale getirmenin yanı sıra, dosyaları geçirerek yalnızca belirli bir iş parçacığı için erişilebilir olmasını sağlayabilirsiniz.

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" 
    }
  ]
)

Kod Yorumlayıcı tarafından oluşturulan dosyaları indirme

Kod Yorumlayıcı tarafından oluşturulan dosyalar Yardımcı ileti yanıtlarında bulunabilir

 {
      "id": "msg_oJbUanImBRpRran5HSa4Duy4",
      "assistant_id": "asst_eHwhP4Xnad0bZdJrjHO2hfB4",
      "content": [
        {
          "image_file": {
            "file_id": "assistant-1YGVTvNzc2JXajI5JU9F0HMD"
          },
          "type": "image_file"
        },
        # ...
 }

Dosyaları dosyalar API'sine geçirerek bu oluşturulan dosyaları indirebilirsiniz:

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)

Ayrıca bkz.