class ActiveGenie::Clients::GoogleClient
def request(payload, params)
def request(payload, params) response = post(url, payload, headers: DEFAULT_HEADERS, params:) ActiveGenie::Logger.call( { code: :llm_usage, input_tokens: response['usageMetadata']['promptTokenCount'] || 0, output_tokens: response['usageMetadata']['candidatesTokenCount'] || 0, total_tokens: response['usageMetadata']['totalTokenCount'] || (prompt_tokens + candidates_tokens), model:, usage: response['usageMetadata'] || {} } ) ActiveGenie::Logger.call( { code: :function_calling, fine_tune: true, payload:, parsed_response: response&.dig('candidates', 0, 'content', 'parts', 0, 'text') } ) response end