discourse-ai/db/migrate
Sam 5b5edb22c6
FEATURE: UI to update ai personas on admin page (#290)
Introduces a UI to manage customizable personas (admin only feature)

Part of the change was some extensive internal refactoring:

- AIBot now has a persona set in the constructor, once set it never changes
- Command now takes in bot as a constructor param, so it has the correct persona and is not generating AIBot objects on the fly
- Added a .prettierignore file, due to the way ALE is configured in nvim it is a pre-req for prettier to work
- Adds a bunch of validations on the AIPersona model, system personas (artist/creative etc...) are all seeded. We now ensure
- name uniqueness, and only allow certain properties to be touched for system personas.
- (JS note) the client side design takes advantage of nested routes, the parent route for personas gets all the personas via this.store.findAll("ai-persona") then child routes simply reach into this model to find a particular persona.
- (JS note) data is sideloaded into the ai-persona model the meta property supplied from the controller, resultSetMeta
- This removes ai_bot_enabled_personas and ai_bot_enabled_chat_commands, both should be controlled from the UI on a per persona basis
- Fixes a long standing bug in token accounting ... we were doing to_json.length instead of to_json.to_s.length
- Amended it so {commands} are always inserted at the end unconditionally, no need to add it to the template of the system message as it just confuses things
- Adds a concept of required_commands to stock personas, these are commands that must be configured for this stock persona to show up.
- Refactored tests so we stop requiring inference_stubs, it was very confusing to need it, added to plugin.rb for now which at least is clearer
- Migrates the persona selector to gjs

---------

Co-authored-by: Joffrey JAFFEUX <j.jaffeux@gmail.com>
Co-authored-by: Martin Brennan <martin@discourse.org>
2023-11-21 16:56:43 +11:00
..
20230224165056_create_classification_results_table.rb DEV: Dedicated table for saving classification results (#1) 2023-02-27 16:21:40 -03:00
20230307125342_created_model_accuracy_table.rb FEATURE: Use dedicated reviewables for AI flags. (#4) 2023-03-07 15:39:28 -03:00
20230316160714_create_completion_prompt_table.rb REFACTOR: Store prompts in a dedicated table. (#14) 2023-03-17 15:14:19 -03:00
20230320122645_delete_duplicated_seeded_prompts.rb FIX: Remove old seeded prompts. (#17) 2023-03-20 12:55:38 -03:00
20230320185619_multi_message_completion_prompts.rb FIX: Allow null messages to migrate existing rows (#22) 2023-03-21 12:33:30 -03:00
20230322142028_make_dropped_value_column_nullable.rb FIX: Remove `null: false` from dropped column (#24) 2023-03-22 11:40:20 -03:00
20230406135943_add_provider_to_completion_prompts.rb FEATURE: Anthropic Claude for AIHelper and Summarization modules (#39) 2023-04-10 11:04:42 -03:00
20230424055354_create_ai_api_audit_logs.rb FEATURE: add a table to audit OpenAI usage (#45) 2023-04-26 11:44:29 +10:00
20230519003106_post_custom_prompts.rb FEATURE: add support for GPT <-> Forum integration 2023-05-20 17:45:54 +10:00
20230710171141_enable_pg_vector_extension.rb FEATURE: Support for locally infered embeddings in 100 languages (#115) 2023-07-27 15:50:03 -03:00
20230710171142_create_ai_topic_embeddings_table.rb DEV: Migrations shouldn't rely on the app (#253) 2023-10-16 18:50:37 -03:00
20230710171143_migrate_embeddings_from_dedicated_database.rb FIX: Update migrations with latest vector rep changes (#199) 2023-09-05 14:31:04 -03:00
20230727170222_create_multilingual_topic_embeddings_table.rb DEV: Migrations shouldn't rely on the app (#253) 2023-10-16 18:50:37 -03:00
20230831033812_rename_ai_helper_add_ai_pm_to_header_setting.rb DEV: rename ai_helper_add_ai_pm_to_header -> ai_bot_add_to_header (#177) 2023-08-31 14:42:28 +10:00
20231003155701_create_bge_topic_embeddings_table.rb DEV: Migrations shouldn't rely on the app (#253) 2023-10-16 18:50:37 -03:00
20231031050538_add_topic_id_post_id_to_ai_audit_log.rb FEATURE: support topic_id and post_id logging in ai audit log (#274) 2023-11-01 08:41:31 +11:00
20231109011155_create_ai_personas.rb FEATURE: basic infrastructure for custom personas (#288) 2023-11-10 11:39:49 +11:00
20231117050928_add_system_and_priority_to_ai_personas.rb FEATURE: UI to update ai personas on admin page (#290) 2023-11-21 16:56:43 +11:00
20231120033747_remove_site_settings.rb FEATURE: UI to update ai personas on admin page (#290) 2023-11-21 16:56:43 +11:00