Azure Geliştirici CLI ile aracı geliştirme

Important

Bu makalede işaretlenen (önizleme) öğeler şu anda genel önizleme aşamasındadır. Bu önizleme, hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için önerilmez. Bazı özellikler desteklenmeyebilir veya kısıtlı özelliklere sahip olabilir. Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları.

Azure Developer CLI (azd) ve onun azd ai agent uzantısı, bir fikirden Microsoft Foundry’de üretime hazır, barındırılan bir aracıya geçmeniz için size tek bir komut satırı iş akışı sunar. Bu makalede geliştirici yolculuğu, aracı tanımlayan dosyalar ve yol boyunca karşılaştığınız temel kavramlar açıklanmaktadır.

Bu makale, Foundry portalı veya dil SDK'ları yerine terminal öncelikli, betik yazılabilir bir iş akışını tercih eden geliştiricilere yöneliktir.

Geliştirici yolculuğu

küçük azd ai bir prototip veya üretim aracısı oluşturmanız fark etmeksizin iş akışı aynı yaşam döngüsünü izler. Bir projeyi bir kez iskelelersiniz, ardından projeniz büyüdükçe komutları karıştırır ve eşleştirirsiniz.

Stage Ne yaparsınız? Daha fazla bilgi nereden edinilir?
Install azd ve Foundry uzantılarını yükleyin. Geliştirici ortamınızı ayarlama
İskele Bir şablondan veya mevcut kodunuzdan proje başlatın. Hızlı başlangıç: Barındırılan bir aracıyı dağıtın
Tanımlamak azure.yaml içinde aracıyı, model dağıtım bağımlılıklarını, protokolleri, araçları ve ortamı yapılandırın. Barındırılan aracılar için azure.yaml’ı oluşturma
Develop Aracı mantığı yazın, araçlar ekleyin ve yerel olarak test edin. Araçlara genel bakış
Deploy Altyapıyı sağlayın ve Foundry'ye dağıtın. Barındırılan aracı dağıt
Çalıştırmak Günlükleri izleyin, sürümleri yönetin ve çalıştırmaları otomatikleştirin. Barındırılan aracıları yönetme
Evaluate Ajan kalitesini ölçün ve istemi iyileştirin. azd CLI ile aracı değerlendirmeleri çalıştırma

Aracı türleri

azd ai agent uzantısı, barındırılan aracılara odaklanır.

Türü Description Ne zaman kullanılır?
Barındırılan aracı Kodda derlediğiniz, Docker görüntüsü olarak paketlediğiniz ve Foundry'ye dağıtabileceğiniz kapsayıcılı bir uygulama. Özel mantık, çerçeve tümleştirmesi veya davranış üzerinde tam denetime ihtiyacınız vardır.
İstem ajanı Özel kod içermeyen yönergeler ve araç yapılandırmaları aracılığıyla tanımlanan bir aracı. Uygulama kodu yazmadan hızlı, yapılandırma temelli bir aracı istiyorsunuz.

Barındırılan aracılar çalışma zamanı, çerçeve ve araç tümleştirmeleri üzerinde tam denetim sağlarken Foundry altyapı, ölçeklendirme ve oturum yönetimini işler.

Yapılandırma dosyaları

Barındırılan aracı projesi, hem aracıyı hem de sağlama ve dağıtım modelini bildirmek için proje kökünde bir azure.yaml dosya kullanır. Dosya, her adlandırılmış hizmetin azure.ai.project, azure.ai.agent, azure.ai.connection, azure.ai.toolbox, azure.ai.skill veya azure.ai.routine gibi bir host değerine sahip olduğu bölünmüş hizmet modelini kullanır.

File Purpose Bunu kim koruyor?
azure.yaml Foundry projesini, model dağıtımlarını, barındırılan aracı hizmetini, bağımlılıkları, protokolleri, araçları, ortam değişkenlerini, kapsayıcı kaynaklarını ve dağıtım ayarlarını bildirir. Hizmette azure.ai.agent aracı kimliği, model, protokoller, araçlar ve ortam değerleri bulunur. Başlatma bunu oluşturur. Gerektiğinde özelleştirebilirsiniz.

azure.ai.agent hizmeti, barındırılan aracınızı satır içinde tanımlar ve proje, bağlantılar, araç kutuları, beceriler ve yordamlar gibi diğer hizmetlere başvurmak için uses: kullanır. Mevcut barındırılan aracı azd proje modelinde bağımsız agent.yaml veya agent.manifest.yaml dosyası yoktur.

Değişken değiştirme

azd ortama göre farklılık gösteren değerler için azure.yaml içinde ${VAR_NAME} kullanın. Yer tutucu, dağıtım veya çalışma zamanında .azure/<env>/.env içinden çözümlendiği için aynı azure.yaml geliştirme, test ve üretim gibi ortamlarda çalışır.

CLI'nın çalıştığı yer

Komutlar azd ai bir azd proje dizininin içinde ve dışında çalışır:

  • Bir azd projesinde, komutlar Foundry proje uç noktasını etkin azd ortamından belirler.
  • azd projesi dışında, etkin bağlamı azd ai project set <endpoint> ile bir kez ayarlayın veya --project-endpoint seçeneğini tek tek kaynak komutlarında (connection, toolbox, skill ya da routine) belirtin. Geri dönüş olarak ortam azd ai değişkenini FOUNDRY_PROJECT_ENDPOINT okur.
  • Proje içi ortam her zaman genel bağlamdan önceliklidir, bu nedenle dizinleri bir projeye değiştirmek, o projenin uç noktasındaki CLI'yı yeniden hedef alır.

Protocols

Protokol, Foundry ile aracı kapsayıcınız arasındaki HTTP sözleşmesini tanımlar. Aracınız 8088 numaralı bağlantı noktasını dinler ve protokolden bağımsız olarak bir sistem durumu yoklaması sunar.

Protocol API stili Ne zaman kullanılır?
responses OpenAI Yanıtları API'si (POST /responses) OpenAI API ekosistemiyle uyumlu standart seçim.
invocations Özel JSON sözleşmesi (POST /invocations) İstek ve yanıt yükleri üzerinde tam denetime ihtiyacınız olduğunda.

Tam belirtim için bkz. Barındırılan aracı çalışma zamanı sözleşmesi.

Oturumlar ve konuşmalar

Concept Description
Session Tek bir aracı etkileşimi için yalıtılmış bir yürütme ortamı. Her oturum, kendine ayrılmış kaynaklarla kendi yalıtılmış ortamında çalışır.
Konuşma Oturum içindeki bir ileti dizisi. Foundry, konuşma geçmişini yönetir ve bunu istekler arasında sürdürebilir.

Oturumlar bir session_idtarafından tanımlanır. çalıştırdığınızda azd ai agent invoke, Foundry varsayılan olarak son çağrınızdaki oturumu yeniden kullanır. Yeniden başlamak için --new-session kullanın veya belirli bir oturumu hedeflemek için --session-id <id> kullanın.

Dökümhane projesindeki kaynaklar

Foundry projesi aracılardan daha fazlasını barındırıyor. Ayrıca, aracıların çalışma zamanında başvurduğu paylaşılan kaynakları da barındırır. CLI, her birini ayrılmış bir komut grubu aracılığıyla yönetir.

Resource Bu nedir Ile yönetilir
Connection Foundry projesini MCP sunucusu, Azure Yapay Zeka Arama veya Bing ile Topraklama gibi bir dış kaynağa bağlar. azd ai connection Komutlar
Araç Kutusu Aracıların çalışma zamanında kullandığı adlandırılmış bir araç koleksiyonu. azd ai toolbox Komutlar
Beceri Projedeki aracılar arasında paylaşılan yeniden kullanılabilir davranış yönergeleri. azd ai skill Komutlar
Rutin Tetikleyici ve aracı çağıran bir eylem. azd ai routine Komutlar

Bu kaynaklar aynı projedeki geliştiriciler ve aracılar arasında paylaşılır. Her komut grubu standart create, , updatedelete, , showve list fiillerini kullanıma sunar.

Ajanı değerlendirin ve iyileştirin

Aracı çalıştırıldıktan sonra ilgili iki iş akışı, kalitesini ölçmenize ve geliştirmenize yardımcı olur:

  • Değerlendirme aracınızı bir veri kümesinde çalıştırır, yanıtları bir veya daha fazla değerlendiriciyle puanlar ve toplam kalite sinyali raporlar. Bunu azd ai agent eval ile yönetirsiniz.
  • Optimizasyon, değerlendirme sinyalini yükseltmek için aracınızın istemini yinelemeli olarak yeniden yazar. Nesnel işlevi olarak bir değerlendirme kullanır ve gözden geçirip kabul ettiğiniz bir aday istemi oluşturur. Bunu azd ai agent optimize ile yönetirsiniz.

Ayrıntılar için bkz. Azd CLI ile aracı değerlendirmelerini çalıştırma ve Aracı istemlerini iyileştirme.

Dağıtım yaşam döngüsü

Tam geliştirici döngüsü kısa bir komut dizisi halinde yoğunlaşır. Bir kez iskele yapın, ardından projeniz büyüdükçe doğrudan komutları kullanın.

# Scaffold a project from a template or your existing code
azd ai agent init

# Run locally and invoke
azd ai agent run
azd ai agent invoke --local "Hello, world!"

# Provision infrastructure and deploy the agent
azd up

# Extend the project with shared resources at any time
azd ai connection create my-search --kind cognitive-search --target https://... --auth-type api-key --key "..."
azd ai routine create daily-digest --trigger recurring --cron "0 7 * * *" --agent-name my-agent

# Evaluate quality
azd ai agent eval generate
azd ai agent eval run

# Tear down all Azure resources
azd down