Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Partial context updates #93

Merged
merged 438 commits into from
Feb 17, 2025
Merged

Partial context updates #93

merged 438 commits into from
Feb 17, 2025

Conversation

pseusys
Copy link
Collaborator

@pseusys pseusys commented Mar 13, 2023

Description

Context storages are updated partially now instead of reading and writing whole data at once.

Checklist

  • I have covered the code with tests
  • I have added comments to my code to help others understand it
  • I have updated the documentation to reflect the changes
  • I have performed a self-review of the changes
  • Consider extending UpdateScheme from BaseModel
  • Decide how we want to use clear method.

@pseusys pseusys self-assigned this Mar 13, 2023
@pseusys pseusys requested review from kudep and RLKRo April 7, 2023 01:43
@pseusys pseusys added the enhancement New feature or request label Apr 7, 2023
@pseusys pseusys marked this pull request as ready for review April 7, 2023 01:43
@kudep kudep marked this pull request as draft April 24, 2023 16:41
@pseusys

This comment was marked as outdated.

RLKRo

This comment was marked as outdated.

@pseusys pseusys requested review from ruthenian8, kudep and RLKRo June 14, 2023 23:36
@kudep

This comment was marked as outdated.

@pseusys

This comment was marked as outdated.

@RLKRo RLKRo mentioned this pull request Jul 26, 2023
4 tasks
@pseusys
Copy link
Collaborator Author

pseusys commented Aug 2, 2023

It's likely that quickle module shouldn't be used anymore.

@pseusys pseusys marked this pull request as ready for review August 3, 2023 13:38
@pseusys pseusys requested a review from ruthenian8 August 9, 2023 01:33
@pseusys pseusys requested a review from ruthenian8 August 9, 2023 22:54
Copy link
Member

@RLKRo RLKRo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is only partial review. I haven't reviewed the other files yet.

@RLKRo RLKRo merged commit 5540b45 into dev Feb 17, 2025
17 checks passed
RLKRo added a commit that referenced this pull request Feb 18, 2025
RLKRo added a commit that referenced this pull request Feb 18, 2025
@RLKRo RLKRo mentioned this pull request Feb 18, 2025
RLKRo added a commit that referenced this pull request Feb 18, 2025
# Changelog

## Breaking Changes

- Dropped support for python 3.8; added support for python 3.12 (#400);
- Reworked DB architecture to support partials turn reads/writes (#93).
  Old Context storages are incompatible with the new ones.
  See tutorial Context Storages: 8 for more info;
- `Context.labels`, `Context.requests`, `Context.responses` are now only
lazily loaded (#93).
  Items from older turns can be loaded on demand.
  Their `__getitem__` and `get` methods are now async.


## Features 

- Added `LLMResponse` and `LLMCondition` classes that allow using LLMs
(#376).
See the new LLM Integration tutorials and LLM user guide for more info;
- Added option to extract group slots partially (#394).
  See tutorial Slots: 2 for more information;
- `Message.original_message` is replaced with `Message.origin` which
stores both
the original message and the interface from which the message originated
(#398);
- Added `Context.current_turn_id` field which stores the number of the
current turn (#93);
- Added `Context.created_at`, `Context.updated_at` timestamp fields
(#93);
- Added `Context.turns` property which allows iterating over
requests/labels/responses by their turn ids (#93);
- `Context.labels`, `Context.requests`, `Context.responses` now support
slicing (#93).
`__getitem__`, `__setitem__` and `__delitem__` methods can now accept
slices of turn ids in addition to single turn id.
`get` method can now accepts iterable of turn ids in addition to single
turn id.


## Documentation

- Documentation is now versioned (#346, #409).
You can select preferred version via the drop-down menu in the top-right
corner.


## Developer changes

- Context now has field `origin_interface` to store name of the
interface that created it (#398);
- Added script `docs_no_docker` for building documentation without
docker (ef11ff9);
- Added in-RAM context storage to be the default one instead of a plain
dict (#93);
- Removed methods `Context.add_request`, `Context.add_label` and
`Context.add_response` (#93).
  Use setters with `Context.current_turn_id` instead.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants