Go to file
Roman Rizzi 2ac70179ed
DEV: Use a PORO to represent modules/features.
Additional changes:

Adds a "#features" method in AiPersona to find which features are using that persona.
Serializes a basic version of a LlmModel in the persona's "#default_llm" serializer attribute.
2025-06-10 14:21:26 -03:00
.github/workflows
admin/assets/javascripts/discourse FEATURE: Display features that rely on multiple personas. (#1411) 2025-06-09 16:13:09 -03:00
app DEV: Use a PORO to represent modules/features. 2025-06-10 14:21:26 -03:00
assets DEV: Use a PORO to represent modules/features. 2025-06-10 14:21:26 -03:00
config FEATURE: Display features that rely on multiple personas. (#1411) 2025-06-09 16:13:09 -03:00
db FEATURE: Use different personas to power AI helper features. 2025-06-04 14:23:00 -03:00
discourse_automation FEATURE: allow to send LLM reports to groups (#1246) 2025-04-07 15:31:30 +10:00
evals FEATURE: Use different personas to power AI helper features. 2025-06-04 14:23:00 -03:00
lib DEV: Use a PORO to represent modules/features. 2025-06-10 14:21:26 -03:00
public/ai-share
spec DEV: Use a PORO to represent modules/features. 2025-06-10 14:21:26 -03:00
svg-icons
test/javascripts FEATURE: Use different personas to power AI helper features. 2025-06-04 14:23:00 -03:00
tokenizers
.discourse-compatibility DEV: Also detect locale of categories and do not translate if already in the locale (#1413) 2025-06-06 22:41:48 +08:00
.gitignore FEATURE: allow tools to amend personas (#1250) 2025-04-09 15:48:25 +10:00
.npmrc
.prettierignore
.prettierrc.cjs
.rubocop.yml
.streerc
.template-lintrc.cjs
Gemfile
Gemfile.lock Build(deps-dev): Bump rack from 3.1.12 to 3.1.14 (#1327) 2025-05-12 17:11:57 -03:00
LICENSE
README.md
about.json DEV: GH CI needs discourse-solved (#1220) 2025-03-26 10:12:55 -03:00
eslint.config.mjs
package.json DEV: Update linting (#1194) 2025-03-17 15:14:53 +11:00
plugin.rb DEV: Use a PORO to represent modules/features. 2025-06-10 14:21:26 -03:00
pnpm-lock.yaml DEV: Update linting (#1194) 2025-03-17 15:14:53 +11:00
stylelint.config.mjs
translator.yml

README.md

Discourse AI Plugin

Plugin Summary

For more information, please see: https://meta.discourse.org/t/discourse-ai/259214?u=falco

Evals

The directory evals contains AI evals for the Discourse AI plugin. You may create a local config by copying config/eval-llms.yml to config/eval-llms.local.yml and modifying the values.

To run them use:

cd evals ./run --help

Usage: evals/run [options]
    -e, --eval NAME                  Name of the evaluation to run
        --list-models                List models
    -m, --model NAME                 Model to evaluate (will eval all models if not specified)
    -l, --list                       List evals

To run evals you will need to configure API keys in your environment:

OPENAI_API_KEY=your_openai_api_key ANTHROPIC_API_KEY=your_anthropic_api_key GEMINI_API_KEY=your_gemini_api_key