Formatting Script Variables

Proper variable formatting is crucial for ensuring accurate pronunciation and presentation of information. This document will guide you through the available format functions for different variable types, including strings, numbers, and dates, along with how to properly implement these formats.

Formatting Functions

When writing scripts, several formatting functions are available for handling different data types, including strings, numbers, and dates.

String Formatting Functions

The following functions can be applied to strings to modify their casing or presentation:

  1. lowercase: Converts all letters in the string to lowercase.
  2. uppercase: Converts all letters in the string to uppercase.
  3. capitalize: Capitalizes the first letter of the string, while the rest remain in same case.
  4. spelling: Breaks the word into individual characters for easier pronunciation.
  5. camel: Capitalizes the first letter of each word and lowercase's remaining characters in word
  6. expand_address: Expands address abbreviations into full word for better agent pronunciation (st. -> street)

Example:

{variable_name%capitalize}

The above example would format the value of variable_name by capitalizing its first letter.

Number Formatting Functions

Numbers can also be formatted for specific uses to better suit the needs of the AI agent:

  1. implied_hundreds: Multiplies the number by 100 if it is less than 100.
  2. implied_thousands: Multiplies the number by 1000 if it is less than 1000.
  3. spelling: Breaks the number into individual digits or characters.

Example:

If number_variable is 85 and the format function {number_variable%implied_hundreds} is used, the result will be 8500.

Date Formatting

Dates can also be formatted to meet different requirements. This uses the formatting syntax provided by the Moment.js library. Detailed information on formatting dates can be found here.

Formatting Syntax

To format a variable in a script, the syntax involves the variable name followed by a percentage sign (%) and the formatting function. Below is the general syntax:

{variable_name%format_function}

Example:

If you have a variable representing a car make called Taalk_vehicle_make, you may format it as follows:

{Taalk_vehicle_make%capitalize}

This would ensure that the car make, such as "TOYOTA", is converted to "Toyota" for better readability and pronunciation.

Formatting Use Cases

Formatting functions are crucial for ensuring that values are properly pronounced and displayed by the AI agent. For instance:

  • If values are provided in all uppercase (e.g., "BMW"), it might affect the AI's pronunciation or natural reading pattern. Using the capitalize function can help correct this.
  • Numbers that are implicitly small or used in calculations might need conversion using implied_hundreds or implied_thousands to provide better accuracy and context.

Additional Notes

  • Proper formatting ensures that the output provided by the AI agent is natural and intuitive.
  • Incorrect or inconsistent formatting, such as values being in all uppercase or numbers being read ambiguously, can lead to awkward pronunciations or confusion.
  • Applying appropriate formatting helps the AI to deliver responses that sound smooth and human-like.

Summary of Available Formatting Functions

Data TypeFunction NameDescription
StringlowercaseConverts all letters to lowercase
StringuppercaseConverts all letters to uppercase
StringcapitalizeCapitalizes the first letter of the string
StringspellingBreaks the word into individual characters
StringcamelCapitalizes the first letter of the word and lowercase remain
Numberimplied_hundredsMultiplies the number by 100 if less than 100
Numberimplied_thousandsMultiplies the number by 1000 if less than 1000
NumberspellingBreaks the number into individual digits or characters
DateMoment.js FormattingUses Moment.js to format date values as needed
Stringexpand_addressExpands address abbreviations into full word

Proper use of these formatting functions will enhance the clarity and quality of AI responses, ensuring a better user experience.