azure-search-openai-demo icon indicating copy to clipboard operation
azure-search-openai-demo copied to clipboard

may i change the tier level of azure search service?

Open arnoldzhw opened this issue 2 years ago • 13 comments

After deployment, I found it was standard level of azure search service. May I change it to free or basic tier?

It seemed that the tier cannot be changed during the lifecycle of azure search service.

Where is the sku setting? May I change it to free or basic?

Thanks.

--Bill

arnoldzhw avatar Apr 12 '23 02:04 arnoldzhw

Same, i only have standard tier S0, not sure whether I simply do not have access to this resource. As such can not make use of the openai service.... when deploying it shows that there is a bad service request, with an issue with quota limit. Not making much sense to me at all.

nsbuttar avatar Apr 12 '23 08:04 nsbuttar

You may check if openai service is enabled in your subscription and the right region (such as east us) is seleced.

When I tried to deploy it at the first time, I typed wrong region (east us 2) and got the error message about quota limit.

arnoldzhw avatar Apr 15 '23 03:04 arnoldzhw

Looks like free and basic do not support the semantic search. I tried swapping to free and 'azd up' no longer worked due to semantic search being unsupported.

aorlowskiddm avatar Apr 20 '23 22:04 aorlowskiddm

I looked in the bicep files and they are setting semantic search to disabled. You can swap the tiers from standard to basic in the main,parameters file and remove semanticSearch: semanticSearch from the search-services.bicep file else it complains during deployment, even if basic is selected. image

jrudley avatar Apr 21 '23 15:04 jrudley

It's weird, you do need semantic search, even tho the bicep files set it to disabled. Error: (FeatureNotSupportedInService) Semantic search is not enabled for this service.

jrudley avatar Apr 21 '23 16:04 jrudley

I found that you have to be careful with setting azure resources. I had EastUS2, which is not supported by the service. So ensure that you have all resources in EastUS or WestUS. Then it worked for me. cheers

nsbuttar avatar Apr 21 '23 22:04 nsbuttar

Can anyone please share the correct configurations so free tier level of azure search service can be used?

pchurak avatar May 30 '23 11:05 pchurak

I changed 'free' all ACS SKU in infra folder and deleted semantic search. finally, got this result : BadRequest: Resource identity is not supported for the selected SKU what more can I change?

SoongFish avatar May 31 '23 06:05 SoongFish

You can change tier in Azure Portal or in INFRA config files in infra folder:

example in infra/core/search/search-services.bicep

change partitionCount: 1 to partitionCount: 2

itmilos avatar May 31 '23 08:05 itmilos

Can anyone please share the correct configurations so free tier level of azure search service can be used?

I have exactly the same question for basic tier level. I can't get rid of the "Error: (FeatureNotSupportedInService) Semantic search is not enabled for this service" even after replacing the ACS tier to 'basic' in infra/core/search/search-services.bicep and infra/main.parameters.json and semanticSearch: semanticSearch from the latter file.

My zone is West Europe.

udiphilips avatar May 31 '23 19:05 udiphilips

During my small test session, it seemed the search service was the most expensive azure resource for this demo. I wanted to try using the free version of search service although I can't find any documentation explaining how to achieve this. I've been getting all of the same errors everyone is posting here until I eventually figured it out. So here's how I went about it:

  1. do a standard setup provisioning all the resources with default pricing teir.
  2. Delete the search service
  3. Create a new search service on the free tier
  4. Open keys of the new search service and change "API access control" from "API keys" to "both"
  5. If you use a different name for your new search service, be sure to update the azd environment variable to the new name e.g. azd env set AZURE_SEARCH_SERVICE "gptkb-cheap"
  6. Run scripts/prepdocs.ps1 (or I assume prepdocs.sh works the same)
  7. Neither the free or basic versions support symantic search. So you must open app/frontend/src/pages/chat/chat.tsx line 20 and change from const [useSemanticRanker, setUseSemanticRanker] = useState(true); to const [useSemanticRanker, setUseSemanticRanker] = useState(false); save changes
  8. I'm running mine locally with no app service or plan so the last step is simply to re-run app/start.ps1. If you're running yours in azure, you may get away with running azd deploy - I just haven't tested it.

I was sceptical of using this solution without semantic search, but the results seem to come through ok. It answers my questions on the small demo data set plus a bit of my own.

phlplowe9 avatar Jun 21 '23 02:06 phlplowe9

Thank you!

I hadn't solved this issue by myself, so I didn't post the solution here (I'm not certain what it was, actually). I worked with basic tier. My test session demonstrated a clear performance hit due to the lack of semantic search. For instance, documents that explained how to enable a process were not found when I asked whether I could disable the process.

udiphilips avatar Jun 21 '23 06:06 udiphilips

If you have an error "Resource identity is not supported for the selected SKU" you need to delete this line from search.services.bicep: identity: { type: 'SystemAssigned' }

jomieljaniuk avatar Jul 04 '23 14:07 jomieljaniuk

I have changed the sku name in search-services.bicep and searchServiceSkuName in main.bicep to 'free', but after running azd up the deployed search service is still in standard tier. I can't find any other places in the project to change the tier of search service. Did I miss something?

Patck63 avatar Jul 19 '23 10:07 Patck63

There is also parameter "searchServiceSkuName": { "value": "free" }, In main.parametes.json file. I dont know why there is no one parameter to change, probably another improvment to do.

jomieljaniuk avatar Jul 19 '23 10:07 jomieljaniuk

I succeeded to deploy a working demo with free tier search service. Here's what I did:

  1. updated "searchServiceSkuName" to { "value": "free" } in the main.parameters.json file
  2. commented out identity: { type: 'SystemAssigned' } and semanticSearch: semanticSearch in search-services.bicep
  3. updated the default value to false of useSemanticRanker in Chat.tsx and OneShot.tsx

Although I succeeded, there are still leave some strange things:

  1. The value of sku in main.bicep and search-services.bicep seems to be ignored because I reverted them to the original 'standard', only changed the "searchServiceSkuName" in main.parameters.json
  2. Leaving semanticSearch as "disabled" at search-services.bicep doesn't disable it at the deployment, but commenting it out does.

Tested with one query, the one without semantic search required ~18.5s but the one with semantic search needs ~12.9s. But the number of documents indexed is different (want to save time testing the deployment) so the reference value here might be low. Will try to index the same set of documents and test again.

Patck63 avatar Jul 19 '23 15:07 Patck63

I also succeeded to deploy free tier search service after comment this option in main.bicep.

module searchService 'core/search/search-services.bicep' = { name: 'search-service' scope: searchServiceResourceGroup params: { name: !empty(searchServiceName) ? searchServiceName : 'gptkb-${resourceToken}' location: searchServiceResourceGroupLocation tags: tags authOptions: { aadOrApiKey: { aadAuthFailureMode: 'http401WithBearerChallenge' } } sku: { name: searchServiceSkuName } // semanticSearch: 'free' } }

reference : https://learn.microsoft.com/en-us/azure/search/semantic-search-overview#availability-and-pricing Semantic search is available on search services at the Basic and higher tiers, subject to regional availability.

kshokn2 avatar Sep 14 '23 11:09 kshokn2

@kshokn2 I just experimented myself and realized the free tier also doesn't support managed identity, how did you get around that issue? are you using keys?

pamelafox avatar Sep 15 '23 21:09 pamelafox

@pamelafox I've followed Patck63's suggestion (https://github.com/Azure-Samples/azure-search-openai-demo/issues/107#issuecomment-1642300981) a month ago and succeeded deploying and demoing the app using the free searchService tier. Looks like they dropped semantic search support for the free tier sometime between then and last week because my deployment stopped working (got HTTP 500s when chatting). For small demos it would be awesome to have that option again.

gmontamat avatar Oct 10 '23 16:10 gmontamat

Interesting, I didn't realize it changed. I've passed your feedback onto ACS team.

pamelafox avatar Oct 10 '23 18:10 pamelafox

I'm going to close this issue as completed since you can now change the tier via azd env set AZURE_SEARCH_SERVICE_SKU basic The fact that you can't change it to free tier specifically is tracked here: https://github.com/Azure-Samples/azure-search-openai-demo/issues/586 (But that depends on the product, so may not ever change)

pamelafox avatar Oct 10 '23 18:10 pamelafox