🛠️ fix(Azure/Assistants): Handle Long Domain Names & Other Minor chores (#2475)

* chore: replace violation cache accessors with enum

* chore: fix test

* chore(fileSchema): index timestamps

* fix(ActionService): use encoding/caching strategy for handling assistant function character length limit

* refactor(actions): async `domainParser` also resolve retrieved model (which is deployment name) to user-defined model

* style(AssistantAction): add `whitespace-nowrap` for ellipsis

* refactor(ActionService): if domain is less than or equal to encoded domain fixed length, return domain with replacement of separator

* refactor(actions): use sessions/transactions for updating Assistant Action database records

* chore: remove TTL from ENCODED_DOMAINS cache

* refactor(domainParser): minor optimization and add tests

* fix(spendTokens): use txData.user for token usage logging

* refactor(actions): add helper function `withSession` for database operations with sessions/transactions

* fix(PluginsClient): logger debug `message` field edge case
This commit is contained in:
Danny Avila 2024-04-20 15:02:56 -04:00 committed by GitHub
parent 5d642d0187
commit 8c22bb1d3d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
19 changed files with 365 additions and 63 deletions

View file

@ -482,6 +482,15 @@ export enum CacheKeys {
* Key for the override config cache.
*/
OVERRIDE_CONFIG = 'overrideConfig',
/**
* Key for the bans cache.
*/
BANS = 'bans',
/**
* Key for the encoded domains cache.
* Used by Azure OpenAI Assistants.
*/
ENCODED_DOMAINS = 'encoded_domains',
}
/**
@ -500,6 +509,10 @@ export enum ViolationTypes {
* Token Limit Violation.
*/
TOKEN_BALANCE = 'token_balance',
/**
* An issued ban.
*/
BAN = 'ban',
}
/**
@ -580,6 +593,10 @@ export enum Constants {
* Standard value for the first message's `parentMessageId` value, to indicate no parent exists.
*/
NO_PARENT = '00000000-0000-0000-0000-000000000000',
/**
* Fixed, encoded domain length for Azure OpenAI Assistants Function name parsing.
*/
ENCODED_DOMAIN_LENGTH = 10,
}
/**