Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Microsoft Foundry için ile azd ai agent aracılar oluştururken, çalıştırırken ve dağıtırken sık karşılaşılan sorunları tanılayın ve düzeltin. Tanılama komutlarıyla başlayın. Ardından kimlik doğrulaması, yerel geliştirme, dağıtım, doğrudan komutlar, günlükler ve yordamlarla ilgili sorunları gidermek için belirti tabanlı bölümleri kullanın.
Prerequisites
- Başlatılmış bir barındırılan aracı projesi. Bir proje oluşturmak için bkz. Aracı projesini başlatma.
- azd Foundry uzantıları yüklü. Yükleme adımları için bkz. azd Foundry uzantılarını yükleme.
- Kimliği doğrulanmış Azure Geliştirici CLI oturumu. Gerekirse komutunu çalıştırın
azd auth login. - Dağıtım ve günlük kaydı sorunları için, dağıtıma alınmış bir barındırılan aracı. Bir tane dağıtmak için bkz. Barındırılan aracıyı dağıtma.
Tanılama bilgilerini topla
Belirli hataların içine girmeden önce bağlamı toplamak için şu komutları kullanın:
# Check extension version
azd ai agent version
# Verify Azure authentication
azd auth login
# Show current environment configuration
azd env get-values
# View agent details
azd ai agent show
# Show the resolved Foundry project endpoint and where it came from
azd ai project show
# Stream production logs
azd ai agent monitor --follow
Yapılandırılmış bir sağlık raporu için azd ai agent doctor komutunu çalıştırın. Daha fazla bilgi için bkz. Bir projeyi aracı doktorla tanılama.
Çağırma gecikme süresini tanılama
Yavaş bir barındırılan aracı isteğinin süresini platformda mı geçirdiğini, altyapının sağlanmasını mı beklediğini, kapsayıcıyı mı beklediğini yoksa isteğin aracınızda işlenmesi sırasında mı zaman harcandığını belirlemek için gecikme hata ayıklama üstbilgilerini kullanın. Bu başlıklar, SLA veya faturalama ölçümleri değil, tanılama amaçlı sinyallerdir.
x-ms-debug-latency-enabled: true ayarını yaparak her istek için tanılamayı etkinleştirin. İstek bu üst bilgiyi içermiyorsa, yanıt x-ms-debug-latency-* üst bilgilerini içermez.
Barındırılan aracının Responses veya Invocations protokolü isteğine gecikme başlığını ekleyin. Bu örnekte Yanıtlar protokolü kullanılır:
ENDPOINT="https://{account}.services.ai.azure.com/api/projects/{project}" API_VERSION="v1" TOKEN=$(az account get-access-token \ --resource https://ai.azure.com \ --query accessToken -o tsv) AGENT="my-code-agent" curl --http2 -i -X POST \ "$ENDPOINT/agents/$AGENT/endpoint/protocols/openai/responses?api-version=$API_VERSION" \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -H "x-ms-debug-latency-enabled: true" \ -d '{"model":"gpt-5.4-mini","input":"Hello, agent!","stream":false}'Yanıt üst bilgilerini inceleyin. Tüm gecikme süresi değerleri tamsayı milisaniyedir:
Header Meaning x-ms-debug-latency-session-start-typeİstek tetiklenen oturum başlatma türü: soğuk başlangıç ( cold), sıcak başlangıç (warm) veya boşta kalmadan devam edin (resume).x-ms-debug-latency-platform-preprocessing-msKabul, kimlik doğrulama, oturum sorgulama ve orkestrasyon için platform zamanı. Mikro VM sağlama veya kapsayıcı hazırlığı gecikmelerini içermez. Soğuk, sıcak ve sürdürülen oturum başlangıçları için kullanılabilir. x-ms-debug-latency-infra-setup-msMikro VM'yi sağlama zamanı. Sıcak istekler için atlanır. x-ms-debug-latency-container-readiness-msmicro-VM’nin oluşturulmasından kapsayıcının hazır olduğunu bildirmesine kadar geçen süre. Sıcak istekler için atlanır. x-ms-debug-latency-container-response-msProxy yönlendirmesinden yanıt üst bilgileri kaydedilene kadar geçen süre. İstek aktarımı, bağlantı kurulumu, aracı işleme, yeniden denemeler ve çıkış ilkesi arabelleğe alma işlemlerini içerir. x-ms-debug-latency-response-begin-msYanıt üst bilgileri işlenene kadar hizmet kabulünden geçen toplam süre. Bu değer, yanıt gövdesinin ilk baytına ulaşma süresi veya sunucu tarafından gönderilen ilk olaya ulaşma süresi değildir. Dört zamanlama bileşeninin toplamı
x-ms-debug-latency-response-begin-mseder. Soğuk veya yeniden başlatılan bir istekte, platform sağlama sürecindeki tüm sınır noktalarını yakalayamazsa altyapı ve hazır olma üst bilgilerini atlar ve bu süreyi platformun ön işleme süresine dahil eder.Olası gecikme kaynağını belirlemek için oturum başlangıç türünü ve en büyük zamanlama bileşenini kullanın:
Result Yorum Yapılması gerekenler x-ms-debug-latency-session-start-type,coldveyaresume’dir vex-ms-debug-latency-infra-setup-msyüksektirPlatform, mikro VM'yi sağlamak için zaman harcadı. Birkaç soğuk veya sürdürülen isteği karşılaştırın. Gecikme devam ederse, destek isteği için yanıt kimliğini, zaman damgasını ve gecikme süresi üst bilgilerini kaydedin. x-ms-debug-latency-session-start-typecoldveyaresume'dir vex-ms-debug-latency-container-readiness-msyüksektirKapsayıcının başlaması ve hazır duruma geçtiğini bildirmesi uzun sürdü. Başlangıç günlüklerinizde başlatma adımlarını ölçün, hazırlık uç noktası kullanılabilir duruma gelmeden önce çalışmayı azaltın ve mümkün olduğunca uygulama kodunu önceden derleyin. x-ms-debug-latency-platform-preprocessing-msherhangi bir oturum başlatma türü için yüksektirMikro VM sağlama veya kapsayıcı hazırlığı öncesinde platformda gecikme oluştu. Bir destek isteği oluşturun. Yanıt kimliğini, zaman damgasını, oturum başlangıç türünü ve gecikme süresi üst bilgilerini ekleyin. x-ms-debug-latency-container-response-ms,x-ms-debug-latency-first-byte-ms, veya treylerinfirst_byte_msdeğeri yüksekGecikme, ara sunucu yönlendirmesinin başlamasının ardından meydana geldi. İstek işleyicisini enstrümante edin ve ajan günlüklerini, model çağrılarını, araç çağrılarını, yeniden denemeleri ve çıktı arabelleğe alımını inceleyin.
Kapsayıcı hazır olma süresini azaltma
Kapsayıcı hazır olma değeri, işleminizi başlatmak, uygulamayı yüklemek ve /readiness konumundan HTTP 200 yanıtı almak için gereken süreyi içerir. Yavaş içeri aktarmaları, bağımlılık yüklemesini, ağ çağrılarını ve diğer başlatma çalışmalarını belirlemek için başlangıç günlüklerine zaman damgaları ekleyin.
Bu iyileştirmeleri, tanımladığınız yavaş adımlara uygulayın:
- Görüntüyü oluştururken bağımlılıkları yükleyin ve kodu derleyin. Kapsayıcı başlangıcında paket yükleme, geri yükleme veya derlemeyi çalıştırmayın.
- Çok aşamalı derleme kullanın ve derleme araçlarını, paket önbelleklerini, testleri ve diğer geliştirme dosyalarını çalışma zamanı görüntüsünden hariç tutun.
- Hazır olmadan önce model çağrıları, geçişler, araç bulma ve varlık indirmelerinden kaçının. Önce tamamlanması gereken bağımsız ilklendirme işlemlerini paralelleştirin.
-
/readinessöğesini, temsilcinin istekleri kabul edip edemeyeceğine odaklı tutun. Başlatmayı ertelerseniz, başlangıç gecikmesini istek işlemeye taşımadığınızdan emin olmak için ilk isteği ölçün.
Çalışma zamanı görüntüsüne kopyaladığınız sanal bir ortama bağımlılıkları yükleyin. Üçüncü taraf paketindeki ayrıştırılamaz bir dosyanın derlemede başarısız olmaması için bağımlılıkları en iyi çaba temelinde derleyin. Söz dizimi hatalarının derlemede başarısız olması için uygulamayı kesinlikle derleyin.
FROM python:3.13-slim AS build
WORKDIR /app
RUN python -m venv /opt/venv
ENV PATH="/opt/venv/bin:$PATH"
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
RUN PYTHONDONTWRITEBYTECODE= python -m compileall -q /opt/venv \
|| true; \
PYTHONDONTWRITEBYTECODE= python -m compileall -q /app
FROM python:3.13-slim AS final
ENV PATH="/opt/venv/bin:$PATH"
WORKDIR /app
COPY --from=build /opt/venv /opt/venv
COPY --from=build /app /app
# Precompile the standard library in the runtime image.
RUN PYTHONDONTWRITEBYTECODE= python -m compileall -q \
"$(python -c "import sysconfig; print(sysconfig.get_path('stdlib'))")" \
|| true
CMD ["python", "main.py"]
PYTHONDONTWRITEBYTECODE Bu derleme adımının temizlenmesi, Python bayt kodunu görüntüye yazmasına izin verir. Ortam değişkeni bayt kodu yazmalarını engeller, okumaları engeller, dolayısıyla çalışan kapsayıcı derlenmiş dosyaları kullanmaya devam edebilir.
Referans: compileall - Python kitaplıklarını bayt koduna derlemek
Barındırılan aracıların gerektirdiği x86-64 mimarisi için iki görüntüden herhangi birini oluşturun:
docker build --platform linux/amd64 -t my-agent:latest .
Burada linux/amd64, bir Docker platformudur; .NET çalışma zamanı tanımlayıcısı değildir.
Referans: Barındırılan aracı kapsayıcısı gereksinimleri
Aracının ve modelin gecikme sürelerini inceleyin
Kapsayıcının hazır duruma gelmesi hızlıysa ancak kapsayıcı yanıt süresi veya ilk bayt süresi yüksekse, araştırmanızı iletme başladıktan sonraki istek yolu üzerine yoğunlaştırın.
İsteği yeniden oluştururken azd ai agent monitor --follow komutunu çalıştırın ve model çağrıları, araç çağrıları, dış hizmetler, yeniden denemeler ve yanıt serileştirmesi için izleme ekleyin. Daha fazla bilgi için Barındırılan aracı günlüklerini izleme konusuna bakın.
Büyük bir dil modelini çağıran bir aracı için, dağıtımı değiştirmeden önce model gecikme süresini ayrı olarak ölçün. İlk belirtece kadar geçen süreyi, belirteçler arası süreyi, oluşturulan belirteç sayısını, istemin boyutunu, dağıtım kullanım oranını ve kısıtlamayı karşılaştırın. Ardından model seçimini, çıkış belirteci sınırlarını, akışı ve iş yükü ayrımını değerlendirin. Bkz. Azure OpenAI performansını iyileştirme.
Ölçümler öngörülebilir bir iş yükü için sürekli kapasite baskısı gösteriyorsa, sağlanan dağıtımı değerlendirin ve gözlemlenen giriş belirteçleri, çıkış belirteçleri ve istek oranı için boyutlandırın. Bkz . Sağlanan aktarım hızı.
Tamamlanma zamanlamalarını inceleme
HTTP/2 veya sonraki sürümlerde hizmet, en iyi eforlu x-ms-debug-latency-final yanıt fragmanını döndürebilir. Yanıt üst bilgisi değerlerini yineler ve şu alanları ekleyebilir:
| Veri Alanı | Meaning |
|---|---|
first_byte_ms |
Hizmetin kabul edilmesinden yanıt gövdesinin ilk baytı ya da sunucu tarafından gönderilen olay gelene kadar geçen süre. |
total_last_byte_ms |
Yanıt iletme tamamlanana kadar hizmet kabulü süresi. |
Fragman, sürüm numarası içeren ve noktalı virgülle ayrılmış bir biçim kullanır:
x-ms-debug-latency-final: v=1;start=cold;platform_pre_ms=...;
infra_ms=...;ready_ms=...;container_response_ms=...;
response_begin_ms=...;first_byte_ms=...;total_last_byte_ms=...
HTTP/1.1 yanıtları bu fragmanı içermez. Fragman iptal, istemci bağlantısı kesilmesi, orta akış hatası veya ağ geçidi veya SDK fragmanları korumadığında da eksik olabilir. Yanıt üst bilgilerini garantili tanılama sözleşmesi olarak kabul edin.
Depolanan gecikme süresi sonuçlarını alma
Hizmet, yanıt veya çağrı ile yakalanan zamanlamaları depolar. Aynı yanıt veya çağırma kimliği için daha sonraki bir GET isteği, özgün isteğin zamanlamalarını yanıt üst bilgileri olarak döndürür. GET isteği gecikme üst bilgisini gerektirmez ve GET isteğinin kendisini ölçmez.
GET isteği bu tamamlanma değerlerini normal üst bilgiler olarak da döndürebilir:
| Header | Meaning |
|---|---|
x-ms-debug-latency-first-byte-ms |
Yanıt gövdesinin ilk baytına kadar geçen süre. |
x-ms-debug-latency-total-last-byte-ms |
Yanıt iletme işleminin tamamlanmasına kadar geçen süre. |
Depolama sonunda tutarlıdır, bu nedenle özgün istek sonrasındaki bir GET isteği henüz üst bilgileri içermeyebilir. Eşzamansız bir yanıt veya çağrı için yalnızca platform kaynaklı ek yük değerleri kullanılabilir: oturum başlatma türü, platform ön işleme, altyapı kurulumu ve kapsayıcı hazırlığı.
Başarısız proxy yanıtları veya WebSocket (invocations_ws) istekleri için gecikme üst bilgileri gönderilmez.
Kimlik doğrulama hatalarını düzeltme
Düzelt AuthenticationError
Belirti -leri: Aracı yerel olarak başlatılamıyor veya yapay zeka modelini çağırırken 401/403 sonucunu döndürür.
Nedenler ve düzeltmeler:
-
Süresi dolmuş kimlik bilgileri -- Azure oturumunuzu yenilemek için komutunu çalıştırın
azd auth login. -
Yanlış abonelik -- Ile
azd env get-values | grep AZURE_SUBSCRIPTION_IDdoğrulayın ve Foundry projesinin aboneliğiyle karşılaştırın. - Eksik RBAC rolleri -- Kimliğinizin Foundry projesinde Foundry User veya eşdeğer erişime sahip olması gerekir.
Important
Foundry RBAC rolleri yakın zamanda yeniden adlandırıldı. Foundry User, Foundry Owner, Foundry Hesabı Sahibi ve Foundry Project Manager daha önce Azure Yapay Zeka Kullanıcısı, Azure Yapay Zeka Sahibi, Azure Yapay Zeka Hesabı Sahibi ve Azure Yapay Zeka Project Yöneticisi olarak adlandırıldı. Yeniden adlandırma kullanıma sunulmaya devam ederken bazı yerlerde önceki adları görmeye devam edebilirsiniz. Rol kimlikleri ve temel izinler yeniden adlandırma ile değiştirilmez.
Kimliğinizin model dağıtımlarını kullanabilmesi için Bilişsel Hizmetler OpenAI Kullanıcısına da ihtiyacı vardır.
Dağıtım sırasında AuthorizationFailed sorununu düzeltin
Belirti -leri:azd up veya azd provision bir izin hatasıyla başarısız olur.
Düzeltme: Azure aboneliğinizde Katkıda Bulunan rolü isteyin. CI/CD için hizmet sorumlusunun Da Döküm Sahibi olması gerekir.
Düzelt SubscriptionNotRegistered
Belirti -leri: Gerekli bir kaynak sağlayıcısı kaydedilmediğinden sağlama başarısız oluyor.
Düzeltme:
az provider register --namespace Microsoft.CognitiveServices
az provider register --namespace Microsoft.ContainerRegistry
Yerel geliştirme sorunlarını düzeltme
Bağlantı noktası 8088'de reddedilen bağlantı düzeltildi
Belirti -leri:azd ai agent invoke --local bağlanamıyor.
Nedenler ve düzeltmeler:
Aracı çalışmıyor -- Ayrı bir terminalde
azd ai agent runile başlatın.Bağlantı noktası çakışması -- Başka bir işlem de 8088 numaralı bağlantı noktasını kullanmaktır. Durdurun veya özel bir bağlantı noktası kullanın:
azd ai agent run --port 9090 azd ai agent invoke --local --port 9090 "Hello!"Başlangıç kilitlenmesi -- Hata çıkışı için çalıştırılan
azd ai agent runterminali denetleyin. Yaygın nedenler arasında eksik bağımlılıklar, içe aktarma hataları veyastartupCommandiçindeki hatalıazure.yamlbulunur.
Bağımlılık yükleme hatalarını düzeltme
Belirti -leri:azd ai agent run bağımlılık yüklemesi sırasında başarısız oluyor.
Nedenler ve düzeltmeler:
- Yanlış çalışma zamanı sürümü -- 3.10+ veya .NET 8+ Python yüklendiğinden emin olun.
-
eksik
requirements.txtveya.csproj-- CLI bu dosyalardan proje türünü otomatik olarak algılar. Bunların aracı dizininizde var olduğunu doğrulayın. -
Ağ sorunları -- Paket kayıt depoları kurumsal proxy'niz tarafından engellenebilir.
pipveyadotnetyapılandırmanızı denetleyin.
ResourceNotFound veya DeploymentNotFound sorununu düzelt
Belirtiler: Aracı başlatılır ancak model çağrılmaya çalışıldığında başarısız olur.
Nedenler ve düzeltmeler:
-
Uç nokta uyuşmazlığı -- Komutunu çalıştırın
azd env get-valuesve Foundry portalında gösterilen uç noktayla eşleşip eşleşmediğiniFOUNDRY_PROJECT_ENDPOINTdoğrulayın. -
Model dağıtım adı uyuşmazlığı -- içinde
azure.yamlyapılandırılan model dağıtım adı, Foundry projenizdeki dağıtım adıyla eşleşmelidir. Portalda Dağıtımlar altında kontrol edin. -
Kaynaklar sağlanmadı -- Henüz çalıştırmadıysanız
azd upbulut kaynakları mevcut olmayacaktır. Önce komutunu çalıştırınazd up, ardından yerel olarak test edin. Yerel aracı hâlâ bulutta barındırılan modelleri çağırmaya devam eder.
Dağıtım sorunlarını düzeltme
Konteyner derleme hatalarını düzeltin
Belirti -leri:azd up Docker derleme aşamasında başarısız oluyor.
Nedenler ve düzeltmeler:
-
Dockerfile eksik -- Aracı dizininizde bir
Dockerfileolduğundan emin olun. Bir şablondan oluşturduysanız, bu otomatik olarak oluşturulur. -
Derleme bağlamı hataları --
Dockerfileiçindeki hizmetprojectyolu tarafından belirtilen dizindeazure.yamlbulunmalıdır. -
Docker'da bağımlılık yükleme -- Kapsayıcı içinde pip/dotnet restore başarısız olursa,
requirements.txtveya.csprojiçindeki tüm bağımlılıkların doğru şekilde sabitlendiğini denetleyin.
azd up Kilitlenmeleri veya zaman aşımlarını düzeltin
Belirti -leri: Sağlama veya dağıtım olağan dışı bir şekilde uzun sürer.
Nedenler ve düzeltmeler:
-
İlk dağıtım -- İlki
azd upFoundry projesi, ACR, yönetilen kimlik ve model dağıtımı dahil olmak üzere tüm Azure kaynaklarını sağlar ve 5-10 dakika sürebilir. Sonraki dağıtımlar daha hızlıdır. -
Uzaktan derleme -- Varsayılan olarak, kapsayıcı görüntüleri ACR üzerinde uzaktan oluşturulur. Bu daha yavaş olabilir, ancak yerel olarak Docker gerektirmez. Bunun yerine yerel olarak derlemek için hizmet yapılandırmanızda
docker.remoteBuild: falseayarlayınazure.yaml. - Bölge kapasitesi : Bazı bölgelerin belirli model SKU'ları için kapasitesi sınırlı olabilir. Sağlama tutarlı bir şekilde başarısız olursa farklı bir bölge deneyin.
Dağıtan ancak yanıt vermeyen bir aracıyı düzeltme
Belirtiler:azd ai agent invoke başarılı bir dağıtımdan sonra zaman aşımına uğrar veya hata döndürür.
Nedenler ve düzeltmeler:
-
Sistem durumu yoklaması başarısız oluyor -- Kapsayıcınızın 8088 numaralı bağlantı noktasında 200 durumuyla yanıt vermesi
GET /readinessgerekir.azd ai agent monitor --followile günlükleri kontrol edin. -
Protokol uyuşmazlığı -- içinde hizmette
azure.ai.agenttanımlanan protokolün kodunuzunazure.yamluyguladığıyla eşleştiğinden emin olun.azure.yaml,responsesdiyorsa ancak kodunuz yalnızcainvocationsöğesini işliyorsa ya da tam tersi durum söz konusuysa, istekler başarısız olur. -
Kapsayıcı çökmeleri -- Yeniden başlatma olayları açısından sistem günlüklerini kontrol edin:
azd ai agent monitor --type system. Yaygın nedenler işlenmeyen özel durumlar ve yetersiz bellek sorunlarıdır. Gerekirseazure.yamliçindeki konteyner kaynaklarını artırın.
Doğrudan komut hatalarını düzeltme
Bu hatalar, bir Foundry projesine karşı çalıştırıldığında azd ai, azd ai connection ve azd ai toolbox gibi azd ai routine doğrudan komutlardan kaynaklanır.
Çözümlenmeyen Foundry proje uç noktası sorunu düzeltildi
Belirtiler: Doğrudan bir komut No Foundry project endpoint resolved. Run azd ai project set to set one, or pass --project-endpoint. ile sonlanır
Neden: CLI, desteklenen kaynaklardan herhangi birinde bir Foundry proje uç noktası bulamadı: --project-endpoint bayrak, etkin azd ortam, genel yapılandırma veya FOUNDRY_PROJECT_ENDPOINT ortam değişkeni.
Düzeltmeler:
-
azd ai project set <endpoint>komutunu, uç noktayı genelazdyapılandırmanızda (~/.azd/config.json) depolamak için çalıştırın. - Her komutta
--project-endpoint(-p) iletin:azd ai connection list -p https://my-proj.services.ai.azure.com/api/projects/my-project. -
FOUNDRY_PROJECT_ENDPOINTdeğerini kabuk ortamınızda ayarlayın.
Tam çözümleme sırası ve hangi durumda her kaynağın öncelikli olduğunu öğrenmek için azd proje bağlamını anlama bölümüne bakın.
Mevcut kaynaklar için oluşturma hatalarını düzeltme
Belirtiler:azd ai connection create, azd ai toolbox create, azd ai routine createveya azd ai skill create "zaten var" hatasıyla başarısız oluyor.
Neden: Tasarım gereği upsert create değildir. Varsayılan hata modu, paylaşılan bir Foundry projesinde bir geliştiricinin sessizce başka bir geliştiricinin durumunun üzerine yazmasını engeller.
Düzeltmeler:
- Farklı bir ad seçin ve yeniden çalıştırın.
-
--forcekomutunun desteklediği durumlarda, mevcut kaynağı bir ARM PUT ile değiştirmek içincreategeçirin. Değiştirme işlemi yıkıcıdır: mevcut kaynağın üzerine doğrudan yazar ve manuel portal düzenlemeleri, meta veriler veya kimlik bilgilerinden kaynaklanan tüm sapmalar kaybolur.azd ai toolbox createkomutu--forceöğesini desteklemez. Var olan araç kutusunu silin veya bunun yerine yeni bir ad kullanın.
connection show Kimlik bilgileri çıktısını düzeltin
Belirti -leri:azd ai connection show <name> bağlantının adını, türünü, hedefini ve kimlik doğrulama türünü döndürür, ancak API anahtarı veya kimlik bilgisi değeri döndürmez.
Neden: Tasarım gereği, kimlik bilgisi değerleri varsayılan olarak hiçbir zaman döndürülemez. Bunlar açık --show-credentials bayrağı gerektirir.
Düzeltme:
azd ai connection show tavily-conn --show-credentials
Bu, veri düzlemi API'sini çağırır ve Dökümhane projesinde DökümHane Kullanıcısı veya eşdeğeri gibi veri düzlemi izinleri gerektirir. Yalnızca yönetim düzlemi Reader veya Contributor erişiminiz varsa, çağrı 403 ile başarısız olur. Proje sahibinizden veri düzlemi rolünü isteyin.
Ajan günlüklerini okuma
Aracı davranışını incelemek için kullanın azd ai agent monitor :
# Stream all recent logs
azd ai agent monitor --follow
# View system-level events (container starts, crashes, restarts)
azd ai agent monitor --type system
# Filter to a specific session
azd ai agent monitor --session-id <session-id>
Yaygın günlük desenleri şunlardır:
| Kayıt mesajı | Meaning |
|---|---|
Listening on 0.0.0.0:8088 |
Ajan başarıyla başlatıldı. |
AuthenticationError |
Kimlik bilgisi veya RBAC sorunu. Yönetilen kimliği denetleyin. |
ModelNotFound |
Model dağıtım adı azure.yaml ile uyuşmuyor. |
| Sistem olaylarında konteynerin yeniden başlatılması | Çökme döngüsü. Kod hatalarını denetleyin veya kaynak sınırlarını artırın. |
Rutin hataları tanılama
Hatayı ortaya çıkaracak bir çağıran olmadığından, yordamlar etkileşimli agent invoke çağrılardan farklı şekilde başarısız olur. Rutin, bir aracının zamanlayıcıyla tetiklenen, yinelenen, GitHub issue’su tarafından tetiklenen veya özel olay tarafından tetiklenen çalıştırılmasıdır.
azd ai routine run list kullanarak neler olduğunu inceleyin.
Geçmiş çalıştırmaları inceleyin
# Recent runs of a routine: trigger time, agent input/output, status, trace link
azd ai routine run list daily-digest
Başarısız olanları filtrele
# Failed runs only, with an OData filter
azd ai routine run list daily-digest --filter "status eq 'failed'"
Ile birleştirerek --top pencereyi genişletin veya daraltın.
Tek bir çalıştırmanın ayrıntılarına inin
# Full detail for the most recent runs as JSON, then look up the run you care about
azd ai routine run list daily-digest --top 5 --output json
JSON çıktısı; girdi yükünü, ajanın yanıtını ve etkileşimli bir çağırmada göreceğiniz izlemenin aynısı olan dağıtılmış izlemeye yönelik bir derin bağlantıyı içerir.
Bir rutini el ile yeniden tetikleme
Bir hatayı yeniden oluşturmanız veya bir düzeltmeyi test etmeniz gerekiyorsa, ile isteğe bağlı olarak yordamı tetikleyebilirsiniz dispatch:
azd ai routine dispatch daily-digest
azd ai routine dispatch triage-issues --input '{"issue":{"number":42}}'
dispatch eşzamansız olarak çalışır ve bir gönderim kimliği yazdırır. Sonucu azd ai routine run list <name> ile kontrol edin.
Başarısız bir yordam çalıştırmasını düzelt
azd ai routine run list, status: failed ile çalıştırmayı gösterir. Model hatası, araç hatası veya zaman aşımı gibi temel aracı hatasını görmek için izleme bağlantısını izleyin. Ajan tarafındaki düzeltmeler, etkileşimli başarısızlıklar için olanlarla aynıdır. Bkz . Kimlik doğrulama hatalarını düzeltme ve Aracı günlüklerini okuma.
Hiçbir zaman tetiklemeyecek bir rutini düzeltme
Eğer azd ai routine run list hiç çalıştırma döndürmezse, tetikleyicinin kendisi tetiklenmiyordur:
- Yordamın etkin olduğundan emin olun:
azd ai routine show <name>. öğesini arayınenabled: true. -
timertetikleyicileri için,--atöğesinin gelecekte olduğunu ve daha önce tetiklenmediğini doğrulayın. -
recurringtetikleyicileri için,--cronifadesinin geçerli olduğunu ve--time-zoneöğesinin beklediğiniz şey olduğunu doğrulayın. -
github-issuetetikleyicileri için,--connection-id'in sağlıklı bir bağlantıya çözümlendiğini ve GitHub deposunun ve--issue-event'nin deponun yaydığı olaylarla eşleştiğini doğrulayın. -
customtetikleyicileri için,--provider,--event-nameve--parameterskapsamının sağlayıcının yayımladığı olaylarla eşleştiğini doğrulayın.
Daha fazla yardım alın
-
Hata ayıklama modu -- Ayrıntılı çıktı için herhangi bir
--debugkomutunaazdekleyin. - Azure portalı -- Kaynak durumu ve tanılama için Azure portalındaki Döküm projesini denetleyin.
- Hata dosyala -- github.com/Azure/azure-geliştirme/sorunlarda sorunları bildirin.
İlgili içerik
- Daha ayrıntılı günlük denetimi seçenekleri için barındırılan aracı günlüklerini Azure Geliştirici CLI'sı ile izleyin.
- Yapılandırılmış testle ilgili sorunları önlemek için barındırılan bir aracıyı test edin.
- Yapılandırılmış bir proje sistem durumu raporu için bir projeyi aracı doktorla tanılayın.