Releases: ooojustin/summawise
Releases · ooojustin/summawise
v0.5.1-beta
Changed
- Ensure file cache obj is instantiated during v0.4.* -> 0.5.* update.
Full Changelog: v0.5.0-beta...v0.5.1-beta
v0.5.0-beta
Added
- Added new "thread" subcommand to allow users to save/restore conversations:
- Save a thread using the
-tn/--thread_name
option when invoking thescan
command. - List threads using
summawise thread list
- Delete threads using
summawise thread delete <id>
- Restore a thread using
summawise thread restore <id>
- Save a thread using the
- New
-sm/--send_messages
option (boolean, defaults to false) will send content in messages when a thread is being created, alongside the attached vector store.
Changed
- Refactored storage of API oriented objects.
- Internal representation of Assistants/Threads share a base class (
ApiObjItem
). - Generic
ApiObjList
base class abstracts storage/retrieval of a list ofApiObjItem
objects.
- Internal representation of Assistants/Threads share a base class (
Pull Requests
- Add "thread" commands/ability to save & restore threads by @ooojustin in #21
- Add ability to send content in messages alongside VectorStore, 0.5.0 changelog by @ooojustin in #22
Full Changelog: 0.4.1-beta...v0.5.0-beta
0.4.1-beta
Changed
- Silly prompt fix for code syntax highlighting style.
Full Changelog: v0.4.0-beta...0.4.1-beta
v0.4.0-beta
Added
- Included generic coding assistant by default.
- Officially added support for the code interpreter tool.
- Added syntax highlighting for snippets processed by the code interpreter tool.
- The code highlighting style is customizable via your config. It defaults to
monokai
, but all pygments styles are supported. This will apply to all syntax highlighting in the future.
- The code highlighting style is customizable via your config. It defaults to
- Propagate resources necessary for code interpretation to OpenAI API when using assistants which have the functionality enabled.
- Note: There is a limit of 20 files (per execution, or "Thread") at the time of writing this. [Code reference]
I have a few ideas of how to address this, but it is a caveat when working with larger projects for now.
- Note: There is a limit of 20 files (per execution, or "Thread") at the time of writing this. [Code reference]
- Add
-v/--version
option to show the version of the package that is currently installed. - Add
--debug
option for more informative exception messages. (It will include a traceback.)
Changed
- Default assistants will automatically update based on changes made in newer versions.
- Improve how conversations are initialized based on the assistant being used/type of content.
Pull Requests
- Code interpretation functionality by @ooojustin in #19
- Default coding assistant, OpenAI code interpreter support, code interpreter syntax highlighting, refactors by @ooojustin in #20
Full Changelog: v0.3.1-beta...v0.4.0-beta
v0.3.1-beta
Changed
- Enable the
file_search
option by default when creating a new assistant. - Change the
file_search
/interpret_code
CLI options passed to the assistant creation command to from flags to booleans.
Full Changelog: v0.3.0-beta...v0.3.1-beta
v0.3.0-beta
Added
- Started building out CLI using. The 'scan' command mirrors the original functionality from past versions.
- You can use the
summawise --help
command to get CLI help, and that functionality is nested. For example, the following commands would also work:summawise assistant --help
summawise assistant create --help
- You can use the
- Added support for multiple assistants. This includes the following commands (as referenced above):
summawise assistant list
summawise assistant create
summawise assistant delete
- Assistants created/managed via this tool mirror the functionality offered by OpenAI's official beta API.
Changed
- Implemented
prompt_toolkit
library for user prompts to include better completion/validation. - Refactored certain aspects of codebase to better support CLI based functionality moving forward.
Pull Requests
- Model prompt autocomplete, start with prompt toolkit by @ooojustin in #15
- Initial implementation of click for CLI by @ooojustin in #16
- Implement custom assistants, CLI supports by @ooojustin in #18
Full Changelog: v0.2.3-beta...v0.3.0-beta
Disclaimer
As you may notice with some of the changes in this update, the functionality and intended use cases are growing beyond what the application was originally designed for.
This was ultimately the goal, and is intentional. As a result, this also means the project name may change prior to or with the release of a version 1.0.
v0.2.3-beta
Added
- Support for directories being used as input, storing many files in a vector store.
- Since I plan on expanding the use cases of this project, it is already designed to support codebases.
- Cache all file IDs based on file hash to be re-used in new vector stores.
Changed
- Expanded and optimized hash calculation capabilities.
Pull Requests
- Add directory support by @ooojustin in #9
- Cache IDs of all files by hash by @ooojustin in #10
- More dynamic + faster hash calculation by @ooojustin in #11
- Easier system for type assertions by @ooojustin in #12
- Release for v0.2.3-beta by @ooojustin in #13
Full Changelog: v0.2.2-beta...v0.2.3-beta
v0.2.2-beta
Added
- Attempt to restore OpenAI API key from environment variable (
OPENAI_API_KEY
) when initializing settings. - New CHANGELOG.md file to track history of changes.
Changed
- Switch build system from setuptools to hatchling.
v0.2.1-beta
Added
- Cache vector store for files based on SHA-256 hash.
This applies to both files stored locally, and the contents of static data downloaded via a remote URL. - Introduced generic
Serializable
base class, which will be used for any object which would be saved to disk for caching purposes. It's built to support either json encoded data or pickled binary data, depending on the userDataMode
setting.
Changed
- A number of refactors to improve separation of concerns. [PR]
v0.1.2-beta
Initial Release
- Summawise is now available on PyPI: https://pypi.org/project/summawise/
- As of this initial release, summawise supports the following inputs:
- YouTube video URLs. (Transcript is extracted and used as text)
- Local files. (Any type of content, file will currently be uploaded byte for byte)
- Other URLs, depending on the response content. (Text content, PDF files, and HTML are all supported)
Vector Caching Note
- YouTube video URL input is cached via the video ID, so the same vector store will be restored if you re-analyze the same video.
- Local file/remote URL input does not yet cache the vector store ID, meaning a new vector store will be created from the contents at runtime if you input the same path more than once.