Skip to content

Releases: esbmc/esbmc-ai

v0.5.2

13 Nov 14:50
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.5.1...v0.5.2

Version 0.5.1

14 Jun 13:45
Compare
Choose a tag to compare

Small addition that adds support for OpenAI models.

What's Changed

Full Changelog: v0.5.0...v0.5.1

Version 0.5.0

05 Jun 00:41
26f4e31
Compare
Choose a tag to compare

ESBMC-AI Version 0.5.0 has released with a lot of new features 🗣️🚀🎉

The new features have been implemented for the following experimental report: https://arxiv.org/abs/2405.08848

What's Changed

Full Changelog: v0.4.0...v0.5.0

Version 0.4.0

16 Feb 17:51
Compare
Choose a tag to compare

🎉 Exciting News for Software Developers: ESBMC-AI Version 0.4.0 is Released!

We're happy to announce the latest release of ESBMC-AI, packed with various new features and enhancements that will improve your development workflow. Here's an overview of this release:

  • Dynamic Prompting: Introducing a feature that improves bug resolution! With Dynamic Prompting, you can tailor system messages to fix code errors detected by ESBMC. Initial tests reveal a success rate boost from 35% to 90%, ensuring smoother development cycles.
  • Token Tracking and Compression: Say goodbye to truncated conversations! ESBMC-AI now intelligently tracks AI model usage and automatically compresses lengthy chats, ensuring seamless interactions even in extended sessions.
  • User Configurations: Take control of your setup with user-configurable options. Specify configurations in a known system location, enabling access to ESBMC-AI from anywhere in your environment.
  • Wheel Packaging: We're excited to announce that ESBMC-AI is now available as a PyPi package, streamlining installation and making it accessible across different directories.

Setting up ESBMC-AI is now improved, clocking in at just under 3 minutes! Check the links below to get started:

🚀 Download & Install: PyPi - ESBMC-AI
📖 User Guide: Initial Setup
🔗 GitHub Repository: ESBMC-AI

Join us in deploying ESBMC-AI, backed by ESBMC, for code verification and security. Check out the project on GitHub: ESBMC Repository

Upgrade to ESBMC-AI 0.4.0 and improve your software development journey. Happy coding! 🚀👨‍💻🔥

What's Changed

Full Changelog: v0.3.1...v0.4.0

Version 0.3.1

26 Sep 23:03
b048ebd
Compare
Choose a tag to compare

This is a short release containing quality of life updates.

What's Changed

  • Add loading_hints in config, when false, loading animations will be disabled.
  • Add allow_successful in config, when true, will run even if VERIFICATION SUCCESSFUL by backend.
  • Add signal to optimize code mode so that the rest of the modes get the optimized solution.

Full Changelog: v0.3.0...v0.3.1

Version 0.3.0

05 Sep 16:46
Compare
Choose a tag to compare

Version 0.3.0 brings in optimize-code, a new mode of operation similar to `fix-code. This mode tries to optimize inefficiencies in the code using the specified LLM. This is a very early prototype and will improve as future versions are released. There are some limitations in the functioning of optimize code, that is, it will not work with features mentioned in here.

What's Changed

  • Starchat-beta improvements, Verbosity level 2, and optimize code work by @Yiannis128 in #73

Full Changelog: v0.2.0...v0.3.0

Version 0.2.0

05 Jul 14:40
Compare
Choose a tag to compare

The second release of ESBMC-AI adds some major changes into the project. The first is the addition of LLMs that use the Text Generation Inference by Hugging Face, specifically starchat-beta. What's more is that now custom LLM endpoints can be specified in the config, for more information see the Wiki page.

Another useful addition is the ability to automate the program, as it can now directly launch into command mode. By specifying -c COMMAND in the arguments, ESBMC-AI will automatically run that command instead of going into user chat mode.

Lastly, the backend now uses langchain instead of the APIs of OpenAI and Hugging Face directly, as it is easier to maintain. This took a while to implement as the entire backend had to be overhauled, but the change now will hopefully make adding new LLMs much easier and faster!

What's Changed

Full Changelog: v0.1.0...v0.2.0

Version 0.1.0

26 May 11:26
0b4d854
Compare
Choose a tag to compare

The first release of ESBMC-AI, the release includes two features. There are many more planned features! This is a big first step with this release. Currently, the only supported way of running this software is to run it from the project folder, as there is no way of packaging this software and installing it on your system. The next release will aim to include a way to package ESBMC-AI using the build package and hence allowing installation from repositories such as PyPi.

User Chat Mode

As the output from ESBMC can be technical in nature, and often requires technical experts in the field to decipher, at the most basic level; ESBMC-AI uses the power of LLM to simplify the output of ESBMC so that it is more accessible. It also allows the user to prompt the AI model a wide variety of questions in order to understand the problem at hand much better.

Solution Generation Mode

When "/fix-code" is entered in the user chat mode interface, the Solution Generation Mode is activated. In Solution Generation Mode, the AI model is tasked with automatically fixing the software vulnerabilities. Solutions generated are checked with ESBMC to ensure the code generated is correct, and if not, the output from ESBMC is given back to Solution Generation Mode so that the AI can improve the solution.

Version 0.1 has a number of improvements from the previous posts, such as the ability to compress message conversations so that you are able to infinitely converse with the AI model. Below is a more comprehensive change log.

Features

  • User chat mode
  • fix-code command and SolutionGenerator - Solution evaluation loop by @Yiannis128 in #21
  • Token management by @Yiannis128 in #39

Full Changelog: https://github.com/Yiannis128/esbmc-ai/commits/v0.1.0