Skip to content

Latest commit

 

History

History
328 lines (242 loc) · 20.2 KB

CHANGELOG.md

File metadata and controls

328 lines (242 loc) · 20.2 KB

Changelog

All notable changes to this project will be documented in this file.

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

[0.8.3] - 2024-04-18

Changed

  • #453 Update documentation for NVIDIA API Catalog example.

Fixed

  • #382 Fix issue with lowest_temperature in self-check and hallucination rails.
  • #454 Redo fix for #385.
  • #442 Fix README type by @dileepbapat.

[0.8.2] - 2024-04-01

Added

  • #402 Integrate Vertex AI Models into Guardrails by @aishwaryap.
  • #403 Add support for NVIDIA AI Endpoints by @patriciapampanelli
  • #396 Docs/examples nv ai foundation models.
  • #438 Add research roadmap documentation.

Changed

  • #389 Expose the verbose parameter through RunnableRails by @d-mariano.
  • #415 Enable print(...) and log(...).
  • #389 Expose verbose arg in RunnableRails by @d-mariano.
  • #414 Feature/colang march release.
  • #416 Refactor and improve the verbose/debug mode.
  • #418 Feature/colang flow context sharing.
  • #425 Feature/colang meta decorator.
  • #427 Feature/colang single flow activation.
  • #426 Feature/colang 2.0 tutorial.
  • #428 Feature/Standard library and examples.
  • #431 Feature/colang various improvements.
  • #433 Feature/Colang 2.0 improvements: generate_async support, stateful API.

Fixed

  • #412 Fix #411 - explain rails not working for chat models.
  • #413 Typo fix: Comment in llm_flows.co by @habanoz.
  • #420 Fix typo for hallucination message.

[0.8.1] - 2024-03-15

Added

  • #377 Add example for streaming from custom action.

Changed

  • #380 Update installation guide for OpenAI usage.
  • #401 Replace YAML import with new import statement in multi-modal example.

Fixed

  • #398 Colang parser fixes and improvements.
  • #394 Fixes and improvements for Colang 2.0 runtime.
  • #381 Fix typo by @serhatgktp.
  • #379 Fix missing prompt in verbose mode for chat models.
  • #400 Fix Authorization header showing up in logs for NeMo LLM.

[0.8.0] - 2024-02-28

Added

  • #292 Jailbreak heuristics by @erickgalinkin.
  • #256 Support generation options.
  • #307 Added support for multi-config api calls by @makeshn.
  • #293 Adds configurable stop tokens by @zmackie.
  • #334 Colang 2.0 - Preview by @schuellc.
  • #208 Implement cache embeddings (resolves #200) by @Pouyanpi.
  • #331 Huggingface pipeline streaming by @trebedea.

Documentation:

Changed

  • #309 Change the paper citation from ArXiV to EMNLP 2023 by @manuelciosici
  • #319 Enable embeddings model caching.
  • #267 Make embeddings computing async and add support for batching.
  • #281 Follow symlinks when building knowledge base by @piotrm0.
  • #280 Add more information to results of retrieve_relevant_chunks by @piotrm0.
  • #332 Update docs for batch embedding computations.
  • #244 Docs/edit getting started by @DougAtNvidia.
  • #333 Follow-up to PR 244.
  • #341 Updated 'fastembed' version to 0.2.2 by @NirantK.

Fixed

  • #286 Fixed #285 - using the same evaluation set given a random seed for topical rails by @trebedea.
  • #336 Fix #320. Reuse the asyncio loop between sync calls.
  • #337 Fix stats gathering in a parallel async setup.
  • #342 Fixes OpenAI embeddings support.
  • #346 Fix issues with KB embeddings cache, bot intent detection and config ids validator logic.
  • #349 Fix multi-config bug, asyncio loop issue and cache folder for embeddings.
  • #350 Fix the incorrect logging of an extra dialog rail.
  • #358 Fix Openai embeddings async support.
  • #362 Fix the issue with the server being pointed to a folder with a single config.
  • #352 Fix a few issues related to jailbreak detection heuristics.
  • #356 Redo followlinks PR in new code by @piotrm0.

[0.7.1] - 2024-02-01

Changed

  • #288 Replace SentenceTransformers with FastEmbed.

[0.7.0] - 2024-01-31

Added

Changed

  • #240 Switch to pyproject.
  • #276 Upgraded Typer to 0.9.

Fixed

  • #286 Fixed not having the same evaluation set given a random seed for topical rails.
  • #239 Fixed logging issue where verbose=true flag did not trigger expected log output.
  • #228 Fix docstrings for various functions.
  • #242 Fix Azure LLM support.
  • #225 Fix annoy import, to allow using without.
  • #209 Fix user messages missing from prompt.
  • #261 Fix small bug in print_llm_calls_summary.
  • #252 Fixed duplicate loading for the default config.
  • Fixed the dependencies pinning, allowing a wider range of dependencies versions.
  • Fixed sever security issues related to uncontrolled data used in path expression and information exposure through an exception.

[0.6.1] - 2023-12-20

Added

  • Support for --version flag in the CLI.

Changed

  • Upgraded langchain to 0.0.352.
  • Upgraded httpx to 0.24.1.
  • Replaced deprecated text-davinci-003 model with gpt-3.5-turbo-instruct.

Fixed

  • #191: Fix chat generation chunk issue.

[0.6.0] - 2023-12-13

Added

Changed

  • Allow context data directly in the /v1/chat/completion using messages with the type "role".
  • Allow calling a subflow whose name is in a variable, e.g. do $some_name.
  • Allow using actions which are not async functions.
  • Disabled pretty exceptions in CLI.
  • Upgraded dependencies.
  • Updated the Getting Started Guide.
  • Main README now provides more details.
  • Merged original examples into a single ABC Bot and removed the original ones.
  • Documentation improvements.

Fixed

  • Fix going over the maximum prompt length using the max_length attribute in Prompt Templates.
  • Fixed problem with nest_asyncio initialization.
  • #144 Fixed TypeError in logging call.
  • #121 Detect chat model using openai engine.
  • #109 Fixed minor logging issue.
  • Parallel flow support.
  • Fix HuggingFacePipeline bug related to LangChain version upgrade.

[0.5.0] - 2023-09-04

Added

Changed

  • Moved to using nest_asyncio for implementing the blocking API. Fixes #3 and #32.
  • Improved event property validation in new_event_dict.
  • Refactored imports to allow installing from source without Annoy/SentenceTransformers (would need a custom embedding search provider to work).

Fixed

  • Fixed when the init function from config.py is called to allow custom LLM providers to be registered inside.
  • #93: Removed redundant hasattr check in nemoguardrails/llm/params.py.
  • #91: Fixed how default context variables are initialized.

[0.4.0] - 2023-08-03

Added

Changed

  • Changed the naming of the internal events to align to the upcoming UMIM spec (Unified Multimodal Interaction Management).
  • If there are no user message examples, the bot messages examples lookup is disabled as well.

Fixed

  • #58: Fix install on Mac OS 13.
  • #55: Fix bug in example causing config.py to crash on computers with no CUDA-enabled GPUs.
  • Fixed the model name initialization for LLMs that use the model kwarg.
  • Fixed the Cohere prompt templates.
  • #55: Fix bug related to LangChain callbacks initialization.
  • Fixed generation of "..." on value generation.
  • Fixed the parameters type conversion when invoking actions from colang (previously everything was string).
  • Fixed model_kwargs property for the WrapperLLM.
  • Fixed bug when stop was used inside flows.
  • Fixed Chat UI bug when an invalid guardrails configuration was used.

[0.3.0] - 2023-06-30

Added

  • Support for defining subflows.
  • Improved support for customizing LLM prompts
    • Support for using filters to change how variables are included in a prompt template.
    • Output parsers for prompt templates.
    • The verbose_v1 formatter and output parser to be used for smaller models that don't understand Colang very well in a few-shot manner.
    • Support for including context variables in prompt templates.
    • Support for chat models i.e. prompting with a sequence of messages.
  • Experimental support for allowing the LLM to generate multi-step flows.
  • Example of using Llama Index from a guardrails configuration (#40).
  • Example for using HuggingFace Endpoint LLMs with a guardrails configuration.
  • Example for using HuggingFace Pipeline LLMs with a guardrails configuration.
  • Support to alter LLM parameters passed as model_kwargs in LangChain.
  • CLI tool for running evaluations on the different steps (e.g., canonical form generation, next steps, bot message) and on existing rails implementation (e.g., moderation, jailbreak, fact-checking, and hallucination).
  • Initial evaluation results for text-davinci-003 and gpt-3.5-turbo.
  • The lowest_temperature can be set through the guardrails config (to be used for deterministic tasks).

Changed

  • The core templates now use Jinja2 as the rendering engines.
  • Improved the internal prompting architecture, now using an LLM Task Manager.

Fixed

  • Fixed bug related to invoking a chain with multiple output keys.
  • Fixed bug related to tracking the output stats.
  • #51: Bug fix - avoid str concat with None when logging user_intent.
  • #54: Fix UTF-8 encoding issue and add embedding model configuration.

[0.2.0] - 2023-05-31

Added

Changed

  • Improved the logging output for Chat CLI (clear events stream, prompts, completion, timing information).
  • Updated system actions to use temperature 0 where it makes sense, e.g., canonical form generation, next step generation, fact checking, etc.
  • Excluded the default system flows from the "next step generation" prompt.
  • Updated langchain to 0.0.167.

Fixed

  • Fixed initialization of LangChain tools.
  • Fixed the overriding of general instructions #7.
  • Fixed action parameters inspection bug #2.
  • Fixed bug related to multi-turn flows #13.
  • Fixed Wolfram Alpha error reporting in the sample execution rail.

[0.1.0] - 2023-04-25

Added

  • First alpha release.