|
6 | 6 | "_generator": { |
7 | 7 | "name": "bicep", |
8 | 8 | "version": "0.36.1.42791", |
9 | | - "templateHash": "14037525013444695971" |
| 9 | + "templateHash": "1266095135796943159" |
10 | 10 | } |
11 | 11 | }, |
12 | 12 | "definitions": { |
|
591 | 591 | } |
592 | 592 | } |
593 | 593 | }, |
594 | | - "deploymentsType": { |
| 594 | + "modelDeploymentType": { |
595 | 595 | "type": "object", |
596 | 596 | "properties": { |
597 | 597 | "name": { |
598 | 598 | "type": "string", |
599 | 599 | "nullable": true, |
600 | 600 | "metadata": { |
601 | | - "description": "Optional. Specify the name of cognitive service account deployment." |
| 601 | + "description": "Optional. The name of the Cognitive Services account deployment model. The modelName will be used by default if not specified." |
602 | 602 | } |
603 | 603 | }, |
604 | | - "model": { |
605 | | - "type": "object", |
606 | | - "properties": { |
607 | | - "name": { |
608 | | - "type": "string", |
609 | | - "metadata": { |
610 | | - "description": "Required. The name of Cognitive Services account deployment model." |
611 | | - } |
612 | | - }, |
613 | | - "format": { |
614 | | - "type": "string", |
615 | | - "metadata": { |
616 | | - "description": "Required. The format of Cognitive Services account deployment model." |
617 | | - } |
618 | | - }, |
619 | | - "version": { |
620 | | - "type": "string", |
621 | | - "metadata": { |
622 | | - "description": "Required. The version of Cognitive Services account deployment model." |
623 | | - } |
624 | | - } |
625 | | - }, |
626 | | - "metadata": { |
627 | | - "description": "Required. Properties of Cognitive Services account deployment model." |
628 | | - } |
629 | | - }, |
630 | | - "sku": { |
631 | | - "type": "object", |
632 | | - "properties": { |
633 | | - "name": { |
634 | | - "type": "string", |
635 | | - "metadata": { |
636 | | - "description": "Required. The name of the resource model definition representing SKU." |
637 | | - } |
638 | | - }, |
639 | | - "capacity": { |
640 | | - "type": "int", |
641 | | - "nullable": true, |
642 | | - "metadata": { |
643 | | - "description": "Optional. The capacity of the resource model definition representing SKU." |
644 | | - } |
645 | | - }, |
646 | | - "tier": { |
647 | | - "type": "string", |
648 | | - "nullable": true, |
649 | | - "metadata": { |
650 | | - "description": "Optional. The tier of the resource model definition representing SKU." |
651 | | - } |
652 | | - }, |
653 | | - "size": { |
654 | | - "type": "string", |
655 | | - "nullable": true, |
656 | | - "metadata": { |
657 | | - "description": "Optional. The size of the resource model definition representing SKU." |
658 | | - } |
659 | | - }, |
660 | | - "family": { |
661 | | - "type": "string", |
662 | | - "nullable": true, |
663 | | - "metadata": { |
664 | | - "description": "Optional. The family of the resource model definition representing SKU." |
665 | | - } |
666 | | - } |
667 | | - }, |
668 | | - "nullable": true, |
| 604 | + "modelName": { |
| 605 | + "type": "string", |
669 | 606 | "metadata": { |
670 | | - "description": "Optional. The resource model definition representing SKU." |
| 607 | + "description": "Required. The format of the Cognitive Services account deployment model." |
671 | 608 | } |
672 | 609 | }, |
673 | | - "raiPolicyName": { |
| 610 | + "version": { |
674 | 611 | "type": "string", |
675 | | - "nullable": true, |
676 | 612 | "metadata": { |
677 | | - "description": "Optional. The name of RAI policy." |
| 613 | + "description": "Required. The version of the Cognitive Services account deployment model." |
678 | 614 | } |
679 | 615 | }, |
680 | | - "versionUpgradeOption": { |
681 | | - "type": "string", |
682 | | - "nullable": true, |
| 616 | + "capacity": { |
| 617 | + "type": "int", |
683 | 618 | "metadata": { |
684 | | - "description": "Optional. The version upgrade option." |
| 619 | + "description": "Required. The capacity of the resource model definition representing SKU." |
685 | 620 | } |
686 | 621 | } |
687 | 622 | }, |
688 | 623 | "metadata": { |
| 624 | + "description": "The AI model deployment type for Cognitive Services account.", |
689 | 625 | "__bicep_imported_from!": { |
690 | 626 | "sourceTemplate": "modules/customTypes.bicep" |
691 | 627 | } |
|
877 | 813 | "location": { |
878 | 814 | "type": "string", |
879 | 815 | "metadata": { |
880 | | - "description": "Specifies the location for all the Azure resources. Defaults to the location of the resource group." |
| 816 | + "azd": { |
| 817 | + "type": "location" |
| 818 | + }, |
| 819 | + "description": "Specifies the location for all the Azure resources." |
881 | 820 | } |
882 | 821 | }, |
883 | | - "aiModelDeployments": { |
884 | | - "type": "array", |
885 | | - "items": { |
886 | | - "$ref": "#/definitions/deploymentsType" |
887 | | - }, |
888 | | - "defaultValue": [], |
| 822 | + "aiEmbeddingModelDeployment": { |
| 823 | + "$ref": "#/definitions/modelDeploymentType", |
889 | 824 | "metadata": { |
890 | | - "description": "Optional. Specifies the OpenAI deployments to create." |
| 825 | + "description": "Specifies the AI embedding model to use for the AI Foundry deployment. This is the model used for text embeddings in AI Foundry. NOTE: Any adjustments to this parameter's values must also be made on the aiDeploymentsLocation metadata in the main.bicep file." |
| 826 | + } |
| 827 | + }, |
| 828 | + "aiGPTModelDeployment": { |
| 829 | + "$ref": "#/definitions/modelDeploymentType", |
| 830 | + "metadata": { |
| 831 | + "description": "Specifies the AI chat model to use for the AI Foundry deployment. This is the model used for chat interactions in AI Foundry. NOTE: Any adjustments to this parameter's values must also be made on the aiDeploymentsLocation metadata in the main.bicep file." |
| 832 | + } |
| 833 | + }, |
| 834 | + "aiDeploymentsLocation": { |
| 835 | + "type": "string", |
| 836 | + "metadata": { |
| 837 | + "azd": { |
| 838 | + "type": "location", |
| 839 | + "usageName": [ |
| 840 | + "OpenAI.GlobalStandard.gpt-4o,150", |
| 841 | + "OpenAI.GlobalStandard.text-embedding-3-small,100" |
| 842 | + ] |
| 843 | + }, |
| 844 | + "description": "Required. Location for AI Foundry deployment. This is the location where the AI Foundry resources will be deployed." |
891 | 845 | } |
892 | 846 | }, |
893 | 847 | "acrEnabled": { |
|
30173 | 30127 | "value": "[variables('resourceToken')]" |
30174 | 30128 | }, |
30175 | 30129 | "location": { |
30176 | | - "value": "[parameters('location')]" |
| 30130 | + "value": "[parameters('aiDeploymentsLocation')]" |
30177 | 30131 | }, |
30178 | 30132 | "networkIsolation": { |
30179 | 30133 | "value": "[parameters('networkIsolation')]" |
|
30187 | 30141 | "value": "[reference('logAnalyticsWorkspace').outputs.resourceId.value]" |
30188 | 30142 | }, |
30189 | 30143 | "aiModelDeployments": { |
30190 | | - "value": "[parameters('aiModelDeployments')]" |
| 30144 | + "copy": [ |
| 30145 | + { |
| 30146 | + "name": "value", |
| 30147 | + "count": "[length(createArray(parameters('aiEmbeddingModelDeployment'), parameters('aiGPTModelDeployment')))]", |
| 30148 | + "input": "[createObject('name', if(empty(tryGet(createArray(parameters('aiEmbeddingModelDeployment'), parameters('aiGPTModelDeployment'))[copyIndex('value')], 'name')), createArray(parameters('aiEmbeddingModelDeployment'), parameters('aiGPTModelDeployment'))[copyIndex('value')].modelName, tryGet(createArray(parameters('aiEmbeddingModelDeployment'), parameters('aiGPTModelDeployment'))[copyIndex('value')], 'name')), 'model', createObject('name', createArray(parameters('aiEmbeddingModelDeployment'), parameters('aiGPTModelDeployment'))[copyIndex('value')].modelName, 'format', 'OpenAI', 'version', createArray(parameters('aiEmbeddingModelDeployment'), parameters('aiGPTModelDeployment'))[copyIndex('value')].version), 'sku', createObject('name', 'GlobalStandard', 'capacity', createArray(parameters('aiEmbeddingModelDeployment'), parameters('aiGPTModelDeployment'))[copyIndex('value')].capacity))]" |
| 30149 | + } |
| 30150 | + ] |
30191 | 30151 | }, |
30192 | 30152 | "userObjectId": { |
30193 | 30153 | "value": "[parameters('userObjectId')]" |
|
55772 | 55732 | "value": "[parameters('projectName')]" |
55773 | 55733 | }, |
55774 | 55734 | "location": { |
55775 | | - "value": "[parameters('location')]" |
| 55735 | + "value": "[parameters('aiDeploymentsLocation')]" |
55776 | 55736 | }, |
55777 | 55737 | "storageName": { |
55778 | 55738 | "value": "[reference('storageAccount').outputs.storageName.value]" |
|
0 commit comments