完成先决条件步骤后,请完成本文中的步骤以部署 Edge RAG 扩展。
先决条件
在开始之前, 请完成 Edge RAG 预览版的部署先决条件。
部署扩展
使用 Azure 门户或 Azure CLI 和Microsoft提供的语言模型或添加自己的语言模型来部署 Edge RAG。
在 Azure 门户中,转到 Azure 本地上的 Azure Kubernetes 群集。
从列表中选择 “设置>扩展>+ 添加”和 “Edge RAG ”。
在“基本信息”选项卡中提供以下信息:
领域 |
价值 |
订阅 |
选择包含 Azure 本地 Azure Kubernetes 服务 (AKS) 群集的订阅。 |
资源组 |
选择包含 AKS Arc 群集的资源组。 |
部署名称 |
请为部署提供一个名称。 |
区域 |
选择要部署 Edge RAG 的区域。 |
集群 |
选择要将 Edge RAG 部署到的群集。 |
在完成时选择“下一步:配置”。
在“配置”选项卡上,提供以下信息:
领域 |
价值 |
部署模式 |
根据可用硬件选择 GPU 模式或 CPU 模式。 |
型号 |
在本部分中输入的信息取决于所选的语言模型。 |
语言模型 |
选择要部署的语言模型。 选择 Microsoft 提供的语言模型或你自己的语言模型。 |
Microsoft语言模型 |
如果选择Microsoft提供,请选择Microsoft提供的语言模型之一。 |
添加自己的语言模型 |
如果选择提供自己的语言模型,请输入以下信息。 |
模型名称 |
输入语言模型的名称。 |
LLM 终结点 |
输入大型语言模型(LLM)终结点的名称,格式 http://some-endpoint 或 https://some-endpoint 。 例如,https://<Endpoint_Name>.openai.azure.com/openai/deployments/<model_name> /chat/completions?api-version=<API_VERSION> 。 |
最大令牌数 (k) |
为语言模型输入介于 4K 到 2048 K 之间的数字范围。 |
SSL 设置 |
|
SSL CNAME |
提供系统的域名。 此域名与应用注册期间提供的重定向 URI 相同。 |
Kubernetes SSL 机密名称 |
为应用程序要使用的 SSL 机密提供友好名称。 默认情况下,Edge RAG 使用自签名 SSL 证书将此名称存储在 kubernetes 机密存储中。 安装后,可以使用官方签名证书更新证书。 |
访问 |
|
Entra 应用 ID |
请提供您在配置身份验证时注册的应用程序的 ID(应用注册 > 您的应用 > 概述)。 |
Entra 租户ID |
提供在配置身份验证过程中注册的应用的租户 ID(“应用注册”> 你的应用 >“概述”)。 |
选择 “下一步:查看 + 创建”。
查看并验证你提供的参数。
选择 “创建 ”以完成 Edge RAG 部署。
部署完成后,在 “扩展”下,验证是否已列出扩展类型 microsoft.arc.rag 和 microsoft.extensiondiagnostics 。
在以下命令中设置参数的值,然后运行该命令。
$gpu_enabled = "true" # Mark it true if you have GPUs available for Edge RAG
$localextname = "edgeragdemo" # Once used do not change
$autoUpgrade = "false"
$tenantId = "<App Tenant ID>" # App registrations -> Your app -> Overview on Azure portal
$appId = "<App ID>" # App registrations -> Your app -> Overview on Azure portal
$domainName = "arcrag.contoso.com" # App redirect URI and this domain name should be the same
$sub = "<Subscription GUID>"
$rg = "<Resource Group name>"
$k8scluster = "<Azure Kubernetes Service (ASK) Arc cluster name>"
$extension "microsoft.arc.rag" # do not change
$n = "arc-rag" # do not change
设置Microsoft提供的语言模型或你自己的语言模型所需的值。
Microsoft提供的语言模型选项:根据需要编辑以下命令并运行该命令。
$modelName = "microsoft/Phi-3.5" # If you want to switch to Mistral 7B, change this variable to "mistralAI/Mistral-7B"
自带语言模型选项:根据需要编辑以下命令并运行该命令。
$apiEndpoint = <Endpoint URI>
$apiModel = <Model Name>
$maxTokensInK = <Max Tokens In K (e.g. 10, 20 etc.)>
填充参数值后,通过为Microsoft提供的语言模型或自己的语言模型运行命令来部署 Azure Arc 扩展:
Microsoft提供的语言模型选项:运行以下命令。
az provider register --namespace Microsoft.KubernetesConfiguration
az feature register --namespace Microsoft.KubernetesConfiguration --name extensions
az k8s-extension create --cluster-type connectedClusters --cluster-name $k8scluster --resource-group $rg --name $localextname --extension-type $extension --debug --release-train preview --auto-upgrade $autoUpgrade `
--configuration-settings isManagedIdentityRequired=true --configuration-settings gpu_enabled=$gpu_enabled --configuration-settings AgentOperationTimeoutInMinutes=30 `
--configuration-settings model=$modelName --configuration-settings auth.tenantId=$tenantId --configuration-settings auth.clientId=$appId --configuration-settings ingress.domainname=$domainName
添加自己的语言模型选项:运行以下命令。
az k8s-extension create --cluster-type connectedClusters --cluster-name $k8scluster --resource-group $rg --name $localextname --extension-type $extension --debug --release-train preview --auto-upgrade $autoUpgrade `
--configuration-settings isManagedIdentityRequired=true --configuration-settings gpu_enabled=$gpu_enabled --configuration-settings AgentOperationTimeoutInMinutes=30 `
--configuration-settings auth.tenantId=$tenantId --configuration-settings auth.clientId=$appId --configuration-settings ingress.domainname=$domainName `
--configuration-settings byom.enabled="true" --configuration-settings byom.apiEndpoint=$apiEndpoint --configuration-settings byom.apiModel=$apiModel --configuration-settings byom.maxTokensInK=$maxTokensInK
Edge RAG 扩展部署通常需要大约 30 分钟,但可能需要更长的时间,具体取决于连接。
添加自己的语言模型
如果在部署 Edge RAG 扩展时添加了自己的语言模型,请完成 为 Edge RAG 配置“BYOM”终结点身份验证中的步骤。
相关内容