vania-janet/multiturn-rag-retrieval-data huggingface dataset:
Typographical errors have the unintended consequence of modifying a custom model for nonexistent words, as do ill-formed HTML tags that are left in a corpus file.

To validate and, if necessary, correct a custom word for a custom model, use the following methods:



* List all of the words from a custom model by using the GET /v1/customizations/{customization_id}/words method or query an individual word with the GET /v1/customizations/{customization_id}/words/{word_name} method. For more information, see [Listing custom words from a custom language model](https://cloud.ibm.com/docs/speech-to-text?topic=speech-to-text-manageWordslistWords).
* Modify words in a custom model to correct errors or to add display-as values by using the POST /v1/customizations/{customization_id}/words or PUT /v1/customizations/{customization_id}/words/{word_name} method. For more information, see [Working with custom words for next-generation models](https://cloud.ibm.com/docs/speech-to-text?topic=speech-to-text-corporaWords-ngworkingWords).
* Delete extraneous words that are introduced in error (for example, by typographical or other mistakes) by using the DELETE /v1/customizations/{customization_id}/words/{word_name} method. For more information, see [Deleting a word from a custom language model](https://cloud.ibm.com/docs/speech-to-text?topic=speech-to-text-manageWordsdeleteWord).
* When <n>=0, the value is 123 this.
* When <n>=1, the value is 123.
* When <n>=2, the value is this.







 String.find(String regexp) 

This method returns true if any segment of the string matches the input regular expression. You can call this method against a JSONArray or JSONObject element, and it will convert the array or object to a string before making the comparison.

For example, if the action variable ${step_297} collects the string Hello 123456, then the the following expression returns true:

${step_297}.find('^[^d][d]{6}[^d]$')

The condition is true because the numeric portion of the input text matches the regular expression ^[^d][d]{6}[^d]$.





 String.getMatch(String regexp, Integer matchIndex) 

This method returns a string that matches the occurrence of the specified regular expression pattern. This method returns an empty string if no match is found.

As matches are found, they are added to what you can think of as an array of matches. Because the array element count starts at 0, if you want to return the third match, you would specify 2 as the matchIndex value. For example, if you enter a text string with three words that match the specified pattern, you can return the first, second, or third match only by specifying its index value.

For example, the following example is looking for a group of numbers in an action variable.

${step_297}.getMatch('([d]+)', 1)

If the action variable ${step_297} contains the string hello 123 i said 456 and 8910, this expression returns 456.





 String.isEmpty() 

This method returns true if the string is an empty string, but not null, as in this example:

${step_297}.isEmpty()





 String.length() 

This method returns the character length of the string, as in this example:

${step_297}.length()
Migrating from neural voices 

IBM Cloud

The IBM Watson® Text to Speech service offers enhanced neural voices and expressive neural voices. All neural voices were removed from the service on 31 March 2023. New enhanced neural and expressive neural voices are available for obsolete Australian English, Dutch Netherlands, and Korean neural voices. This topic describes the steps that you need to take to migrate from obsolete neural voices to enhanced or expressive neural voices.



 Step 1: Identify the new voices to which you can migrate 

Identify the new voices that you can use in place of the obsolete neural voices. Table 1 lists the new voices to which you can migrate.



Table 1. Voices to which you can migrate from neural voices

 Language Obsolete neural voices Enhanced neural and expressive neural voices 

 Australian English en-AU_CraigVoice <br>en-AU_MadisonVoice <br>en-AU_SteveVoice en-AU_HeidiExpressive (expressive neural) <br>en-AU_JackExpressive (expressive neural) 
 Dutch Netherlands nl-NL_EmmaVoice <br>nl-NL_LiamVoice nl-NL_MerelV3Voice (enhanced neural) 
 Korean ko-KR_HyunjunVoice <br>ko-KR_SiWooVoice <br>ko-KR_YoungmiVoice <br>ko-KR_YunaVoice ko-KR_JinV3Voice (enhanced neural) 







 Step 2: Use the new voices in speech synthesis 

Use the new voices in speech synthesis requests to determine their effectiveness for your application. For example, the following example uses the obsolete Australian English voice en-AU_CraigVoice:

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-AU_CraigVoice"

The following example replaces the obsolete voice with the Australian English voice en-AU_JackExpressive:
You can also express an asterisk * and question mark ? as a literal value by enclosing each within two sets of curly brackets {{}}. 
 stringExists String must be present but can have any none zero value. 
 stringEqualsAnyOf Case-sensitive exact string matching any of the strings in an array of strings. 
 stringMatchAnyOf Case-sensitive string matching any of the strings in an array of strings. The values can include a multi-character wildcard (), which matches any sequence of zero or more characters, a single-character wildcard (?), matching any single character, or both. You can also express an asterisk * and question mark ? as a literal value by enclosing each within two sets of curly brackets {{}}. 







 Step 7: Set the license requirements 

If users are required to accept any license agreements beyond the IBM Cloud Services Agreement, provide the URL to each agreement. Or, if users can bring their own licenses, you can provide that URL as well.



1. Click Add license agreements > Add.
2. Enter the name and URL, and click Update.
3. Click Next.







 Step 8: Review your readme file 

The TGZ file that you imported to your private catalog includes a readme file that provides product information for the virtual server image. If you want to make updates to the readme file, you can edit it directly from your private catalog. For the purposes of this tutorial, the following steps describe how to edit the description of the readme file.



1. Click the Edit icon ![Edit icon](https://cloud.ibm.com/docs-content/v1/content/4d8c6eec891cff72b666dc24bd3211810c77fb42/icons/edit-tagging.svg), and update the description with the following sentence:

Create and deploy a virtual server with ease by using a custom image.
2. Click Save > Next.







 Step 9: Validate the virtual server image 

Validate that you can deploy the virtual server image to your Power Systems Virtual Server instance.
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 Operator bundle](https://cloud.ibm.com/docs/sell?topic=sell-bundle-onboard)
Message 

Missing body in request

Reason code: NO_BODY_ERR





 HTTP status code 

400 - Bad Request

The HTTP 400 Bad Request response status code indicates that the server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).

The client should not repeat this request without modification.





 Context 

This error occurs when you "rewrap" or "unwrap" a key and there is no body.



 Example 

The following steps return a missing body in request error.



1. Create a root key
2. Create a data encryption key (DEK), this is the plaintext
3. Wrap the DEK with the root key, this creates a ciphertext
4. Request fails to unwrap the new ciphertext to reveal the original DEK (plaintext) because of a missing body
5. Request succeeds to unwrap the new ciphertext to reveal the original DEK (plaintext) because the body is specified



 step 1 - create a root key
$ KEY_ID=$(ibmcloud kp key create example-key -i $KP_INSTANCE_ID --output json | jq -r '.["id"]')

$ echo $KEY_ID

66ffaf5b-86c8-4a50-8a2a-920ae71f86dc

 step 2 - create a random, base64-encoded, 32-byte data encryption key (DEK)
$ PLAINTEXT=$(openssl rand -base64 32)

$ echo $PLAINTEXT

2eLAD3LyD3H2bq8dIDAy0A/lN9DSE/Ne3bwu40CdErs=

 step 3 - wrap the DEK (plaintext key) with the root key, creating the ciphertext
$ CIPHERTEXT=$(ibmcloud kp key wrap $KEY_ID -i $KP_INSTANCE_ID -p $PLAINTEXT --output json | jq -r '.["Ciphertext"]')
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 

You can now [add your broker](https://cloud.ibm.com/docs/sell?topic=sell-broker-onboard).
[Navigation Menu icon](https://cloud.ibm.com/docs-content/v1/content/ff5860bfede49db3197c4bbba7f7123769bdc068/icons/icon_hamburger.svg) > Partner Center > Sell > My Products.
2. Select the product that you're onboarding, and click Support.
3. Select your product's support provider.



1. If you select Community, provide the support statement and the URL for the support community, and select the languages in which support is provided.
2. If you select Third-party, use the following steps to complete the necessary fields.









 Providing your product's support information 

If your product has third-party or IBM Cloud provided support, you need to add at least one support detail. The details that you provide are displayed on your product details page in the catalog. At minimum, support must be available 8 hours a day, Monday through Friday. The recommended support coverage is 24 hours a day, 7 days a week, and 365 days a year.

Don't add details that have personal information, for example, personal emails.

Use the following steps to add support details for your product:



1. From the Partner Center Support tab, provide your product's support statement.

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.
2. Click Add support details, provide your support availability, then click Save to add each detail. You must add at least 1 support detail for your product.



Table 1. Support details

 Support detail Description 

 Email Your company email where users can contact support. 
 Chat The URL for where users can get direct contact with a support representative. 
 Slack The URL for the company Slack channel. 
 Phone number The company phone number where users can get direct contact with a support representative. 
 Other Any additional information, email, URL, or phone number that you want to provide. 



3. After you add all of your product's support details, provide the required URLs for your product.
4.
A field MUST NOT be omitted from a response body because an internal failure is currently preventing the system from retrieving its value. An internal failure of the service to populate a value MUST cause the entire request to fail with a 500 status code and appropriate error response model.

A field SHOULD NOT be omitted from a response body because the system hasn't yet computed its value. If a field is optional for that reason, its omission MUST be limited to a specific and observable resource state, such as a status value of pending.

If the omission of a field in a response body has an intuitive semantic, that semantic SHOULD be honored. For example, if a response body field defines the date and time at which an event occurred, and the field is optional, the omission of the field SHOULD indicate that the event has never occurred.

The omission of an optional field from a response body SHOULD be determined by an aspect of the request or predictable from and consistent with other aspects of observable state. For example, if a property is inapplicable for a certain resource subtype, that subtype SHOULD be represented in a clear way (generally a specific value of an enumeration field) that allows a client to infer when the optional field will be omitted.

A field MUST NOT contain a null value in a response body. Rather, the absence of a value for a field in the observable resource state SHOULD be represented by the omission of the field from the response.

Permitting both omitted fields and null values in response bodies would present a usability problem because of the potential for conflation by both human developers and JSON deserializers. The choice of omission instead of sending explicit null values can be considered stylistic, but is also supported by the use of JSON merge patch, [whose specification notes](https://datatracker.ietf.org/doc/html/rfc7386section-1) that its own use of null as a sentinel limits its suitability to "describing modifications to JSON documents that primarily use objects for their structure and do not make use of explicit null values."







 Examples 

Every primitive property in a schema MUST have a valid realistic example value.
6. Provide the URL to the end user license agreement (EULA) that users must agree with to use your product. Do not include billing, payment, or tax terms in this agreement.
7. Provide a list of features that highlights your service's attributes and benefits for users.

Use a descriptive title and 1 - 2 sentences for each feature. You want the information to be visually scannable for users.
8. Provide a detailed description of your product that explains its value and what users gain by using it. The detailed description is displayed at the beginning of your product page in the catalog. You can expand on the short description that you provide for your catalog entry, but don't repeat it.
9. Provide links to high-quality images or videos to help illustrate what your product is, its value, and user benefits. The supported media types are images, videos in MP4 or WebM file format, and videos hosted on YouTube or Vimeo.

Some examples of effective media include an introductory walkthrough of your product, an explanation of what your product is and why users might want to use it, or a comparison of certain features.
10. Provide a link to documentation that helps users understand and learn more about how to use your service.







 Step 6: 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.
"support_type": "third-party"
}'

The details that you provide are displayed on your product details page in the catalog.





 Providing your product's support information by using the API 

You can programmatically provide the support information of your product by calling the [Partner Center Sell API](https://cloud.ibm.com/apidocs/partner-center-sellupdate-support) as shown in the following sample request. You can provide your support site URL, support contacts, or the support escalation process. The example adds the https://my-company.com/support support site URL to your product:

curl --request PATCH --url https://product-
lifecycle.api.cloud.ibm.com/openapi/v1/products/9fab83da-98cb-4f18-
a7ba-b6f0435c9673/support --header 'Authorization: Bearer TOKEN' --header 'Content-Type:
application/json' --data '{
"url": "https://my-company.com/support",
"case": "case",
"contacts": "JohnSupport@my-company.com",
"country": "us",
"escalationProcess": "Customers can escalate support cases via email.",
}'

The details that you provide are displayed on your product details page in the catalog.





 Updating your product's support information by using the API 

You can programmatically update the support information of your product by calling the [Partner Center Sell API](https://cloud.ibm.com/apidocs/partner-center-sellupdate-support) as shown in the following sample request. The example updates the support site URL to https://my-updated-company.com/support:

curl --request PATCH --url https://product-
lifecycle.api.cloud.ibm.com/openapi/v1/products/9fab83da-98cb-4f18-
What size did you want? We have small, medium, and large. 
 @sys-time $time When do you need the pizza by? For delivery by $time. What time did you want it delivered? We need at least a half hour to prepare it. 



5. Make a slot optional or disable it under certain conditions. You can optionally configure a slot in these ways:



* Optional: To make a slot optional, add a slot without a prompt. Your assistant does not ask the user for the information, but it does look for the information in the user input, and saves the value if the user provides it. For example, you might add a slot that captures dietary restriction informations in case the user specifies any. However, you don't want to ask all users for dietary information since it is irrelevant in most cases.



Optional slot

 Information Check for Save as 

 Wheat restriction @dietary $dietary 



If you make a slot optional, only reference its context variable in the node-level response text if you can word it such that it makes sense even if no value is provided for the slot. For example, you might word a summary statement like this, I am ordering a $size $dietary pizza for delivery at $time. The resulting text makes sense whether the dietary restriction information, such as gluten-free or dairy-free, is provided or not. The result is either, I am ordering a large gluten-free pizza for delivery at 3:00PM. or I am ordering a large pizza for delivery at 3:00PM.
* Conditional: If you want a slot to be enabled only under certain conditions, then you can add a condition to it. For example, if slot 1 asks for a meeting start time, slot 2 captures the meeting duration, and slot 3 captures the end time, then you might want to enable slot 3 (and ask for the meeting end time) only if a value for slot 2 is not provided. To make a slot conditional, edit the slot, and then from the More!
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 Operator](https://cloud.ibm.com/docs/sell?topic=sell-operator-onboard).
"Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid.If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it.A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007.Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law.<-- </section "id="section-en-notice-patents" "> --><-- <section "id="section-en-notice-no-surrender" "> --> 12. No Surrender of Others' Freedom If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License.