Skip to content

v3.11

Choose a tag to compare

@ekassos ekassos released this 01 May 21:50
· 925 commits to main since this release
8bbe9c1

Release Notes

Prompts

New Features

  • The prompt randomizer uses a new HTML parser to allow more flexibility in random blocks. (#862)
  • Prompt randomization now supports nested blocks, up to 10 layers deep (#862):
    <random count="2" allow-repeat=“false”>
     <option weight="2">Apple $10</option>
     <option weight="1">Banana $5</option>
     <option>Cherry <random><option weight="2">$2</option><option weight="1">$1</option></random></option>
    </random>
    
  • Randomization happens in a top-down approach, randomizing the root <random> block before moving to any nested children blocks. (#862)
  • The id attribute in <random> defaults to {level}_{order}, where level is the depth of the block, and order is the index of the block’s order between all <random> of level depth. (#862)
  • Use the new scope="user|thread" attribute in <random> to select whether the block randomization should be deterministic at the user or thread level. Defaults to thread. (#864)
  • Use the new id attribute in <option>, together with the id attribute in <random> to fully control the randomization. Defaults to index of the option’s order within the <random> block. When scope=user, the selection is order-invariant as long as each random block and option has a stable id. (#864)
  • Use the new sep attribute in <random> to control the separator between chosen options when selecting more than one option. Defaults to \n (new line).
  • The weight parameter in <option> now supports non-negative decimal numbers. (#868)
  • Randomization with and without replacement now uses the same approach, similar to priority sampling. (#864)
  • Use the new prompt_randomizer_log_level to separately control the log levels for the prompt randomizer. (#862)

Deprecations

  • Custom log levels for realtime_browser, realtime_openai, and prompt_randomizer loggers will now default to config.log_level when their respective log level parameters are not set in the config file. Previously defaulted to INFO. (#866)
  • Internal: The unused total_weight property has been removed from PromptRandomBlock. (#868)

Internal

New Features

  • Added new Prompts problem area option in Github issue templates. (#865)

Deployment Information

Schema Upgrade Migration Script Permissions Update Task Definition Update Configuration Update
No No No No New options available

Deployment Details

  • Configuration Update: Use the new prompt_randomizer_log_level to separately control the log levels for the prompt randomizer. (#862)
  • Configuration Update: Custom log levels for realtime_browser, realtime_openai, and prompt_randomizer loggers will now default to config.log_level when their respective log level parameters are not set in the config file. Previously defaulted to INFO. (#866)

Related PRs

  • feat/ Relax random block parsing rules and enable nested blocks by @ekassos in #862
  • Bump vite from 5.4.18 to 5.4.19 in /web/pingpong in the npm_and_yarn group across 1 directory by @dependabot in #863
  • feat/ Option to randomize on the thread or user level, and id attribute on <option> tag by @ekassos in #864
  • docs/ New Prompts issue area by @ekassos in #865
  • feat/ Set custom log levels to default when not set by @ekassos in #866
  • feat/ Option to control separator between selected options by @ekassos in #867
  • feat/ Allow non-integer option weights in random blocks by @ekassos in #868

Full Changelog: 673-srv284-web170...679-srv289-web172