| page_type | 語言 | 產品 | urlfragment | 姓名 | 描述 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
樣本 |
|
| Contoso-Creative撰寫者 | 創意寫作助理 - 使用及時的代理(Python實施)與代理合作 | 將Azure OpenAI代理與Python一起集成了Bing搜索API和Azure AI搜索,以根據用戶主題和指令創建文章。 |
打開終端窗口。
登錄到您的Azure帳戶。您需要登錄到Azure開發人員CLI和Azure CLI:
我。首先使用Azure開發人員CLI
azd auth loginii。然後用Azure CLI登錄
az login --use-device-code提供資源並部署代碼:
azd up將提示您選擇有關已部署資源的一些詳細信息,包括位置。作為提醒,我們建議加拿大東部作為該項目的地區。部署完成後,您應該能夠在終端滾動並查看應用程序已部署到的URL。它看起來應該與此Ingress Updated. Access your app at https://env-name.codespacesname.eastus2.azurecontainerapps.io/ 。導航到鏈接,立即嘗試該應用程序!
上述步驟完成後,您可以測試樣品。
一個相關的選項是VS Code Dev容器,它將使用Dev容器擴展名中的本地VS代碼中打開項目:
啟動Docker Desktop(如果尚未安裝的話,請安裝它)
打開項目:
在打開的VS代碼窗口中,一旦顯示了項目文件(這可能需要幾分鐘),請打開一個終端窗口。
安裝所需的軟件包:
cd src/api
pip install -r requirements.txt完成這些步驟後,跳到部署。
注意Windows用戶:如果您不使用容器來運行此示例,那麼我們的掛鉤目前都是Shell腳本。要在我們進行更新時正確提供此示例,建議使用git bash。
創建一個新文件夾並在終端中切換到它,然後運行此命令以下載項目代碼:
azd init -t agent-openai-python-prompty請注意,此命令將初始化GIT存儲庫,因此您無需克隆此存儲庫。
安裝所需的軟件包:
cd src/api
pip install -r requirements.txt在代碼空間,開發容器或本地打開項目後,您可以將其部署到Azure。
登錄到您的Azure帳戶。您需要登錄到Azure開發人員CLI和Azure CLI:
我。首先使用Azure開發人員CLI
azd auth loginii。然後用Azure CLI登錄
az login --use-device-code如果您對該命令有任何問題,則可能還需要嘗試azd auth login --use-device-code 。
這將在.azure/您的項目中創建一個文件夾,以存儲此部署的配置。如果需要,您可能會有多個AZD環境。
提供資源並部署代碼:
azd up該項目使用gpt-35-turbo-0613 , gpt-4-1106-Preview和gpt-4o-2024-05-13 ,所有Azure地區都可能無法使用。檢查最新的區域可用性,並在部署期間選擇一個區域。我們建議將Canada East用於此項目。
運行AZD後,可能會在Github Setup中詢問以下問題:
Do you want to configure a GitHub action to automatically deploy this repo to Azure when you push code changes ?
(Y/n) Y您應該用N做出響應,因為這不是必要的步驟,並且需要一些時間來設置。
該示例存儲庫包含一個代理文件夾,其中包括每個代理的子文件夾。每個代理文件夾都包含一個迅速文件,其中定義了代理的及時元件,以及一個帶有用於運行它的代碼的Python文件。探索這些文件將幫助您了解每個代理在做什麼。該代理的文件夾還包含一個orchestrator.py文件,該文件可用於運行整個流程並創建文章。當您運行azd up時,將產品目錄上傳到Azure AI搜索矢量商店,並創建了索引名稱contoso-products 。
測試樣品:
使用FastAPI服務器本地運行示例Web應用程序。
首先導航到SRC/API文件夾
cd ./src/api運行FastApi Web服務器
fastapi dev main.py重要說明:如果您在代碼空間中運行,則需要將API的8000和5173端口的可見性更改public在VS代碼終端的PORTS卡中。端口選項卡應該看起來像這樣:

如果您在瀏覽器中打開服務器鏈接,則會看到找不到URL錯誤,這是因為我們沒有在FastAPI中創建Home URL路線。相反,我們創建了A /get_article路由,該路由用於將上下文和指令直接傳遞到運行代理工作流的get_article.py文件。
(可選)我們創建了一個Web界面,下一步將運行,但是您可以通過在瀏覽器中運行此操作來測試API的工作原理:
http://127.0.0.1:8080/get_article?context=Write an article about camping in alaska&instructions=find specifics about what type of gear they would need and explain in detail
FastAPI服務器運行後,您現在可以運行Web應用程序。為此,打開一個新的終端窗口,並使用此命令導航到Web文件夾:
cd ./src/web首先安裝節點軟件包:
npm install然後使用本地Dev Web服務器運行Web應用程序:
npm run dev這將啟動該應用程序,您可以在其中使用示例上下文和說明開始。在“創意團隊”頁面上,您可以通過單擊它來檢查每個代理的輸出。該應用應該看起來像這樣:
更改指令和上下文以創建您選擇的文章。
出於調試目的,您可能需要使用編排邏輯在Python中進行測試
僅使用編目邏輯運行示例,請使用以下命令:
cd ./src/api
python -m orchestrator
激活及時的跟踪服務器:
export LOCAL_TRACING=true
然後啟動編排:
cd ./src/api
python -m orchestrator
一旦您看到了文章,就應出現一個.runs文件./src/api 。選擇此文件夾,然後單擊其中的.tracy文件。這向您展示了為生成文章而被調用的所有Python函數。探索每個部分,看看您可以找到哪些有用的信息。
Contoso Creative Writer使用評估者評估應用程序響應質量。該項目評估中評估者的4個指標是連貫,流利,相關性和紮根。已經編寫了一個自定義evaluate.py腳本,以便為您運行所有的evaulation。
cd ./src/api
python -m evaluate.evaluatesrc/api/evaluate/eval_inputs.jsonl文件。將此模板設置為以運行CI/CD時,將其推入存儲庫。配置CI/CD時,將在GitHub操作中進行評估,然後在推送到MAIN時自動部署您的應用程序。
要在存儲庫上使用GITHUB操作設置CI/CD,請運行以下命令:
azd pipeline config該模板使用gpt-35-turbo-0613 , gpt-4-1106-Preview和gpt-4o-2024-05-13 ,所有Azure地區都可能無法使用。檢查最新區域可用性,並在部署期間選擇一個區域
您可以使用Azure的定價計算器估算該項目架構的成本
筆記
實現此模板時,請指定模板是使用託管身份還是鍵值
該模板具有託管身份或密鑰保險庫,以消除開發人員管理這些憑據的需求。應用程序可以使用託管身份來獲取Microsoft Entra代幣,而無需管理任何憑據。此外,我們添加了一個GitHub操作工具,該工具可以掃描基礎架構-AS代碼文件,並生成包含任何檢測到的問題的報告。為了確保存儲庫中的最佳實踐,我們建議任何基於模板創建解決方案的人確保在存儲庫中啟用GitHub秘密掃描設置。
該項目採用了Microsoft開源的行為代碼。
資源:
有關更多信息,請參見《行為守則常見問題守則》或與其他問題或評論聯繫[email protected]。
該項目遵循以下負責的AI指南和最佳實踐,請在使用此項目之前對其進行審查: