2023-02-17 09:33:47 -05:00
en :
2023-10-02 17:55:30 -04:00
discourse_automation :
scriptables :
llm_triage :
title : Triage posts using AI
description : "Triage posts using a large language model"
system_prompt_missing_post_placeholder : "System prompt must contain a placeholder for the post: %%POST%%"
2023-12-18 20:04:15 -05:00
llm_report :
title : Periodic report using AI
description : "Periodic report based on a large language model"
2023-02-22 18:46:53 -05:00
site_settings :
2023-03-15 16:02:20 -04:00
discourse_ai_enabled : "Enable the discourse AI plugin."
2023-02-22 18:46:53 -05:00
ai_toxicity_enabled : "Enable the toxicity module."
ai_toxicity_inference_service_api_endpoint : "URL where the API is running for the toxicity module"
ai_toxicity_inference_service_api_key : "API key for the toxicity API"
ai_toxicity_inference_service_api_model : "Model to use for inference. Multilingual model works with Italian, French, Russian, Portuguese, Spanish and Turkish."
ai_toxicity_flag_automatically : "Automatically flag posts / chat messages that are above the configured thresholds."
ai_toxicity_flag_threshold_toxicity : "Toxicity: a rude, disrespectful, or unreasonable comment that is somewhat likely to make you leave a discussion or give up on sharing your perspective"
ai_toxicity_flag_threshold_severe_toxicity : "Severe Toxicity: a very hateful, aggressive, or disrespectful comment that is very likely to make you leave a discussion or give up on sharing your perspective"
ai_toxicity_flag_threshold_obscene : "Obscene"
ai_toxicity_flag_threshold_identity_attack : "Identity Attack"
ai_toxicity_flag_threshold_insult : "Insult"
ai_toxicity_flag_threshold_threat : "Threat"
ai_toxicity_flag_threshold_sexual_explicit : "Sexual Explicit"
ai_toxicity_groups_bypass : "Users on those groups will not have their posts classified by the toxicity module."
ai_sentiment_enabled : "Enable the sentiment module."
ai_sentiment_inference_service_api_endpoint : "URL where the API is running for the sentiment module"
ai_sentiment_inference_service_api_key : "API key for the sentiment API"
ai_sentiment_models : "Models to use for inference. Sentiment classifies post on the positive/neutral/negative space. Emotion classifies on the anger/disgust/fear/joy/neutral/sadness/surprise space."
2023-03-15 16:02:20 -04:00
ai_nsfw_detection_enabled : "Enable the NSFW module."
2023-09-25 14:12:54 -04:00
ai_nsfw_inference_service_api_endpoint : "URL where the API is running for the NSFW module"
2023-03-15 16:02:20 -04:00
ai_nsfw_inference_service_api_key : "API key for the NSFW API"
ai_nsfw_flag_automatically : "Automatically flag NSFW posts that are above the configured thresholds."
ai_nsfw_flag_threshold_general : "General Threshold for an image to be considered NSFW."
ai_nsfw_flag_threshold_drawings : "Threshold for a drawing to be considered NSFW."
ai_nsfw_flag_threshold_hentai : "Threshold for an image classified as hentai to be considered NSFW."
ai_nsfw_flag_threshold_porn : "Threshold for an image classified as porn to be considered NSFW."
ai_nsfw_flag_threshold_sexy : "Threshold for an image classified as sexy to be considered NSFW."
ai_nsfw_models : "Models to use for NSFW inference."
2023-12-06 01:00:10 -05:00
ai_openai_gpt35_url : "Custom URL used for GPT 3.5 chat completions. (for Azure support)"
2023-08-16 21:00:11 -04:00
ai_openai_gpt35_16k_url : "Custom URL used for GPT 3.5 16k chat completions. (for Azure support)"
2023-06-20 20:39:51 -04:00
ai_openai_gpt4_url : "Custom URL used for GPT 4 chat completions. (for Azure support)"
2023-08-16 21:00:11 -04:00
ai_openai_gpt4_32k_url : "Custom URL used for GPT 4 32k chat completions. (for Azure support)"
2023-12-10 22:59:57 -05:00
ai_openai_gpt4_turbo_url : "Custom URL used for GPT 4 Turbo chat completions. (for Azure support)"
2023-11-26 21:01:05 -05:00
ai_openai_dall_e_3_url : "Custom URL used for DALL-E 3 image generation. (for Azure support)"
2023-10-05 19:23:18 -04:00
ai_openai_organization : "(Optional, leave empty to omit) Organization id used for the OpenAI API. Passed in using the OpenAI-Organization header."
2023-06-20 20:39:51 -04:00
ai_openai_embeddings_url : "Custom URL used for the OpenAI embeddings API. (in the case of Azure it can be: https://COMPANY.openai.azure.com/openai/deployments/DEPLOYMENT/embeddings?api-version=2023-05-15)"
2023-03-15 16:21:45 -04:00
ai_openai_api_key : "API key for OpenAI API"
2023-05-11 09:03:03 -04:00
ai_anthropic_api_key : "API key for Anthropic API"
2023-07-27 12:55:32 -04:00
ai_hugging_face_api_url : "Custom URL used for OpenSource LLM inference. Compatible with https://github.com/huggingface/text-generation-inference"
2023-03-15 16:21:45 -04:00
2023-03-15 16:02:20 -04:00
composer_ai_helper_enabled : "Enable the Composer's AI helper."
ai_helper_allowed_groups : "Users on these groups will see the AI helper button in the composer."
ai_helper_allowed_in_pm : "Enable the composer's AI helper in PMs."
2023-03-28 22:22:34 -04:00
ai_helper_model : "Model to use for the AI helper."
2023-09-25 14:12:54 -04:00
ai_helper_custom_prompts_allowed_groups : "Users on these groups will see the custom prompt option in the AI helper."
2023-11-28 23:17:46 -05:00
ai_helper_automatic_chat_thread_title_delay : "Delay in minutes before the AI helper automatically sets the chat thread title."
ai_helper_automatic_chat_thread_title : "Automatically set the chat thread titles based on thread contents."
2024-01-05 12:03:23 -05:00
ai_helper_illustrate_post_model : "Model to use for the composer AI helper's illustrate post feature"
2023-03-15 16:02:20 -04:00
2023-03-15 16:21:45 -04:00
ai_embeddings_enabled : "Enable the embeddings module."
ai_embeddings_discourse_service_api_endpoint : "URL where the API is running for the embeddings module"
ai_embeddings_discourse_service_api_key : "API key for the embeddings API"
2023-07-27 14:50:03 -04:00
ai_embeddings_model : "Use all-mpnet-base-v2 for local and fast inference in english, text-embedding-ada-002 to use OpenAI API (need API key) and multilingual-e5-large for local multilingual embeddings"
2023-03-15 16:21:45 -04:00
ai_embeddings_generate_for_pms : "Generate embeddings for personal messages."
2023-03-30 20:04:34 -04:00
ai_embeddings_semantic_related_topics_enabled : "Use Semantic Search for related topics."
ai_embeddings_semantic_related_topics : "Maximum number of topics to show in related topic section."
2023-10-26 11:07:37 -04:00
ai_embeddings_backfill_batch_size : "Number of embeddings to backfill every 15 minutes."
2023-03-15 16:21:45 -04:00
ai_embeddings_pg_connection_string : "PostgreSQL connection string for the embeddings module. Needs pgvector extension enabled and a series of tables created. See docs for more info."
2023-04-03 10:48:38 -04:00
ai_embeddings_semantic_search_enabled : "Enable full-page semantic search."
2023-05-16 13:38:21 -04:00
ai_embeddings_semantic_related_include_closed_topics : "Include closed topics in semantic search results"
2023-09-05 10:08:23 -04:00
ai_embeddings_semantic_search_hyde_model : "Model used to expand keywords to get better results during a semantic search"
2023-03-15 16:21:45 -04:00
2023-04-04 10:24:09 -04:00
ai_summarization_discourse_service_api_endpoint : "URL where the Discourse summarization API is running."
ai_summarization_discourse_service_api_key : "API key for the Discourse summarization API."
2023-05-05 14:28:31 -04:00
ai_bot_enabled : "Enable the AI Bot module."
2023-08-16 16:29:58 -04:00
ai_bot_enable_chat_warning : "Display a warning when PM chat is initiated. Can be overriden by editing the translation string: discourse_ai.ai_bot.pm_warning"
2023-05-05 14:28:31 -04:00
ai_bot_allowed_groups : "When the GPT Bot has access to the PM, it will reply to members of these groups."
2023-05-11 09:03:03 -04:00
ai_bot_enabled_chat_bots : "Available models to act as an AI Bot"
2023-08-31 00:42:28 -04:00
ai_bot_add_to_header : "Display a button in the header to start a PM with a AI Bot"
2023-05-05 14:28:31 -04:00
2023-05-20 03:45:54 -04:00
ai_stability_api_key : "API key for the stability.ai API"
2023-08-10 13:07:13 -04:00
ai_stability_engine : "Image generation engine to use for the stability.ai API"
2023-05-20 03:45:54 -04:00
ai_stability_api_url : "URL for the stability.ai API"
ai_google_custom_search_api_key : "API key for the Google Custom Search API see: https://developers.google.com/custom-search"
ai_google_custom_search_cx : "CX for Google Custom Search API"
2023-05-05 14:28:31 -04:00
2023-10-04 12:47:51 -04:00
ai_bedrock_access_key_id : "Access key ID for the Bedrock API"
ai_bedrock_secret_access_key : "Secret access key for the Bedrock API"
ai_bedrock_region : "AWS region for the Bedrock API"
ai_cloudflare_workers_account_id : "Cloudflare account ID for the Cloudflare Workers AI API"
ai_cloudflare_workers_api_token : "API token for the Cloudflare Workers AI API"
2023-03-07 13:39:28 -05:00
reviewables :
2023-09-25 14:12:54 -04:00
reasons :
flagged_by_toxicity : The AI plugin flagged this after classifying it as toxic.
flagged_by_nsfw : The AI plugin flagged this after classifying at least one of the attached images as NSFW.
2023-03-22 12:16:29 -04:00
2023-03-21 11:04:59 -04:00
errors :
prompt_message_length : The message %{idx} is over the 1000 character limit.
invalid_prompt_role : The message %{idx} has an invalid role.
2023-03-17 14:14:19 -04:00
2023-11-08 08:50:37 -05:00
reports :
overall_sentiment :
title : "Overall sentiment"
2023-11-09 15:23:25 -05:00
description : "This chart compares the number of posts classified either positive or negative."
2023-11-08 08:50:37 -05:00
xaxis : "Positive(%)"
yaxis : "Date"
post_emotion :
title : "Post emotion"
2023-11-09 15:23:25 -05:00
description : "Number of posts classified with one of the following emotions, grouped by poster's trust level."
2023-11-08 08:50:37 -05:00
xaxis :
yaxis :
2023-03-17 14:14:19 -04:00
discourse_ai :
ai_helper :
2023-03-22 15:00:28 -04:00
errors :
completion_request_failed : "Something went wrong while trying to provide suggestions. Please, try again."
2023-03-17 14:14:19 -04:00
prompts :
translate : Translate to English
generate_titles : Suggest topic titles
proofread : Proofread text
2023-03-22 12:16:29 -04:00
markdown_table : Generate Markdown table
2023-09-25 14:12:54 -04:00
custom_prompt : "Custom Prompt"
2023-10-23 10:41:36 -04:00
explain : "Explain"
2023-12-19 14:17:34 -05:00
illustrate_post : "Illustrate Post"
2024-01-03 16:01:19 -05:00
painter :
2024-01-09 07:20:28 -05:00
attribution :
2024-01-05 12:03:23 -05:00
stable_diffusion_xl : "Image by Stable Diffusion XL"
dall_e_3 : "Image by DALL-E 3"
2023-05-16 13:38:21 -04:00
ai_bot :
2023-08-30 02:15:03 -04:00
personas :
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 00:56:43 -05:00
cannot_delete_system_persona : "System personas cannot be deleted, please disable it instead"
cannot_edit_system_persona : "System personas can only be renamed, you may not edit commands or system prompt, instead disable and make a copy"
2023-08-30 02:15:03 -04:00
general :
name : Forum Helper
description : "General purpose AI Bot capable of performing various tasks"
artist :
name : Artist
description : "AI Bot specialized in generating images"
sql_helper :
name : SQL Helper
description : "AI Bot specialized in helping craft SQL queries on this Discourse instance"
2023-08-31 03:02:03 -04:00
settings_explorer :
name : Settings Explorer
description : "AI Bot specialized in helping explore Discourse site settings"
2023-09-03 22:05:27 -04:00
researcher :
name : Researcher
description : "AI Bot with Google access that can research information for you"
2023-09-26 20:48:38 -04:00
creative :
name : Creative
description : "AI Bot with no external integrations specialized in creative tasks"
2023-11-24 02:08:08 -05:00
dall_e3 :
name : "DALL-E 3"
description : "AI Bot specialized in generating images using DALL-E 3"
2023-05-21 22:09:14 -04:00
topic_not_found : "Summary unavailable, topic not found!"
2024-01-04 08:44:07 -05:00
summarizing : "Summarizing topic"
2023-09-14 02:46:56 -04:00
searching : "Searching for: '%{query}'"
2023-12-07 16:42:56 -05:00
command_options :
search :
2023-12-11 00:54:16 -05:00
max_results :
name : "Maximum number of results"
description : "Maximum number of results to include in the search - if empty default rules will be used and count will be scaled depending on model used. Highest value is 100."
2023-12-07 16:42:56 -05:00
base_query :
name : "Base Search Query"
description : "Base query to use when searching. Example: '#urgent' will prepend '#urgent' to the search query and only include topics with the urgent category or tag."
2023-05-20 03:45:54 -04:00
command_summary :
categories : "List categories"
search : "Search"
tags : "List tags"
time : "Time"
summarize : "Summarize"
image : "Generate image"
google : "Search Google"
2023-08-08 17:19:56 -04:00
read : "Read topic"
2023-08-28 20:43:58 -04:00
setting_context : "Look up site setting context"
2023-08-30 02:15:03 -04:00
schema : "Look up database schema"
2023-08-31 21:48:51 -04:00
search_settings : "Searching site settings"
2023-11-24 02:08:08 -05:00
dall_e : "Generate image"
2023-12-07 16:42:56 -05:00
command_help :
categories : "List all publicly visible categories on the forum"
search : "Search all public topics on the forum"
tags : "List all tags on the forum"
time : "Find time in various time zones"
summarize : "Summarize a topic"
image : "Generate image using Stable Diffusion"
google : "Search Google for a query"
read : "Read public topic on the forum"
setting_context : "Look up site setting context"
schema : "Look up database schema"
search_settings : "Search site settings"
dall_e : "Generate image using DALL-E 3"
2023-05-20 03:45:54 -04:00
command_description :
2023-08-09 02:01:48 -04:00
read : "Reading: <a href='%{url}'>%{title}</a>"
2023-05-20 03:45:54 -04:00
time : "Time in %{timezone} is %{time}"
summarize : "Summarized <a href='%{url}'>%{title}</a>"
2023-11-24 02:08:08 -05:00
dall_e : "%{prompt}"
2023-06-20 01:44:03 -04:00
image : "%{prompt}"
2023-05-20 03:45:54 -04:00
categories :
one : "Found %{count} category"
other : "Found %{count} categories"
tags :
one : "Found %{count} tag"
other : "Found %{count} tags"
search :
one : "Found %{count} <a href='%{url}'>result</a> for '%{query}'"
other : "Found %{count} <a href='%{url}'>results</a> for '%{query}'"
google :
one : "Found %{count} <a href='%{url}'>result</a> for '%{query}'"
other : "Found %{count} <a href='%{url}'>results</a> for '%{query}'"
2023-08-28 20:43:58 -04:00
setting_context : "Reading context for: %{setting_name}"
2023-08-30 02:15:03 -04:00
schema : "%{tables}"
2023-08-31 21:48:51 -04:00
search_settings :
one : "Found %{count} result for '%{query}'"
other : "Found %{count} results for '%{query}'"
2023-06-13 13:32:26 -04:00
summarization :
2023-06-20 01:44:03 -04:00
configuration_hint :
2023-06-13 13:32:26 -04:00
one : "Configure the `%{setting}` setting first."
other : "Configure these settings first: %{settings}"
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 00:56:43 -05:00
2023-11-08 08:50:37 -05:00
sentiment :
reports :
overall_sentiment :
positive : "Positive"
negative : "Negative"
post_emotion :
tl_01 : "Trust levels 0-1"
tl_234 : "Trust levels 2+"
sadness : "Sadness"
surprise : "Surprise"
neutral : "Neutral"
fear : "Fear"
anger : "Anger"
joy : "Joy"
disgust : "Disgust"