2024-05-21 13:35:50 -03:00
|
|
|
import { ajax } from "discourse/lib/ajax";
|
2024-05-13 12:46:42 -03:00
|
|
|
import RestModel from "discourse/models/rest";
|
|
|
|
|
|
|
|
|
|
export default class AiLlm extends RestModel {
|
|
|
|
|
createProperties() {
|
|
|
|
|
return this.getProperties(
|
2024-05-16 09:50:22 -03:00
|
|
|
"id",
|
2024-05-13 12:46:42 -03:00
|
|
|
"display_name",
|
|
|
|
|
"name",
|
|
|
|
|
"provider",
|
|
|
|
|
"tokenizer",
|
2024-05-16 09:50:22 -03:00
|
|
|
"max_prompt_tokens",
|
|
|
|
|
"url",
|
2024-06-18 14:32:14 -03:00
|
|
|
"api_key",
|
2024-06-24 19:26:30 -03:00
|
|
|
"enabled_chat_bot",
|
|
|
|
|
"provider_params"
|
2024-05-13 12:46:42 -03:00
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
updateProperties() {
|
|
|
|
|
const attrs = this.createProperties();
|
|
|
|
|
attrs.id = this.id;
|
|
|
|
|
|
|
|
|
|
return attrs;
|
|
|
|
|
}
|
2024-05-21 13:35:50 -03:00
|
|
|
|
|
|
|
|
async testConfig() {
|
|
|
|
|
return await ajax(`/admin/plugins/discourse-ai/ai-llms/test.json`, {
|
|
|
|
|
data: { ai_llm: this.createProperties() },
|
|
|
|
|
});
|
|
|
|
|
}
|
2024-05-13 12:46:42 -03:00
|
|
|
}
|