مترجم التعليمات البرمجية لمساعدي Azure OpenAI (معاينة)

يسمح مترجم التعليمات البرمجية لواجهة برمجة تطبيقات المساعدين بكتابة وتشغيل تعليمة Python البرمجية في بيئة تنفيذ آلية تحديد الوصول. مع تمكين مترجم التعليمات البرمجية، يمكن لمساعدك تشغيل التعليمات البرمجية بشكل متكرر لحل مشاكل أكثر صعوبة في التعليمات البرمجية والرياضيات وتحليل البيانات. عندما يكتب مساعدك التعليمات البرمجية التي تفشل في التشغيل، يمكن تكرارها على هذه التعليمة البرمجية عن طريق تعديل التعليمات البرمجية المختلفة وتشغيلها حتى ينجح تنفيذ التعليمات البرمجية.

هام

لدى مترجم التعليمات البرمجية رسوم إضافية تتجاوز الرسوم المستندة إلى الرمز المميز لاستخدام Azure OpenAI. إذا اتصل مساعدك بمترجم التعليمات البرمجية في وقت واحد في مؤشري ترابط مختلفين، يتم إنشاء جلستي مترجم التعليمات البرمجية. تكون كل جلسة عمل نشطة بشكل افتراضي لمدة ساعة واحدة.

إشعار

  • يمكن للبحث عن الملفات استيعاب ما يصل إلى 10000 ملف لكل مساعد - 500 مرة أكثر من ذي قبل. وهو سريع، ويدعم الاستعلامات المتوازية من خلال عمليات البحث متعددة مؤشرات الترابط، وميزات محسنة لإعادة الإرسال وإعادة كتابة الاستعلام.
    • مخزن المتجهات هو كائن جديد في واجهة برمجة التطبيقات. بمجرد إضافة ملف إلى مخزن متجهات، يتم تحليله تلقائيا، وتقسيمه، ودمجه، ويكون جاهزا للبحث فيه. يمكن استخدام مخازن المتجهات عبر المساعدين ومؤشرات الترابط، مما يبسط إدارة الملفات والفوترة.
  • لقد أضفنا دعما للمعلمة tool_choice التي يمكن استخدامها لفرض استخدام أداة معينة (مثل البحث في الملفات أو مترجم التعليمات البرمجية أو وظيفة) في تشغيل معين.

دعم مترجم التعليمات البرمجية

النماذج المدعومة

تحتوي صفحة النماذج على أحدث المعلومات حول المناطق/النماذج حيث يتم دعم المساعدين ومترجم التعليمات البرمجية.

نوصي باستخدام المساعدين الذين يستخدمون أحدث النماذج للاستفادة من الميزات الجديدة، بالإضافة إلى نوافذ السياق الأكبر، وبيانات التدريب الأحدث.

إصدارات واجهة برمجة التطبيقات

  • 2024-02-15-preview
  • 2024-05-01-preview

أنواع الملفات المدعومة

تنسيق الملف نوع الملفات
جـ. text/x-c
.حزب الشعب الكمبودي text/x-c++
.Csv application/csv
.docx application/vnd.openxmlformats-officedocument.wordprocessingml.document
.html text/html
.جافا text/x-java
.Json تطبيق/json
md. text/markdown
pdf. تطبيق/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
.تكس text/x-tex
.txt رسالة نصية/نص عادي
.المغلق نص/css
.Jpeg image/jpeg
‎.jpg image/jpeg
.شبيبه text/javascript
.Gif صورة/gif
‎.png image/png
.القطران application/x-tar
.اتس application/typescript
xlsx. application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xml application/xml أو "text/xml"
.zip تطبيق/مضغوط

مرجع واجهة برمجة تطبيقات تحميل الملفات

يستخدم المساعدون نفس واجهة برمجة التطبيقات لتحميل الملفات كضبط دقيق. عند تحميل ملف، يجب عليك تحديد قيمة مناسبة لمعلمة الغرض.

تمكين مترجم التعليمات البرمجية

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

تحميل ملف لمترجم التعليمات البرمجية

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

تمرير الملف إلى مؤشر ترابط فردي

بالإضافة إلى جعل الملفات قابلة للوصول على مستوى المساعدين، يمكنك تمرير الملفات بحيث يمكن الوصول إليها فقط من خلال مؤشر ترابط معين.

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

تنزيل الملفات التي تم إنشاؤها بواسطة مترجم التعليمات البرمجية

يمكن العثور على الملفات التي تم إنشاؤها بواسطة مترجم التعليمات البرمجية في استجابات رسالة المساعد

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

يمكنك تنزيل هذه الملفات التي تم إنشاؤها عن طريق تمرير الملفات إلى واجهة برمجة تطبيقات الملفات:

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)

(راجع أيضًا )