Aracılığıyla paylaş


Dökümhane Temsilci Hizmet Kodu Çözücü

Uyarı

Bu belge aracılar API'sinin klasik sürümünü ifade eder.

🔍 Yeni Kod Yorumlayıcı belgelerini görüntüleyin.

Kod Yorumlayıcı, aracıların korumalı bir yürütme ortamında Python kodu yazmasına ve çalıştırmasına olanak tanır. Kod Yorumlayıcı etkinleştirildiğinde, aracınız daha zorlu kod, matematik ve veri analizi sorunlarını çözmek veya grafikler ve grafikler oluşturmak için kodu yinelemeli olarak çalıştırabilir. Aracı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. Aracınız kod yorumlayıcıyı aynı anda iki farklı iş parçacığında çağırırsa, iki kod yorumlayıcı oturumu oluşturulur. Her oturum varsayılan olarak 1 saat boyunca etkindir ve boşta kalma süresi 30 dakikadır.

Önkoşullar

Kod örnekleri

Kod yorumlayıcı ile aracı oluşturma

code_interpreter = CodeInterpreterTool()

# An agent is created with the Code Interpreter capabilities:
agent = project_client.agents.create_agent(
    model=os.environ["MODEL_DEPLOYMENT_NAME"],
    name="my-agent",
    instructions="You are helpful agent",
    tools=code_interpreter.definitions,
    tool_resources=code_interpreter.resources,
)

Kod yorumlayıcının kullanması için dosya ekleme

Bir dosyanın kod yorumlayıcı ile kullanılmasını istiyorsanız işlevini kullanabilirsiniz upload_and_poll .

file = agents_client.files.upload_and_poll(file_path=asset_file_path, purpose=FilePurpose.AGENTS)
print(f"Uploaded file, file ID: {file.id}")

code_interpreter = CodeInterpreterTool(file_ids=[file.id])

Kod yorumlayıcı ile aracı oluşturma

var projectEndpoint = System.Environment.GetEnvironmentVariable("ProjectEndpoint");
var modelDeploymentName = System.Environment.GetEnvironmentVariable("ModelDeploymentName");

PersistentAgentsClient client = new(projectEndpoint, new DefaultAzureCredential());

PersistentAgent agent = client.Administration.CreateAgent(
    model: modelDeploymentName,
    name: "My Friendly Test Agent",
    instructions: "You politely help with math questions. Use the code interpreter tool when asked to visualize numbers.",
    tools: [new CodeInterpreterToolDefinition()]
);

Kod yorumlayıcının kullanması için dosya ekleme

Bir dosyanın kod yorumlayıcıyla birlikte kullanılmasını istiyorsanız, bunu iletinize ekleyebilirsiniz.

PersistentAgentFileInfo uploadedAgentFile = client.Files.UploadFile(
    filePath: "sample_file_for_upload.txt",
    purpose: PersistentAgentFilePurpose.Agents);
var fileId = uploadedAgentFile.Id;

var attachment = new MessageAttachment(
    fileId: fileId,
    tools: tools
);

// attach the file to the message
PersistentThreadMessage message = client.Messages.CreateMessage(
    threadId: thread.Id,
    role: MessageRole.User,
    content: "Can you give me the documented information in this file?",
    attachments: [attachment]
);

Kod yorumlayıcı ile aracı oluşturma

// Create the code interpreter tool
const codeInterpreterTool = ToolUtility.createCodeInterpreterTool();

// Enable the code interpreter tool during agent creation
const agent = await client.createAgent("gpt-4o", {
  name: "my-agent",
  instructions: "You are a helpful agent",
  tools: [codeInterpreterTool.definition],
  toolResources: codeInterpreterTool.resources,
});
console.log(`Created agent, agent ID: ${agent.id}`);

Kod yorumlayıcının kullanması için dosya ekleme

Bir dosyanın kod yorumlayıcıyla birlikte kullanılmasını istiyorsanız, dosyayı aracıya ekleyebilirsiniz.

// Upload file and wait for it to be processed
const filePath = "./examplefile.csv";
const localFileStream = fs.createReadStream(filePath);
const localFile = await client.files.upload(localFileStream, "assistants", {
  fileName: "localFile",
});
// Create code interpreter tool
const codeInterpreterTool = ToolUtility.createCodeInterpreterTool([localFile.id]);

Kod yorumlayıcı aracısıyla aracı oluşturma

curl --request POST \
  --url $AZURE_AI_FOUNDRY_PROJECT_ENDPOINT/assistants?api-version=$API_VERSION \
  -H "Authorization: Bearer $AGENT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "instructions": "You are an AI assistant that can write code to help answer math questions.",
    "tools": [
      { "type": "code_interpreter" }
    ],
    "model": "gpt-4o-mini",
    "tool_resources"{
      "code interpreter": {
      }
    }
  }'
String agentName = "code_interpreter_agent";
CodeInterpreterToolDefinition ciTool = new CodeInterpreterToolDefinition();
CreateAgentOptions createAgentOptions = new CreateAgentOptions(modelName).setName(agentName).setInstructions("You are a helpful agent").setTools(Arrays.asList(ciTool));
PersistentAgent agent = administrationClient.createAgent(createAgentOptions);

Kod yorumlayıcının kullanması için dosya ekleme

Bir dosyanın kod yorumlayıcıyla birlikte kullanılmasını istiyorsanız, dosyayı aracıya ekleyebilirsiniz.

FileInfo uploadedFile = filesClient.uploadFile(new UploadFileRequest(
    new FileDetails(BinaryData.fromFile(htmlFile))
    .setFilename("sample.html"), FilePurpose.AGENTS));

MessageAttachment messageAttachment = new MessageAttachment(Arrays.asList(BinaryData.fromObject(ciTool))).setFileId(uploadedFile.getId());

PersistentAgentThread thread = threadsClient.createThread();
ThreadMessage createdMessage = messagesClient.createMessage(
    thread.getId(),
    MessageRole.USER,
    "What does the attachment say?",
    Arrays.asList(messageAttachment),
    null);

Desteklenen modeller

Modeller sayfası , aracı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 Aracıları en son modellerle kullanmanızı öneririz.

Desteklenen dosya türleri

Dosya biçimi MIME Türü
.c text/x-c
.cpp text/x-c++
.csv application/csv
.docx application/vnd.openxmlformats-officedocument.wordprocessingml.document
.html text/html
.java text/x-java
.json application/json
.md text/markdown
.pdf application/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 text/x-tex
.txt text/plain
.css text/css
.jpeg image/jpeg
.jpg image/jpeg
.js text/javascript
.gif image/gif
.png image/png
.tar application/x-tar
.ts application/typescript
.xlsx application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xml application/xml veya text/xml
.zip application/zip