vania-janet/multiturn-rag-retrieval-data huggingface dataset:
Depending on your account plan limits, certain capabilities that are required by some of the deployment strategies might not be available. For more information about IBM Cloud accounts, see [Setting up your IBM Cloud account](https://cloud.ibm.com/docs/account?topic=account-account-getting-started) and [Upgrading your account](https://cloud.ibm.com/docs/account?topic=account-upgrading-account).
* A [Satellite cluster group](https://cloud.ibm.com/docs/satellite?topic=satellite-setup-clusters-satconfig) that contains the cluster that is required by the toolchain. The toolchain in this tutorial supports a Satellite cluster group that contains only Red Hat OpenShift clusters.
* Image Pull Secrets. Make sure that you configure the [image pull secrets](https://docs.openshift.com/container-platform/4.6/openshift_images/managing_images/using-image-pull-secrets.html) that are required to deploy application images in your cluster namespace.
* An instance of the [Continuous Delivery](https://cloud.ibm.com/docs/ContinuousDelivery?topic=ContinuousDelivery-getting-started) service.
* Optional. Secrets that are stored in a secrets management vault and managed centrally from a single location. For more information about choosing from the various secrets management and data protection offerings, see [Managing IBM Cloud secrets](https://cloud.ibm.com/docs/secrets-manager?topic=secrets-manager-manage-secrets-ibm-cloud). If you don't already have an instance of the secrets management vault provider of your choice, create one.
* Optional. A namespace that is created by using the container registry command line. To create a namespace, type the following command from the command line:

ibmcloud cr namespace-add <my namespace>

Alternatively, you can create a namespace on the [Container Registry](https://cloud.ibm.com/registry/namespaces) page.
Click Pricing > Pricing plans.
2. Click Add plan > BYOL.
3. Enter the name, URL, and description of the license, for example:





* Name: BYOL for Example Corp Virtual Server Image 1.0.0
* URL: byol.vsimage.examplecorp.html
* Description: This BYOL license is required for the installation and use of the Example Corp Virtual Server Image.







 Step 5: Define your support experience 

Provide details that help users understand how to get support if they encounter issues when they use the Operator bundle. For more information about providing support information, see [Defining your support experience](https://cloud.ibm.com/docs/sell?topic=sell-sw-support-details).

To define your product's support experience, use the following steps:



1. Click Support.
2. Select your product's support provider and complete the support statement field. For the support statement, describe the provided support for your product and add any additional support information that isn't provided in the other fields.



1. If you select Community for your support provider, provide the URL for the support community.
2. If you select Third-party for your support provider, use the following steps to complete the necessary fields.



3. Click Add support details and complete the necessary fields, then click Save to add each detail. You must add at least 1 support detail for your product.
4. After you add all of your product's support details, provide the required URLs for your product.
5. Add all locations where you provide support for your product.
6. Add your escalation information. Do not use a personal phone number or email.
7. Provide your support contact information. This information is for internal use only and is not displayed on the product details page.







 Next steps 

[Onboard and validate your virtual server image](https://cloud.ibm.com/docs/sell?topic=sell-vsipower-onboard).
We don't need a conditional step to handle a response of Yes in step 2 because in that situation processing just continues as normal.





 Getting the amount 

We need one more piece of information before we can complete the customer's request: the amount of money to withdraw.



1. Click New step.
2. In the Assistant says field, type How much do you want to withdraw?.
3. Click Define customer response. We need the customer to specify a monetary amount, so select Currency.







 Finishing the action 

We now have all the information that we need. For our example, we're not going to implement any real logic for making a withdrawal, but we can send a final message to summarize what we're doing.

To do this summary, we need to insert action variables (representing customer responses from previous steps) into our response. At run time, these action variables are replaced with the actual values that are supplied by the customer.



1. Click New step.
2. Now we need to build a confirmation message that says "OK, we will withdraw amount from your account_type account."

To create this response, type the text of the message in the Assistant says field, but in place of the variable values, click the Insert a variable![Action variable icon](https://cloud.ibm.com/docs-content/v1/content/ca9232b3702768f24bb897f48f10778fcda28718/watson-assistant/images/function-math.svg) icon to insert references to action variables:



* For amount, select 4. How much do you want to withdraw?.
* For account_type, select 1. Withdraw from which account?.



![Action editor: message including variable references](https://cloud.ibm.com/docs-content/v1/content/ca9232b3702768f24bb897f48f10778fcda28718/watson-assistant/images/action-editor-message-with-variables.png)
3.
If your action asks for the same type of data in more than one step, use the Always ask for this information setting to prevent the assistant from making incorrect assumptions. For example, you might have an action in which one step asks for a hotel check-in date and another step asks for the check-out date. If you skip asking, the assistant can mistake the check-in date for the check-out date.

To require that a step is always used in the conversation with a customer:



1. In the customer response, click the Settings icon to open Customer response settings.

Zoom

![Customer response settings](https://cloud.ibm.com/docs-content/v1/content/ca9232b3702768f24bb897f48f10778fcda28718/watson-assistant/images/collect-info-customer-response-settings.png)

Customer response settings
2. Choose Always ask for this information, regardless of previous messages.
3. Click Apply.







 Never ask 

There might be some situations where you need a step to never ask a question because you anticipate redundant questions in the conversation.

To set that a step is never asked in the conversation with a customer:



1. In the customer response, click the Settings icon to open Customer response settings.
2. Choose Never ask. Collect information from previous messages.
3. Click Apply.





 Example 

This example explains when you might set a step to never ask for a response.

You might have an action that responds to requests to file an insurance claim. If you expect customers to typically make a request about a specific type of claim, such as auto, home, or medical, you might not want to ask another question about what type. They might say I need to file an auto claim or I want to make a home claim.

Although you still need a step that collects the answer about the type of claim, you might not want or need to ask that explicit question, especially if your assistant is used with the phone integration. Instead, you can create a step with the claim options, but set it to never ask.
You specify the input as plain text or SSML, both of which must be URL-encoded.

IBM Cloud

curl -X GET -u "apikey:{apikey}" --header "Accept: audio/wav" --output hello_world.wav "{url}/v1/synthesize?text=Hello%20world&voice=en-US_MichaelV3Voice"

IBM Cloud Pak for Data

curl -X GET --header "Authorization: Bearer {token}" --header "Accept: audio/wav" --output hello_world.wav "{url}/v1/synthesize?text=Hello%20world&voice=en-US_MichaelV3Voice"""



Although the POST and GET methods offer equivalent functionality, it is always more secure to pass input text to the service with the POST method. A POST request passes input in the body of the request. A GET request exposes the data in the URL.





 Punctuating input text 

Write text for synthesis with the punctuation you would use normally. For example, include commas, periods, exclamation points, and questions marks as you would in normal writing.

The service considers punctuation when synthesizing text. For example, commas and end-of-sentence punctuation affect the audio by inserting pauses at appropriate places in the resulting synthesized speech. End-of-sentence punctuation such as periods, exclamation points, and question marks also change the intonation and inflection of the speech. You can also use SSML elements to affect these aspects of the speech.





 Specifying SSML input 

The Speech Synthesis Markup Language (SSML) is an XML-based markup language that is designed to provide annotations of text for speech synthesis applications such as the Text to Speech service. You can use SSML elements and their attributes to gain greater control over the synthesis and resulting audio output.

For more information about using SSML to annotate input text, see [Understanding SSML](https://cloud.ibm.com/docs/text-to-speech?topic=text-to-speech-ssml).
If you encounter errors with passing JSON content on the command line, you might need to adjust the strings for quotation-escaping requirements that are specific to your operating system. For more information, see [Using quotation marks with strings in the IBM Cloud CLI](https://cloud.ibm.com/docs/cli?topic=cli-quote-strings).

Success! Now you can store the secret in Secrets Manager that you want to populate in your Kubernetes cluster. Continue to the next step.









 Step 2: Create a secret in Secrets Manager 

Secrets are application-specific and can vary based on the individual app or service that requires them. A secret might consist of a username, password, API key, or any other type of credential.

Secrets Manager supports various [types of secrets](https://cloud.ibm.com/docs/secrets-manager?topic=secrets-manager-what-is-secretsecret-types) that you can create and manage in the service. For example, if you need to manage an API key for an app that is protected by IBM Cloud IAM authentication, you can create an [IAM credential](https://cloud.ibm.com/docs/secrets-manager?topic=secrets-manager-iam-credentials). Or, if you need to manage a secret that can hold any type of structured or unstructured data, you can create an [arbitrary secret](https://cloud.ibm.com/docs/secrets-manager?topic=secrets-manager-arbitrary-secrets).

In this tutorial, you create a username and password as an example. To create a secret from the IBM Cloud CLI, you use the [ibmcloud secrets-manager secret-create](https://cloud.ibm.com/docs/secrets-manager?topic=secrets-manager-cli-plugin-secrets-manager-clisecrets-manager-cli-secret-create-command) command. Run the following command to create the secret and store its ID as an environment variable.
From the My products page in the IBM Cloud Partner Center, click Provide details in the notification that explains that company details are required.
2. In the Digital provider agreement section, click Standard.
3. Click the IBM Digital Provider Agreement link to review the agreement.
4. Select I understand and agree to the IBM Digital Provider Agreement, and click Save.







 Step 2: Provide your product name and type 

When you add a product, you can add a new product or import an existing product from a private catalog. For the purposes of this tutorial, add a new product.



1. From the IBM Cloud Partner Center, click Create.
2. Enter the name of your Terraform template, for example, Example Corp Terraform template 1.0.0. Make sure that the name meets the following requirements:



* Use 60 characters or less.
* Do not include "IBM Cloud".
* Do not include the name of your company, former product names, or details like deployment targets and pricing. You can include this information in your readme file.



3. Select the product type. For the purposes of this tutorial, select Deployable software.

The product type that you select is used for tax assessment purposes.
4. Click Add.







 Step 3: Define your catalog entry and product page 

Provide the details that are displayed on your catalog entry and product page when your Terraform template is published in the IBM Cloud catalog.



1. Click Product details, and enter the URL to your company or product logo, such as http://svgur.com/i/TTP.svg.
2. Provide a short description of your product, which is displayed on your catalog entry. For the purposes of this tutorial, you can enter Build, change, and version infrastructure safely and efficiently.
3. From the Category list, select an option that best fits how users might use your product, for example, select Security. Categories are used to organize products in the catalog based on common solutions, function, or use.
4. Enter keywords that users might use when they search the catalog for your product, for example, terraform or template.
5.
From the My products page in the IBM Cloud Partner Center, click Provide details in the notification that explains that company details are required.
2. In the Digital provider agreement section, click Standard.
3. Click the IBM Digital Provider Agreement link to review the agreement.
4. Select I understand and agree to the IBM Digital Provider Agreement, and click Save.







 Step 2: Provide your product name and type 

When you add a product, you have the option to add a new product or import an existing product from a private catalog. For the purposes of this tutorial, add a new product.



1. From the IBM Cloud Partner Center, click Create.
2. Enter the name of your Operator, for example, Example Corp Node-RED Operator 1.0.0. Make sure that the name meets the following requirements:



* Use 60 characters or less.
* Do not include "IBM Cloud".
* Do not include the name of your company, former product names, or details like deployment targets and pricing. You can include this information in your readme file.



3. Select the product type. For the purposes of this tutorial, select Deployable software.

The product type that you select is used for tax assessment purposes.
4. Click Add.







 Step 3: Define your catalog entry and product page 

Provide details that are displayed on your catalog entry and product page when your Operator is published in the IBM Cloud catalog.



1. Click Product details > Add logo, and enter the URL to your company or product logo, such as http://svgur.com/i/TTP.svg.
2. Provide a short description of your product, which is displayed on your catalog entry. For the purposes of this tutorial, you can enter This Operator is a developer tool.
3. From the Category list, select an option that best fits how users might use your product, for example, Developer tools. Categories are used to organize products in the catalog based on common solutions, function, or use.
4. Enter keywords that users might use when searching the catalog for your product, for example, cluster, operator, node-red.
5.
Why did a dedicated host fail to create? 

If you see an entry in the error log with message ID dedicated-host.00001, then the specified dedicated host has failed to create due to insufficient capacity in the requested region.

  What’s happening 

The dedicated host with the specified ID in the error message failed to create: dedicated-host.00001: Failed to create dedicated host <Dedicated Host ID> due to insufficient capacity in zone.

  Why it’s happening 

The specified dedicated host could not be created due to a lack of capacity in the requested region.

  How to fix it 

At the time of the error message, there was not enough capacity to create the specified dedicated host in the requested region. Try creating another dedicated host with different hardware requirements or in another region.
Using a voice for speech synthesis 

Both the HTTP POST and GET /v1/synthesize methods, as well as the WebSocket /v1/synthesize method, accept an optional voice query parameter. You use the voice parameter to indicate the voice and language that are to be used for speech synthesis. The service bases its understanding of the language for the input text on the language of the specified voice.

Be sure to specify a voice that matches the language of the input text. For example, if you specify the French voice fr-FR_ReneeV3Voice, the service expects to receive input text that is written in French. If you pass text that is not written in the language of the voice (for example, English text for the French voice), the service might not produce meaningful results.



 Specify a voice examples 

The following example HTTP POST request uses the voice en-US_AllisonV3Voice for speech synthesis:

IBM Cloud

curl -X POST -u "apikey:{apikey}" --header "Content-Type: application/json" --header "Accept: audio/wav" --data "{"text":"hello world"}" --output hello_world.wav "{url}/v1/synthesize?voice=en-US_AllisonV3Voice"

IBM Cloud Pak for Data

curl -X POST --header "Authorization: Bearer {token}" --header "Content-Type: application/json" --header "Accept: audio/wav" --data "{"text":"hello world"}" --output hello_world.wav "{url}/v1/synthesize?voice=en-US_AllisonV3Voice"

The following example shows an equivalent HTTP GET request for speech synthesis:

IBM Cloud

curl -X GET -u "apikey:{apikey}" --output hello_world.wav "{url}/v1/synthesize?accept=audio%2Fwav&text=hello%20world&voice=en-US_AllisonV3Voice"

IBM Cloud Pak for Data
It is expected for message values to duplicate information from code, target, and custom extensions to the error model.

Importantly, message values are still meant for developers and for this reason SHOULD NOT be localized or written for use in a user interface. Fields mentioned within a message SHOULD be mentioned by exact field name (e.g., first_name, not "first name").

Consider the example above of an error code with value invalid_color. A poor message would be:

"The color provided for paint was invalid."

Unlike the code, a message MAY prescribe a specific solution, thereby adding value. A better message would be:

"The color for paint must be red or blue."

As demonstrated in the above examples, message values SHOULD use the back-tick character to enclose field names, parameter names, header names, and specific values.







 Robustness tradeoffs 

The robustness principle section has been moved to a [new page](https://cloud.ibm.com/docs/api-handbook?topic=api-handbook-robustness), and the previous guidance has been substantially repudiated.
Make sure your request conforms to the [API documentation](https://cloud.ibm.com/apidocs/vpc-on-classic). If this problem persists, [contact support](https://cloud.ibm.com/docs/vpc-on-classic?topic=vpc-on-classic-getting-help-and-support).





 validation_invalid_ref 

Message: The value is not a valid HREF.

Make sure your request conforms to the [API documentation](https://cloud.ibm.com/apidocs/vpc-on-classic). If this problem persists, [contact support](https://cloud.ibm.com/docs/vpc-on-classic?topic=vpc-on-classic-getting-help-and-support).





 validation_non_empty_uuid 

Message: None

Make sure your request conforms to the [API documentation](https://cloud.ibm.com/apidocs/vpc-on-classic). If this problem persists, [contact support](https://cloud.ibm.com/docs/vpc-on-classic?topic=vpc-on-classic-getting-help-and-support).





 validation_required_field 

Message: Missing a required field.

Make sure your request conforms to the [API documentation](https://cloud.ibm.com/apidocs/vpc-on-classic). If this problem persists, [contact support](https://cloud.ibm.com/docs/vpc-on-classic?topic=vpc-on-classic-getting-help-and-support).





 validation_unique_failed 

Message: The field supplied must be unique.

You might have specified a name that is already in use. Try a different value.

Make sure your request conforms to the [API documentation](https://cloud.ibm.com/apidocs/vpc-on-classic).
Why can’t I create a new service instance? 

You are unable to create or add a new service instance.

  What’s happening 

You might receive one of the following error messages when you create a service:

> Create service error.

or

> Create Service [500, Internal Server Error]. An error occurred while trying to create the service. Please try again later.

  Why it’s happening 

Creating a service instance can fail when you don't have access, exceed a plan limit, or experience a problem with your web browser. An active incident or planned maintenance might also affect your ability to create a service instance.

  How to fix it 

To resolve this issue, use one of the following options:



*  You might not have the correct access. You must have the editor role or higher to create a service instance. Contact the account owner to request the correct access. For more information, see [Cloud IAM roles](https://cloud.ibm.com/docs/account?topic=account-userrolesiamusermanrol).
*  Creating an instance might exceed a plan or account limit. Review the plan features on the catalog page or in the specific service's documentation. From the Resource list page, you can view what instances currently exist that count towards the plan or account limit. For example, there's a limit of one instance per Lite plan.
*  If you're experiencing a web browser issue, see [Why do I encounter console pages that don't load?](https://cloud.ibm.com/docs/account?topic=account-ts_err).
*  Go to the [IBM Cloud - Status](https://cloud.ibm.com/status) page to check whether an active incident or planned maintenance is affecting your ability to create a service instance.
* Do not specify credentials in plain text in calls to Continuous Delivery APIs, such as when you configure [tool integrations](https://cloud.ibm.com/apidocs/toolchaincreate-tool), [Tekton pipeline environment properties](https://cloud.ibm.com/apidocs/tekton-pipelinecreate-tekton-pipeline-properties), or [Tekton pipeline trigger properties](https://cloud.ibm.com/apidocs/tekton-pipelinecreate-tekton-pipeline-trigger-properties).
* Do not specify credentials in plain text in Terraform configuration files, such as when you define tool integration resources, Tekton pipeline environment property resources, or Tekton pipeline trigger property resources. Instead, manage credentials in a secrets storage service and specify them by reference in API calls and Terraform configurations. For more information about managing secrets by reference, see [Protecting your credentials by using secrets references](https://cloud.ibm.com/docs/ContinuousDelivery?topic=ContinuousDelivery-cd_data_securitycd_secrets_references).



IBM Cloud provides several options that you can use for secure key storage and secrets.



* [Classic pipeline secure environment properties](https://cloud.ibm.com/docs/ContinuousDelivery?topic=ContinuousDelivery-deliverypipeline_about)
* [Tekton pipeline secure environment properties](https://cloud.ibm.com/docs/ContinuousDelivery?topic=ContinuousDelivery-tekton-pipelines)
* [IBM® Key Protect for IBM Cloud®](https://cloud.ibm.com/docs/key-protect?topic=key-protect-getting-started-tutorial)
* [IBM Cloud® Hyper Protect Crypto Services](https://cloud.ibm.com/docs/hs-crypto?topic=hs-crypto-get-started)
* [HashiCorp Vault](https://www.vaultproject.io/)