Skip to content

Latest commit

 

History

History
113 lines (82 loc) · 6.42 KB

CHANGELOG-Colang.md

File metadata and controls

113 lines (82 loc) · 6.42 KB

Changelog

All notable changes to the Colang language and runtime will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.0-beta.3] - Unreleased

Added

  • #673 Add support for new Colang 2 keyword deactivate.
  • #703 Add bot configuration as variable $system.config.
  • #709 Add basic support for most OpenAI and LLame 3 models.
  • #712 Add interaction loop priority levels for flows.
  • #717 Add CLI chat debugging commands.

Changed

  • #669 Merged (and removed) utils library file with core library.

Fixed

  • #672 Fixes a event group match bug (e.g. match $flow_ref.Finished() or $flow_ref.Failed())
  • #699 Fix issues with ActionUpdated events and user utterance action extraction.

[2.0-beta.2] - 2024-07-25

This second beta version of Colang brings a set of improvements and fixes.

Added

Language and runtime:

  • #504 Add colang 2.0 syntax error details by @rgstephens.
  • #533 Expose global variables in prompting templates.
  • #534 Add continuation on unhandled user utterance flow to the standard library (llm.co).
  • #554 Support for NLD intents.
  • #559 Support for the @active decorator which activates flows automatically.

Other:

  • #591 Unit tests for runtime exception handling in flows.

Changed

  • #576 Make if / while / when statements compatible with python syntax, i.e., allow : at the end of line.
  • #596 Allow not, in, is in generated flow names.
  • #578 Improve bot action generation.
  • #594 Add more information to Colang syntax errors.
  • #599 Runtime processing loop also consumes generated events before completion.
  • #540 LLM prompting improvements targeting gpt-4o.

Fixed

  • #525 Fix string expression double braces.
  • #531 Fix Colang 2 flow activation.
  • #577 Remove unnecessary print statements in runtime.
  • #593 Fix match statement issue.
  • #579 Fix multiline string expressions issue.
  • #604 Fix tracking user talking state issue.
  • #598 Fix issue related to a race condition.

[2.0-beta] - 2024-05-08

Added

Changed

  • Syntax changes:

    • Meta comments have been replaced by the @meta and @loop decorators:
      • # meta: user intent -> @meta(user_intent=True) (also user_action, bot_intent, bot_action)
      • # meta: exclude from llm -> @meta(exclude_from_llm=True)
      • # meta: loop_id=<loop_id> -> @loop("<loop_id>")
    • orwhen -> or when
    • NLD instructions """<NLD>""" -> ..."<NLD>"
    • Support for import statement
    • Regular expressions syntax change r"<regex>" -> regex("<regex>")
    • String expressions change: "{{<expression>}}" -> "{<expression>}"
  • Chat CLI runtime flags --verbose logging format improvements

  • Internal event parameter renaming: flow_start_uid -> flow_instance_uid

  • Colang function name changes: findall -> find_all ,

  • Changes to flow names that were previously part of ccl_*.co files (which are now part of the standard library):

    • catch colang errors -> notification of colang errors (core.co)
    • catch undefined flows -> notification of undefined flow start (core.co)
    • catch unexpected user utterance -> notification of unexpected user utterance (core.co)
    • poll llm request response -> polling llm request response (llm.co)
    • trigger user intent for unhandled user utterance -> generating user intent for unhandled user utterance (llm.co)
    • generate then continue interaction -> llm continue interaction (llm.co)
    • track bot talking state -> tracking bot talking state (core.co)
    • track user talking state -> tracking user talking state (core.co)
    • track unhandled user intent state -> tracking unhandled user intent state (llm.co)
    • track visual choice selection state -> track visual choice selection state (avatars.co)
    • track user utterance state -> tracking user talking state (core.co)
    • track bot utterance state -> No replacement yet (copy to your bot script)
    • interruption handling bot talking -> handling bot talking interruption (avatars.co)
    • generate then continue interaction -> llm continue interaction (llm.co)

[2.0-alpha] - 2024-02-28

Colang 2.0 represents a complete overhaul of both the language and runtime. Key enhancements include:

Added

  • A more powerful flows engine supporting multiple parallel flows and advanced pattern matching over the stream of events.
  • A standard library to simplify bot development.
  • Smaller set of core abstractions: flows, events, and actions.
  • Explicit entry point through the main flow and explicit activation of flows.
  • Asynchronous actions execution.
  • Adoption of terminology and syntax akin to Python to reduce the learning curve for new developers.