From 13a895b76b1e5a677c2eeeb0a07be6ce9fd02a99 Mon Sep 17 00:00:00 2001 From: KernelDeimos Date: Thu, 5 Dec 2024 09:34:51 -0500 Subject: [PATCH] fix: fake_chat default model and usage errors --- src/backend/src/modules/puterai/AIChatService.js | 16 ++++++++++++++-- .../src/modules/puterai/FakeChatService.js | 3 +++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/backend/src/modules/puterai/AIChatService.js b/src/backend/src/modules/puterai/AIChatService.js index 8d180e8c8..83b8b8694 100644 --- a/src/backend/src/modules/puterai/AIChatService.js +++ b/src/backend/src/modules/puterai/AIChatService.js @@ -53,6 +53,8 @@ class AIChatService extends BaseService { const svc_event = this.services.get('event'); svc_event.on('ai.prompt.report-usage', async (_, details) => { + if ( details.service_used === 'fake-chat' ) return; + const values = { user_id: details.actor?.type?.user?.id, app_id: details.actor?.type?.app?.id ?? null, @@ -289,7 +291,9 @@ class AIChatService extends BaseService { const svc_driver = this.services.get('driver'); let ret, error, errors = []; let service_used = intended_service; - let model_used = this.get_model_from_request(parameters); + let model_used = this.get_model_from_request(parameters, { + intended_service + }); await this.check_usage_({ actor: Context.get('actor'), service: service_used, @@ -594,13 +598,21 @@ class AIChatService extends BaseService { }); } - get_model_from_request (parameters) { + get_model_from_request (parameters, modified_context = {}) { const client_driver_call = Context.get('client_driver_call'); let { intended_service } = client_driver_call; + + if ( modified_context.intended_service ) { + intended_service = modified_context.intended_service; + } let model = parameters.model; if ( ! model ) { const service = this.services.get(intended_service); + console.log({ + what: intended_service, + w: service.get_default_model + }); if ( ! service.get_default_model ) { throw new Error('could not infer model from service'); } diff --git a/src/backend/src/modules/puterai/FakeChatService.js b/src/backend/src/modules/puterai/FakeChatService.js index 30a799ac4..330805530 100644 --- a/src/backend/src/modules/puterai/FakeChatService.js +++ b/src/backend/src/modules/puterai/FakeChatService.js @@ -9,6 +9,9 @@ const BaseService = require("../../services/BaseService"); * Implements the 'puter-chat-completion' interface with list() and complete() methods. */ class FakeChatService extends BaseService { + get_default_model () { + return 'fake'; + } static IMPLEMENTS = { ['puter-chat-completion']: { /**