mirror of
https://gh.wpcy.net/https://github.com/discourse/discourse.git
synced 2026-05-27 10:35:36 +08:00
## 🔍 Overview This update adds a credit system under the hood which will be used for our CDCK Hosted LLM models so we can make our features more accessible to our hosted customers! ## 📷 Screenshots <img width="1105" height="268" alt="Screenshot 2025-10-02 at 12 48 58" src="https://github.com/user-attachments/assets/2a07d89b-7510-4565-82bb-26b46fbcf5c4" /> _☝🏽 ` ProblemCheck` notices to inform customers_ <img width="1077" height="472" alt="Screenshot 2025-10-02 at 12 49 41" src="https://github.com/user-attachments/assets/b72028f7-5df2-45a8-8c71-65cf750755ab" /> _☝🏽 AI Usage page for easy monitoring_ <img width="1112" height="1083" alt="Screenshot 2025-10-02 at 18 17 01" src="https://github.com/user-attachments/assets/a01992d5-15a0-472a-9501-bc3bc9a54ade" /> _☝🏽 Credit bars underneath relevant LLM models_ <img width="866" height="267" alt="Screenshot 2025-10-03 at 11 35 19" src="https://github.com/user-attachments/assets/e7b4c0e7-c93d-4b0f-923d-79ac5d53028b" /> _☝🏽 Dialog box when trying to use without available credits_
33 lines
937 B
Ruby
Vendored
33 lines
937 B
Ruby
Vendored
# frozen_string_literal: true
|
|
|
|
RSpec.describe LlmModel do
|
|
before { enable_current_plugin }
|
|
|
|
describe "api_key" do
|
|
fab!(:llm_model, :seeded_model)
|
|
|
|
before { ENV["DISCOURSE_AI_SEEDED_LLM_API_KEY_2"] = "blabla" }
|
|
|
|
it "should use environment variable over database value if seeded LLM" do
|
|
expect(llm_model.api_key).to eq("blabla")
|
|
end
|
|
end
|
|
|
|
describe "#credit_system_enabled?" do
|
|
fab!(:seeded_model)
|
|
fab!(:regular_model, :llm_model)
|
|
|
|
it "returns false for non-seeded models" do
|
|
expect(regular_model.credit_system_enabled?).to be false
|
|
end
|
|
|
|
it "returns false for seeded models without credit allocation" do
|
|
expect(seeded_model.credit_system_enabled?).to be false
|
|
end
|
|
|
|
it "returns true for seeded models with credit allocation" do
|
|
Fabricate(:llm_credit_allocation, llm_model: seeded_model)
|
|
expect(seeded_model.credit_system_enabled?).to be true
|
|
end
|
|
end
|
|
end
|